Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
This spack command adds a new schema for a file which describes the
builder containers available, along with the compilers availabe on
each builder. The release-jobs command then generates the .gitlab-ci.yml
file by first expanding the release spec set, concretizing each spec
(in an appropriate docker container if --this-machine-only argument is
not provided on command line), and then combining and staging all the
concrete specs as jobs to be run by gitlab.
|
|
The built images are set up with fairly recent versions of gcc and
clang:
- centos_7: [ gcc@5.5.0 (built from src), clang@6.0.0 (spack-built from src) ]
- ubuntu_18.04: [ gcc@5.5.0 (system), clang@6.0.0-1ubuntu2 (system) ]
|
|
Adds four new sub-commands to the buildcache command:
1. save-yaml: Takes a root spec and a list of dependent spec names,
along with a directory in which to save yaml files, and writes out
the full spec.yaml for each of the dependent specs. This only needs
to concretize the root spec once, then indexes it with the names of
the dependent specs.
2. check: Checks a spec (via either an abstract spec or via a full
spec.yaml) against remote mirror to see if it needs to be rebuilt.
Comparies full_hash stored on remote mirror with full_hash computed
locally to determine whether spec needs to be rebuilt. Can also
generate list of specs to check against remote mirror by expanding
the set of release specs expressed in etc/spack/defaults/release.yaml.
3. get-buildcache-name: Makes it possible to attempt to read directly
the spec.yaml file on a remote or local mirror by providing the path
where the file should live based on concretizing the spec.
4. download: Downloads all buildcache files associated with a spec
on a remote mirror, including any .spack, .spec, and .cdashid files
that might exist. Puts the files into the local path provided on
the command line, and organizes them in the same hierarchy found on
the remote mirror
This commit also refactors lib/spack/spack/util/web.py to expose
functionality allowing other modules to read data from a url.
|
|
* Revert "work around an issue with docker/dockerhub (#10547)"
This reverts commit 0ef139ac4d475fb99e08b0856dd7f27b97082e50.
* Add more docker base image configurations.
- Renamed configs
- "centos" -> "centos-7"
- "fedora" -> "fedora-24"
- "opensuse" -> "opensuse-tumbleweed"
- "scilinux" -> "scilinux-7"
- "ubuntu" -> "ubuntu-1804"
- Added configs
- "centos-6"
- "fedora-29"
- "opensuse-leap"
- "scilinux-6"
- "ubuntu-1604"
With these changes, our docker hub image
collection will consist of the following:
- "spack/archlinux"
- "latest"
- "spack/centos"
- "latest", "centos7", "7"
- "centos6", "6"
- "spack/fedora"
- "latest", "29"
- "24"
- "spack/opensuse"
- "latest", "tumbleweed"
- "leap"
- "spack/scilinux"
- "latest", "7"
- "6"
- "spack/ubuntu"
- "latest", "bionic", "18.04"
- "xenial", "16.04"
|
|
Spack shell detection in setup-env.sh was originally based on
examining the executable name of $$ (from "ps"). In some cases this
does not actually give the name of the shell used, for example when
setup-env.sh was invoked from a script using "#!". To make shell
detection more robust, this adds a preliminary check for shell
variables which indicate that the shell is bash or zsh; the
executable name of $$ is retained as a fallback if those variables
are not defined.
|
|
* try to workaround an issue with docker/dockerhub
* apply workaround only when running in travis
|
|
|
|
|
|
|
|
* spack versions: only list safe versions
* Add unit tests for spack versions -s
|
|
|
|
- currently just looks at patches
- allows you to find out which package applied a patch to a spec
- intended to work with tarballs and resources in the future.
- add tab completion for `spack resource` and subcommands
|
|
|
|
* move docker test logic to share/spack/qa
* update Dockerfile for archlinux
|
|
- fixed an issue where some undesirable parts of
the spack source tree were being copied into
the image context.
- added a workaround for a tty ioctl warning on
ubuntu
- adjusted how the main images are built so that
`RUN spack ...` works automatically for child
images that base themselves on them.
|
|
When using the CDash reporter, upload a Update.xml file that
indicates the hash of Spack's current git commit.
|
|
Add new command line arguments to `spack install` that allow users
to set the build name, site name, and track in their CDash report.
|
|
* Update Spack's Bash completion script
* spack mirror create options changed
|
|
|
|
|
|
Lately many CI runs for PRs are failing due to the `mpich` build that
times out on Travis (10 mins. without output). As the timeout seems to
happen consistently during the build phase, increasing the verbosity of
that test can help working around the issue.
|
|
|
|
- `spack env create <name>` works as before
- `spack env create <path>` now works as well -- environments can be
created in their own directories outside of Spack.
- `spack install` will look for a `spack.yaml` file in the current
directory, and will install the entire project from the environment
- The Environment class has been refactored so that it does not depend on
the internal Spack environment root; it just takes a path and operates
on an environment in that path (so internal and external envs are
handled the same)
- The named environment interface has been hoisted to the
spack.environment module level.
- env.yaml is now spack.yaml in all places. It was easier to go with one
name for these files than to try to handle logic for both env.yaml and
spack.yaml.
|
|
- `spack env activate foo`: sets SPACK_ENV to the current active env name
- `spack env deactivate`: unsets SPACK_ENV, deactivates the environment
- added support to setup_env.sh and setup_env.csh
- other env commands work properly with SPACK_ENV, as with an environment
arguments.
- command-line --env arguments take precedence over the active
environment, if given.
|
|
setup-env includes a call to 'ps' to determine what shell is being
used. 'ps' can be instructed to use a different default output format
via the 'PS_FORMAT' env variable. Thus unset this variable before
calling 'ps'.
|
|
* Unite Dockerfiles - add build/run/push scripts
* update docker documentation
* update .travis.yml
* switch to using a preprocessor on Dockerfiles
* skip building docker images on pull requests
* update files with copyright info
* tweak when travis builds for docker files are done
|
|
- `spack license list-files`: list all files that should have license headers
- `spack license list-lgpl`: list files still under LGPL-2.1
- `spack license verify`: check that license headers are correct
- Added `spack license verify` to style tests
|
|
- remove the old LGPL license headers from all files in Spack
- add SPDX headers to all files
- core and most packages are (Apache-2.0 OR MIT)
- a very small number of remaining packages are LGPL-2.1-only
|
|
- Many container builds are timing out frequently during Spack tests in
Travis CI.
- Travis recommends to try `sudo: required` to see whether this is an
infrastructure issue or something else.
- added `sudo: required` to all Linux builds.
- added --verbose to `spack test` invocation so that we can see more
easily what tests it's timing out on.
Signed-off-by: Todd Gamblin <tgamblin@llnl.gov>
|
|
|
|
usage of a literal curly bracket
|
|
being loaded.
|
|
|
|
|
|
fixes #8736
|
|
When using zsh, trying to shift when there are no arguments left results
in warnings like this: spack:shift:22: shift count must be <= $#
|
|
|
|
As requested in the review all the commands meant to manage module
files have been grouped under the `spack module` command.
Unit tests have been refactored to match the new command structure.
|
|
|
|
fixes #2215
fixes #2570
fixes #6676
fixes #7281
closes #3827
This PR reverts the use of `spack module loads` in favor of
`spack module find` when loading module files via Spack. After this PR
`spack load` will accept a single spec at a time, and will be able
to interpret correctly the `--dependencies` option.
|
|
This reverts commit 732c24f603864ec7dbec425ac4507b47fdb7a641.
|
|
|
|
|
|
- The setup-env.sh script currently makes two calls to spack, but it
should only need to make one.
- Add a fast-path shell setup routine in `main.py` to allow the shell
setup to happen in a single, fast call that doesn't load more than it
needs to.
- This simplifies setup code, as it has to eval what Spack prints
- TODO: consider eventually making the whole setup script the output of a
spack command
|
|
* Add Dockerfile for Scientific Linux 7 (RHEL7 recompile)
* revert version change
* remove duplicate docker-related files
|
|
* Add Dockerfile for Scientific Linux 7 (RHEL7 recompile)
|
|
- This complies with the unix directory hierarchy standard (which Spack
attempts to follow)
- Also unclutters the repo root directory.
|
|
- replace `spack.config.get_configuration()` with `spack.config.config()`
- replace `get_config`/`update_config` with `get`, `set`
- add a path syntax that can be used to refer to specific config options
without firt getting the entire configuration dict
- update usages of `get_config` and `update_config` to use `get` and `set`
|
|
Fix `spack load` with extended packe specifications those includes spaces.
Solved by using perfectly parameter forwarding via temporary array.
example:
```
$ spack install zlib
$ spack install zlib cppflags='-O3 -march=native'
$ spack install zlib cppflags='-O2 -march=native'
$ spack find -d -L -f zlib
==> 3 installed packages.
-- linux-linuxmint18-x86_64 / gcc@5.4.0 -------------------------
k5hg4kkxiutkfl6n53ogz5wnlbdrsdtf zlib@1.2.11%gcc
mse2fyzdxciszdhiqi4b5kl6fxkps3fh zlib@1.2.11%gcc cppflags="-O2 -march=native"
vrnvj2fikcbxqxrymctnlpmud7wbuahk zlib@1.2.11%gcc cppflags="-O3 -march=native"
$ spack load zlib cppflags='-O3 -march=native'
==> Error: Unexpected token
['zlib', 'cppflags=-O3', '-march=native']
```
|