diff options
author | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2021-08-18 20:14:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-18 11:14:02 -0700 |
commit | 4318ceb2b3c5d34217769a24a7de039b1759b496 (patch) | |
tree | 5c9cfb3099a2797e77ef435b87544183615a852a /etc | |
parent | 8a32f72829dd59c00a2a18bc9f57e08942d1ef4e (diff) | |
download | spack-4318ceb2b3c5d34217769a24a7de039b1759b496.tar.gz spack-4318ceb2b3c5d34217769a24a7de039b1759b496.tar.bz2 spack-4318ceb2b3c5d34217769a24a7de039b1759b496.tar.xz spack-4318ceb2b3c5d34217769a24a7de039b1759b496.zip |
Bootstrap clingo from binaries (#22720)
* Bootstrap clingo from binaries
* Move information on clingo binaries to a JSON file
* Add support to bootstrap on Cray
Bootstrapping on Cray requires, at the moment, to
swap the platform when looking for binaries - due
to #22800.
* Add SHA256 verification for bootstrapped software
Use sha256 verification for binaries necessary to bootstrap
the concretizer and gpg for signature verification
* patchelf: use Spec._old_concretize() to bootstrap
As noted in #24450 we may happen to need the
concretizer when bootstrapping clingo. In that case
only the old concretizer is available.
* Add a schema for bootstrapping methods
Two fields have been added to bootstrap.yaml:
"sources" which lists the methods available for
bootstrapping software
"trusted" which records if a source is trusted or not
A subcommand has been added to "spack bootstrap" to list
the sources currently available.
* Methods used for bootstrapping are configurable from bootstrap:sources
The function that tries to ensure a given Python module
is importable now tries bootstrapping methods in the same
order as they are defined in `bootstrap.yaml`
* Permit to trust/untrust bootstrapping methods
* Add binary tests for MacOS, Ubuntu
* Add documentation
* Add a note on bash
Diffstat (limited to 'etc')
-rw-r--r-- | etc/spack/defaults/bootstrap.yaml | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/etc/spack/defaults/bootstrap.yaml b/etc/spack/defaults/bootstrap.yaml index 78bb43f4b1..392c48b7bb 100644 --- a/etc/spack/defaults/bootstrap.yaml +++ b/etc/spack/defaults/bootstrap.yaml @@ -5,3 +5,28 @@ bootstrap: # Root directory for bootstrapping work. The software bootstrapped # by Spack is installed in a "store" subfolder of this root directory root: ~/.spack/bootstrap + # Methods that can be used to bootstrap software. Each method may or + # may not be able to bootstrap all of the software that Spack needs, + # depending on its type. + sources: + - name: 'github-actions' + type: buildcache + description: | + Buildcache generated from a public workflow using Github Actions. + The sha256 checksum of binaries is checked before installation. + info: + url: https://mirror.spack.io/bootstrap/github-actions/v0.1 + homepage: https://github.com/alalazo/spack-bootstrap-mirrors + releases: https://github.com/alalazo/spack-bootstrap-mirrors/releases + # This method is just Spack bootstrapping the software it needs from sources. + # It has been added here so that users can selectively disable bootstrapping + # from sources by "untrusting" it. + - name: spack-install + type: install + description: | + Specs built from sources by Spack. May take a long time. + trusted: + # By default we trust bootstrapping from sources and from binaries + # produced on Github via the workflow + github-actions: true + spack-install: true
\ No newline at end of file |