Creating workflow that automates testing and deployment. Key components are Docker, Git, Travis-CI and Elastic Beanstalk on AWS.
Purpose of creating workflows such as this is to make repetitive testing and deployments easy as possible, minimize use of time and possibility to human error. What could go wrong if software tests and go-live deployments are done by computers?
This pipeline works like this:
Developer develops his Application in “feature” branch of his github repository.
Master branch is for deployment.
When master branch is updated, it initiates Travis-CI which runs Application’s tests.
If tests are run successfully, AWS is alerted to pull edited code and go live with it.
Application is running in Docker container. Check out my repo for source code!! https://github.com/matilinux/docker-react