Skip to content

πŸƒβ€β™‚οΈ Docker image for CI job runner container

License

Notifications You must be signed in to change notification settings

drevops/ci-runner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CI runner

Docker image for CI runner

Test GitHub Issues GitHub Pull Requests GitHub release (latest by date) LICENSE Renovate

Docker Pulls amd64


Based on Debian php:8.4-cli-bookworm.

Included

Usage

Make sure to always pin the version of this image to the tag:

drevops/ci-runner:25.1.0

For testing purposes, you can use the canary tag:

drevops/ci-runner:canary

Testing

The image includes Goss for environment testing. To run tests locally using dgoss:

# Build the image
docker build -t drevops/ci-runner:test-ci .

# Run tests
dgoss run -i drevops/ci-runner:test-ci

Note for ARM64 systems (Apple Silicon): You'll need to install the correct goss binaries:

# Create bin directory
mkdir -p ~/bin

# Download macOS ARM64 goss binary for local use
curl -L "https://github.com/aelsabbahy/goss/releases/latest/download/goss-darwin-arm64" -o ~/bin/goss
chmod +x ~/bin/goss

# Download Linux AMD64 goss binary for container testing
curl -L "https://github.com/aelsabbahy/goss/releases/latest/download/goss-linux-amd64" -o ~/bin/goss-linux-amd64
chmod +x ~/bin/goss-linux-amd64

# Download dgoss wrapper
curl -L "https://github.com/aelsabbahy/goss/releases/latest/download/dgoss" -o ~/bin/dgoss
chmod +x ~/bin/dgoss

# Run tests with correct binary
export GOSS_PATH=~/bin/goss-linux-amd64
~/bin/dgoss run -i drevops/ci-runner:test-ci

Maintenance and releasing

Versioning

This project uses Year-Month-Patch versioning:

  • YY: Last two digits of the year, e.g., 23 for 2023.
  • m: Numeric month, e.g., April is 4.
  • patch: Patch number for the month, starting at 0.

Example: 23.4.2 indicates the third patch in April 2023.

Releasing

Releases are scheduled to occur at a minimum of once per month.

This image is built by DockerHub via an automated build and tagged as follows:

  • YY.m.patch tag - when release tag is published on GitHub.
  • latest - when release tag is published on GitHub.
  • canary - on every push to main branch

Dependencies update

Renovate bot is used to update dependencies. It creates a PR with the changes and automatically merges it if CI passes. These changes are then released as a canary version.


This repository was created using the Scaffold project template

About

πŸƒβ€β™‚οΈ Docker image for CI job runner container

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •