Files
nixos/.gitlab-ci.yml
T
2025-11-25 20:16:06 -06:00

63 lines
1.4 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
tags:
- kubernetes
image: "nixos/nix:latest"
parallel: &parallel
matrix:
- IMG:
- img-bitwarden
- img-immich
- img-builder
script:
- nix --extra-experimental-features "nix-command flakes" build ".#${IMG}"
- cp -L result "${IMG}.tar.gz"
- >-
nix
--extra-experimental-features "nix-command flakes"
build "nixpkgs#podman"
--out-link podman
- >-
./podman/bin/podman login
-u "$CI_REGISTRY_USER"
-p "$CI_REGISTRY_PASSWORD"
"$CI_REGISTRY"
- mkdir -p /etc/containers/
- |-
cat << EOF > /etc/containers/policy.json
{
"default": [{"type": "insecureAcceptAnything"}]
}
EOF
- ./podman/bin/podman load -i "${IMG}.tar.gz"
- >-
./podman/bin/podman tag
"localhost/${IMG}:latest"
"$CI_REGISTRY/greg/nixos-config/${IMG}:latest"
- ./podman/bin/podman push "$CI_REGISTRY/greg/nixos-config/${IMG}:latest"