Summary and Setup

This is a Byte-Sized RSE lesson on Continuous Integration, part of the Byte-Sized RSE Series.

Learning Objectives


At the end of this lesson, learners should be able to:

  • Understand the concept of automation and its role in improving efficiency and consistency in software development.
  • Learn the principles and benefits of Continuous Integration.
  • Identify common tasks that can be automated within a CI pipeline, such as code compilation, testing, linting, and documentation generation.
  • Recognise the importance of integrating code changes frequently to minimize conflicts and maintain a stable codebase.
  • Explore how Continuous Integration can be extended to Continuous Delivery to automate the deployment of packages and applications.

Setup


Prerequisite
  • Shell with Git version control tool installed and the ability to navigate filesystem and run commands from within a shell
  • Python version 3.8 or above installed
  • Understanding of Python syntax to be able to read code examples
  • Pip Python package installer
  • Visual Studio Code installed (ideally the latest version)
  • Account on GitHub.com

Shell with Git

On macOS and Linux, some version of a shell (e.g. bash) with Git will be available by default and no installation is needed.

If you do not have a bash shell installed on your system and require assistance with the installation, you can take a look at the instructions provided by Software Carpentry for installing shell and Git.

Python

Python version 3.8 or above is required. Type python -V (or python3 -V on Mac) at your shell prompt and press enter to see what version of Python is installed on your system. If you do not have Python installed on your system and require assistance with the installation, you can take a look at the instructions provided by Software Carpentry for installing Python in preparation for undertaking their Python lesson.

Pip

Pip Python package should come together with your Python distribution. Try typing pip (or pip3 on Mac) at the command line and you should see some usage instructions for the command appear if it is installed.

VS Code

The hands-on part of this topic will be conducted using Visual Studio Code (VS Code), a widely used IDE. Please download the appropriate version of Visual Studio Code for your operating system (Windows, macOS, or Linux) and system architecture (e.g., 64-bit, ARM).