Showing posts from October, 2017

Continuous Integration using AWS CodePipeline (GitHub to Elastic BeanStalk)

AWS CodePipeline can be used to continuously deploy code changes to Elastic Beanstalk in Staging Environment. Here is an example which makes use of amazon web services to deploy code changes for Grails Project. CodePipeline will get code from GitHub repository, build using CodeBuild and then deploy the war file to Elastic Beanstalk. AWS CodeBuild uses buildspec.yml to get build instructions. Add buildspec.yml at root folder of your project. Since Grails uses gradle to build the project, the content of file can be: version : 0.1 phases: install: commands: - echo Install started on ` date ` pre_build: commands: - echo Pre Build started on ` date ` build: commands: - echo Build started on ` date ` - . / gradlew assemble post_build: commands: - echo Build completed on ` date ` artifacts: files : - build / libs / * .war The root folder should also contain gradle wrapper (gradlew) . We won't have t