add .gitlab-ci.yml

This commit is contained in:
Aly Raffauf 2024-07-08 22:25:24 -04:00
parent 24bf60acfc
commit b623b22e3a

40
.gitlab-ci.yml Normal file
View file

@ -0,0 +1,40 @@
image: nixos/nix:latest
variables:
NIX_PATH: "nixpkgs=channel:nixos-unstable"
GIT_STRATEGY: clone
GIT_DEPTH: 1
stages:
- "Update"
- "Checks"
"Update inputs":
stage: "Update"
rules:
- if: $CI_PIPELINE_SOURCE == "schedule"
script:
- git clone https://gitlab.com/alyraffauf/wallpapers.git
- cd wallpapers
- git config --global user.email "${GIT_USER_EMAIL:-$GITLAB_USER_EMAIL}"
- git config --global user.name "${GIT_USER_NAME:-$GITLAB_USER_NAME}"
- nix --extra-experimental-features "nix-command flakes" flake update --commit-lock-file
- nix --extra-experimental-features "nix-command flakes" flake check
- git push https://${CI_PROJECT_NAMESPACE}:${CI_JOB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git "${CI_DEFAULT_BRANCH}" -o ci.skip || echo "No changes to commit"
"Check formatting":
rules:
- if: $CI_PIPELINE_SOURCE == "push"
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
stage: "Checks"
script:
- nix --extra-experimental-features "nix-command flakes" fmt -- -c .
"Check evaluation":
rules:
- if: $CI_PIPELINE_SOURCE == "push"
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
stage: "Checks"
script:
- nix --extra-experimental-features "nix-command flakes" flake check