From Zero to Continuous Delivery with GitLab CI Pipelines

Softwareentwicklung mit Open Source
05.09.2023Workshop abgesagt!

9:10 – 17:00 Uhr
Fachhochschule OST Campus Rapperswil
Max. Teilnehmer: 28

Einleitung

This hands-on workshop is about starting from scratch in a GitLab repository and slowly building up together part by part a fully fledged continuous delivery pipeline using GitLab CI.

Programm

Whether you are a beginner or have some experience, we will setup GitLab CI from scratch in a repository without CI step by step using an example. Depending on the previous knowledge of the participants, this can be an application with a backend in Java or Python and a frontend using React or Angular with TypeScript. The knowledge conveyed in this workshop can be applied to any technology, though.
The focus is on showing best practices, that every person is able to understand each and every part of it and to leave no question unanswered.
Apart from basic concepts like branch management, stages, jobs and dependencies between jobs, artifacts, parallelization and environment variables, the following aspects will be automated:
  • Build, test and deployment
  • Enforcing good development practices (for example static code analysis, code formatting, secret scanning, style guides and commit guidelines)
  • Release process including automated version bumps using semantic versioning and changelog generation
  • Update of dependencies
Ideally, the workshop will be interactive, where the focus will be tailored to the needs and interests of the participants.

Kursziel

All workshop participants have a fully automated GitLab CI pipeline using continuous delivery setup in their own repository, understand how it works and how it can be extended further.

Adressaten

People who previously developed software in a git repository, but never setup GitLab or a different CI or do not have a lot of experience with it. Software and DevOps engineers who want to go from continuous integration to continuous delivery.

Voraussetzungen

  • Git knowledge (clone, commit, push, pull, branch, merge, tag) required
  • Knowledge in working with YAML formats preferred, alternatively JSON or XML knowledge is beneficial
  • Experience in using (not setting up) CI tools is beneficial
  • Experience in deployment of software is beneficial (preferably under Linux)
  • Basic knowledge of Docker containers and networks is beneficial
  • Theoretical knowledge of concepts like continuous integration / continuous deployment is beneficial

Infrastruktur

  • Laptop with internet
  • Recent browser like Chrome or Firefox
  • IDE (IntelliJ IDEA will be shown)
  • Account for GitLab.com
  • Git installed and setup with authentication for the GitLab account (SSH key authentication recommended)
  • JDK / Python / Node.js / Docker installations are beneficial

Referenten

François Martin

Karakun AG


François Martin is a senior full stack software engineer at Karakun AG and lecturer at the FHNW University of Applied Sciences in Brugg, living in Switzerland. He is an active open source contributor and co-author of the two open source JavaFX frameworks WorkbenchFX and PreferencesFX and an active member at the Swiss Testing Board.