AWS Elastic Beanstalk: Revisited

Posted by Akshay Karle

17 October 2014

Last year, we had demonstrated a way to deploy your application to Elastic Beanstalk. This involved creating a zip of your application and running a bunch of AWS commands. Kinda fell short of the kind of ease of use we aspire to and are known for.

Today I’m excited to announce a new and much improved way to do deployments to the beanstalk. You can now use Snap’s Elastic Beanstalk Deploy recipe to do this.

You’ll need to setup an application in AWS Beanstalk. Have a look at the AWS getting started guide or our previous blog for steps on how to create a Beanstalk application.

TIP: When creating the Elastic Beanstalk application on AWS, select a Sample Application and later when deploying through Snap supply a S3 bucket.

Once you have setup the application on AWS you can deploy from Snap with the following 3 simple steps:

Add a Elastic Beanstalk Deploy stage to your pipeline configuration

Visit your pipeline configuration edit page and select the add new stage. Select the Elastic Beanstalk Deploy recipe from the Deploy category.

Add Stage

Enter the Application name, Environment name, the S3 bucket and AWS credentials to the stage.

You can find the Application name and Environment name from the Elastic Beanstalk dashboard in the AWS console.

AWS console for Application name

To deploy your application from Snap you also need to create a S3 bucket where snap can push the zipped app for Elastic beanstalk to fetch. Once you have created the s3 bucket enter the name of the S3 bucket in the snap-deploy command alongwith the Application name and the Environment name. You may also need to change the AWS region option, the default is us-east-1 (N. Virginia).

enter credentials

Have a look at our docs to get more details on the different options available for Elastic Beanstalk.

Hit save and watch your changes get deployed to Elastic BeanStalk

Snap deploy logs

AWS console for Application name

As always, I would love to hear if you have any comments or tips to make this experience even better. Leave your comments below or contact us if you have any questions.

comments powered by Disqus