Lesson
CI/CD for Research Software with GitLab CI
This lesson covers the implementation of CI/CD pipelines in research software projects, focusing on automating tests, builds, and deployments using GitLab CI.
Lesson metadata
Slug cicd-for-research-software-with-gitlab-ci
Subtopic —
Skill Level Intermediate
OSS Role(s) Maintainer, Contributor
Resource Type tutorial
Time Required 9m
Author HSF Training Team
License https://creativecommons.org/licenses/by/4.0/
Keywords CI/CD, GitLab CI, continuous integration, continuous delivery, research software
Language(s) en
Additional metadata
Audience Researchers, Software Developers, HPC Engineers
Competency Required Git, CI/CD concepts, research software development
Creative Work Status Active
Date Created 2020-11-01
Date Modified 2023-01-15
Date Published 2021-01-05
Domain General Open Source
Identifier https://hsf-training.github.io/hsf-training-cicd/
Is Part Of HSF Training CI/CD Series
Learning Objectives After this lesson, the learner should be able to:
- Explain the principles of CI/CD in the context of research software development
- Configure GitLab CI pipelines to automate testing and deployment
- Apply CI/CD practices to improve research software quality and reproducibility
- Demonstrate how to integrate automated testing into research workflows
- Identify best practices for CI/CD in scientific computing environments
Mentions GitLab CI, https://about.gitlab.com/stages-devops-lifecycle/continuous-integration/, A CI/CD tool for automating tests and deployments.
Notes Duplicates Line 9 resource: "Continuous Integration and Delivery with GitHub Actions", plus adds content (maybe too much?) - one should be removed
Ospo Relevance Moderate
Prerequisite Notes introduction-to-git | python-packaging | unit-testing-and-tdd-in-python
Sorting Id 16
Teaches The student will be able to set up and automate CI/CD pipelines for research software using GitLab CI.
Topic DevOps
Version 1.0.0
Related lessons
Building Better Research Software
Intermediate
Continuous Integration and Delivery with GitHub Actions
Intermediate
Effective Code Review
Intermediate
Finding Users for Your Project
Beginner
Intermediate Python Development
Intermediate
Intermediate Research Software Development Skills (Python) Lesson Material
Intermediate