stages: - generate - check - trigger workflow: rules: # Run when a merge request event is open - if: $CI_PIPELINE_SOURCE == "merge_request_event" # Do not run branch-specific pipeline if there is an open MR - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS when: never # Run pipeilne for branches or tags - if: $CI_COMMIT_BRANCH || $CI_COMMIT_TAG - if: $CI_PIPELINE_SOURCE == "web" include: # Low-effort, we can always do lint checks, validations, and so forth - local: .gitlab/always.yml rules: - if: $CI_PIPELINE_SOURCE != "web" - local: .gitlab/update.yml rules: - if: $CI_PIPELINE_SOURCE == "web" # Actual download of ISOs and building of images. This should only be # done some of the time - local: .gitlab/build.yml rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event" - if: $CI_PIPELINE_SOURCE == "tag" - if: $CI_COMMIT_BRANCH == "main" variables: PACKER_CONFIG_DIR: ./packer_config/ PACKER_CACHE_DIR: ./cache/ default: image: registry.thehellings.com/greg/ci-images/vm-test:latest tags: - nix