Instead of relying on the previous kubectl commands and Kubernetes configuration files to update our application every time, we want to automate this process. Doing it manually is tedious, error prone, and not deterministic.
To automate this process, we will use Travis CI (https://travis-ci.org/), a continuous-integration service that is free for open source projects. To use it, we need to have our source code living in a GitHub repository (https://github.com/) and give Travis CI access to our GitHub project. Whenever a new change reaches the code repository, Travis CI detects it and tries to build the project, according to a recipe file that also belongs to the project source code (.travis.yml).