
Expense Tracker: Learning CI/CD
(Originally published on Medium ) Introduction At some point, I had no idea what CI and CD were about, so I decided to learn about them. I got to learn enough to be able to do a simple Build-Test-Deploy cycle, so now I know enough to define them in my own words: Continuous Integration : JUnit tests are run on every commit to the dev branch Continuous Delivery : the JAR is also built and sent straight to the test server when the tests pass, with potential smoke tests such as a “User can log in” test being run. Continuous Deployment : the build is also sent to production after the smoke tests pass Sten from Atlassian does a great job of explaining the differences between the 3 terms My tool of choice is Jenkins, mainly because I prefer a self-hosted approach, and I’ll talk about the Jenkinsfile I wrote for Expense Tracker. Architecture overview I have 2 main VM’s, both of which are running Ubuntu Controller This is where Jenkins itself runs. Test Server This is where the “dev” profile of
Continue reading on Dev.to
Opens in a new tab


