title | subtitle | author | date | subject | keywords | lang | titlepage | logo | titlepage-rule-color | page-background | theme | separator | verticalSeparator | notesSeparator | revealOptions | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Development Processes Course |
CI/CD introduction |
|
2021-05-26 |
Development Processes |
|
en |
true |
images/fontyslogo.png |
400070 |
images/fontyslogo-background.png |
night |
<!-- s --> |
<!-- v --> |
<!-- n --> |
|
CI/CD means Continous Integration / Continuous Delivery
- CI/CD is a fundamental concept in software development
- Continuous Integration
- Continuous Delivery
- Continuous Deployment
The practice of automatically building and unit testing an entire application frequently, ideally on every source code check-in
The practice of deploying every build to a production-like environment and performing automated integration and acceptance testing
The practice of automatically deploying every build to production after it passes its automated tests
Generally with CI/CD Continuous Integration / Continuous Delivery is meant. Continuous Delivery and Continuous Deployment are similar and are very often interchanged. However the grade of automation if different. Continuous Delivery means that usually changes are tested/accepted and release to a specific release repository or production like environment whereas Continuous Deployment really means that after automatic testing and acceptance testing it is deployed to the production system and in use.
- automated approaches to produce applications efficiently and reliably
- often described as a pipeline - flow of code and artifacts through build steps
- many CI/CD Tools available
- Jenkins
- Bitbucket Pipelines
- GitLab CI/CD pipelines
- GitHub Actions
- Travis CI
- and many more
- We'll use Github Action because...
- well, we work on Github
- Github Actions use YAML files
- .yml or .yaml extension
HELLO WORLD Example
- Open your repository and goto Actions
The output is simply: Hello World!!!
To learn more:
- Together with your Group:
- On your PRJ2 repository activate github actions and let your application(s) BUILD
- Hint start with Maven Java build template
- Then adapt it for your needs (e.g. your pom file is located somewhere else -> /implementation)