Skip to content

Introduction into Continuous Integration / Continuous Delivery

Notifications You must be signed in to change notification settings

FontysVenlo/ci-cd-introduction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

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
Stefan Sobek
2021-05-26
Development Processes
Fontys
Agile
CI-CD
en
true
images/fontyslogo.png
400070
images/fontyslogo-background.png
night
<!-- s -->
<!-- v -->
<!-- n -->
transition transition-speed slideNumber history progress width height parallaxBackgroundImage parallaxBackgroundSize
concave
fast
true
true
true
1248
800
images/fontys-parallax-all-dark.jpg
2100px 1024px

CI/CD Introduction

What is CI/CD

CI/CD means Continous Integration / Continuous Delivery

  • CI/CD is a fundamental concept in software development
    • Continuous Integration
    • Continuous Delivery
    • Continuous Deployment

CI-CD pipeline example

Continuous Integration

The practice of automatically building and unit testing an entire application frequently, ideally on every source code check-in

Continuous Delivery

The practice of deploying every build to a production-like environment and performing automated integration and acceptance testing

Continuous Deployment

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.

Github Actions

  • We'll use Github Action because...
    • well, we work on Github
  • Github Actions use YAML files
  • .yml or .yaml extension

Github Actions

HELLO WORLD Example

  • Open your repository and goto Actions

actions-01

actions-01

  • Here we are: actions-01
  • Now commit it and look up in action tab how it runs actions-01
  • Now click the details to see what happens actions-01

The output is simply: Hello World!!!

actions-01

To learn more:

Exercise

  • 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)

Releases

No releases published

Packages

No packages published