Skip to content

defenseunicorns/uds-package-gitlab-runner

Repository files navigation

🏭 UDS Gitlab Runner Package

Latest Release Build Status OpenSSF Scorecard

This package is designed for use as part of a UDS Software Factory bundle deployed on UDS Core

Pre-requisites

Gitlab-Runner has one dependency, Gitlab.

  • Utilizing uds-package-gitlab is the quickest and easiest solution for meeting this dependency.

  • If choosing not to use uds-package-gitlab be aware that the Gitlab-Runner needs to be connected properly to Gitlab for registering itself and running pipelines as expected.

Flavors

Flavor Description Example Creation
upstream Uses upstream images within the package. zarf package create . -f upstream
registry1 Uses images from registry1.dso.mil within the package. zarf package create . -f registry1

Releases

The released packages can be found in ghcr.

General

  • Upstream flavor is the default

    • To set a different flavor, use the following flag:
      • --set FLAVOR=registry1
  • For proper registration of a Gitlab-Runner with a Gitlab instance, a secret is created in the gitlab-runner namespace called gitlab-gitlab-runner-secret which uses the runner-registration-token field from the gitlab namespace secret called gitlab-gitlab-runner-secret to register a runner with a returned runner authentication token.


Deploying

Utilizes UDS-CLI task runners

  • Which means uds run --list is available for cli descriptions.

UDS Tasks (for local dev and CI)

*For local dev, this requires you install uds-cli

Tip: To get a list of tasks to run you can use uds run --list!

Contributing

Please see the CONTRIBUTING.md

Development

When developing this package it is ideal to utilize the json schemas for UDS Bundles, Zarf Packages and Maru Tasks. This involves configuring your IDE to provide schema validation for the respective files used by each application. For guidance on how to set up this schema validation, please refer to the guide in uds-common.