diff options
author | Scott Wittenburg <scott.wittenburg@kitware.com> | 2022-05-26 08:31:22 -0600 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2022-05-26 09:10:18 -0700 |
commit | ca0c9686394d4e5630a36f23d8d3ff016db97e8a (patch) | |
tree | 378770d6d4aabc96dd34c3620e7ae711a6f4cf12 /.mailmap | |
parent | d99a1b104752ded8ef4948cfdd79ab4f96751dd6 (diff) | |
download | spack-ca0c9686394d4e5630a36f23d8d3ff016db97e8a.tar.gz spack-ca0c9686394d4e5630a36f23d8d3ff016db97e8a.tar.bz2 spack-ca0c9686394d4e5630a36f23d8d3ff016db97e8a.tar.xz spack-ca0c9686394d4e5630a36f23d8d3ff016db97e8a.zip |
ci: Support secure binary signing on protected pipelines (#30753)
This PR supports the creation of securely signed binaries built from spack
develop as well as release branches and tags. Specifically:
- remove internal pr mirror url generation logic in favor of buildcache destination
on command line
- with a single mirror url specified in the spack.yaml, this makes it clearer where
binaries from various pipelines are pushed
- designate some tags as reserved: ['public', 'protected', 'notary']
- these tags are stripped from all jobs by default and provisioned internally
based on pipeline type
- update gitlab ci yaml to include pipelines on more protected branches than just
develop (so include releases and tags)
- binaries from all protected pipelines are pushed into mirrors including the
branch name so releases, tags, and develop binaries are kept separate
- update rebuild jobs running on protected pipelines to run on special runners
provisioned with an intermediate signing key
- protected rebuild jobs no longer use "SPACK_SIGNING_KEY" env var to
obtain signing key (in fact, final signing key is nowhere available to rebuild jobs)
- these intermediate signatures are verified at the end of each pipeline by a new
signing job to ensure binaries were produced by a protected pipeline
- optionallly schedule a signing/notary job at the end of the pipeline to sign all
packges in the mirror
- add signing-job-attributes to gitlab-ci section of spack environment to allow
configuration
- signing job runs on special runner (separate from protected rebuild runners)
provisioned with public intermediate key and secret signing key
Diffstat (limited to '.mailmap')
0 files changed, 0 insertions, 0 deletions