Files
nixos/.gitlab-ci.yml
T

54 lines
1.1 KiB
YAML

stages:
- eval
- build
- push
default:
tags:
- nix
"Evaluate for builds":
stage: eval
artifacts:
paths:
- gitlab-ci-continue.yml
script: nix run ".#gen-build" > gitlab-ci-continue.yml
"Trigger builds":
stage: build
trigger:
include:
- artifact: gitlab-ci-continue.yml
job: "Evaluate for builds"
variables:
PARENT_PIPELINE_ID: $CI_PIPELINE_ID
"Build image":
stage: build
parallel: &parallel
matrix:
- IMG:
- img-bitwarden
artifacts:
paths:
- "*.tar.gz"
script:
- nix run "nixpkgs#podman" -- login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
- nix build ".#${IMG}"
- cp -L result "${IMG}.tar.gz"
"Push Image":
stage: push
parallel: *parallel
dependencies:
- "Build image"
image: "docker:28-cli"
services:
- "docker:28-dind"
tags:
- kubernetes
script:
- docker load -i "${IMG}.tar.gz"
- docker tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/ci-images/${IMG}:latest"
- docker push "$CI_REGISTRY/greg/ci-images/${IMG}:latest"