Newer
Older
.job_variables: &job_variables
variables:
GIT_SUBMODULE_STRATEGY: none
GIT_DEPTH: 0
PKG_TOKEN: ${PKG_TOKEN}
.job_rules_push: &job_rules_push
rules:
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_TAG == null'
.job_rules_schedule: &job_rules_schedule
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule"'
.job_rules_web: &job_rules_web
rules:
- if: '$CI_PIPELINE_SOURCE == "web"'
.job_rules_pipeline: &job_rules_pipeline
rules:
- if: '$CI_PIPELINE_SOURCE == "pipeline"'
.copy_files: ©_files
before_script:
- mkdir -p /etc/pkg
- cp ./pkg.cfg /etc/pkg/pkg.cfg
- cp ./pacman.conf.builder /etc/pacman.conf.builder
update:
stage: update
<<: *job_variables
<<: *job_rules_schedule
<<: *copy_files
build:
stage: build
<<: *job_variables
<<: *job_rules_push
<<: *copy_files
script:
- apkg-prepare.sh
- apkg-build.sh
- apkg-tag.sh
rebuild:from:
stage: rebuild
<<: *job_variables
<<: *job_rules_pipeline
<<: *copy_files
script:
- apkg-rebuild.sh
artifacts:
name: $CI_PROJECT_NAME-$CI_COMMIT_SHORT_SHA
paths:
- "*.pkg.tar.xz"
rebuild:dynamic:
stage: rebuild
<<: *job_rules_push
<<: *copy_files
needs: ["build"]
- apkg-generate.sh > dynamic-config.yml
artifacts:
paths:
- dynamic-config.yml
rebuild:packages:
stage: rebuild
<<: *job_variables
<<: *job_rules_push
needs: ["rebuild:dynamic","build"]
trigger:
include:
- artifact: dynamic-config.yml
job: rebuild:dynamic
strategy: depend