Pipelines: Support DAG scheduling and dynamic child pipelines

This change also adds a code path through the spack ci pipelines
infrastructure which supports PR testing on the Spack repository.
Gitlab pipelines run as a result of a PR (either creation or pushing
to a PR branch) will only verify that the packages in the environment
build without error.  When the PR branch is merged to develop,
another pipeline will run which results in the generated binaries
getting pushed to the binary mirror.
This commit is contained in:
Scott Wittenburg
2020-05-12 16:17:50 -06:00
committed by Todd Gamblin
parent 47b3dda1aa
commit e0572a7d96
7 changed files with 444 additions and 301 deletions

View File

@@ -0,0 +1,20 @@
pr_pipeline:
only:
- external_pull_requests
variables:
SPACK_REPO: https://github.com/spack/spack.git
SPACK_REF: ${CI_EXTERNAL_PULL_REQUEST_SOURCE_BRANCH_NAME}
SPACK_IS_PR_PIPELINE: "True"
trigger:
project: spack/e4s
strategy: depend
merge_pipeline:
only:
- develop
variables:
SPACK_REPO: https://github.com/spack/spack.git
SPACK_REF: develop
trigger:
project: spack/e4s
strategy: depend