summaryrefslogtreecommitdiff
path: root/.github/workflows/linux_unit_tests.yaml
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@gmail.com>2021-02-24 21:33:14 +0100
committerMassimiliano Culpo <massimiliano.culpo@gmail.com>2021-05-21 15:09:08 +0200
commit2a4d2f905cdc4e65839fdcf0075e822d64d0f0a5 (patch)
tree6412fa6be608471ff21fcab877fd143744100851 /.github/workflows/linux_unit_tests.yaml
parent14e179398fc8dcfc58ff7f9b95506ccc9aab3359 (diff)
downloadspack-2a4d2f905cdc4e65839fdcf0075e822d64d0f0a5.tar.gz
spack-2a4d2f905cdc4e65839fdcf0075e822d64d0f0a5.tar.bz2
spack-2a4d2f905cdc4e65839fdcf0075e822d64d0f0a5.tar.xz
spack-2a4d2f905cdc4e65839fdcf0075e822d64d0f0a5.zip
Run clingo-cffi tests in a container (#21913)
There clingo-cffi job has two issues to be solved: 1. It uses the default concretizer 2. It requires a package from https://test.pypi.org/simple/ The former can be fixed by setting the SPACK_TEST_SOLVER environment variable to "clingo". The latter though requires clingo-cffi to be pushed to a more stable package index (since https://test.pypi.org/simple/ is meant as a scratch version of PyPI that can be wiped at any time). For the time being run the tests in a container. Switch back to PyPI whenever a new official version of clingo will be released.
Diffstat (limited to '.github/workflows/linux_unit_tests.yaml')
-rw-r--r--.github/workflows/linux_unit_tests.yaml42
1 files changed, 6 insertions, 36 deletions
diff --git a/.github/workflows/linux_unit_tests.yaml b/.github/workflows/linux_unit_tests.yaml
index 5aa7b4877b..5df0957659 100644
--- a/.github/workflows/linux_unit_tests.yaml
+++ b/.github/workflows/linux_unit_tests.yaml
@@ -139,47 +139,17 @@ jobs:
with:
flags: unittests,linux,clingo
clingo-cffi:
- # Test for the clingo based solver using the CFFI package
+ # Test for the clingo based solver (using clingo-cffi)
runs-on: ubuntu-latest
+ container: spack/github-actions:clingo-cffi
steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 0
- - uses: actions/setup-python@v2
- with:
- python-version: 3.8
- - name: Install System packages
- run: |
- sudo apt-get -y update
- # Needed for unit tests
- sudo apt-get install -y coreutils gfortran graphviz gnupg2 mercurial
- sudo apt-get install -y ninja-build patchelf
- # Needed for kcov
- sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev
- sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
- - name: Install Python packages
- run: |
- pip install --upgrade pip six setuptools codecov coverage cffi
- pip install -i https://test.pypi.org/simple/ clingo-cffi
- - name: Setup git configuration
- run: |
- # Need this for the git tests to succeed.
- git --version
- . .github/workflows/setup_git.sh
- - name: Install kcov for bash script coverage
- env:
- KCOV_VERSION: 34
- run: |
- KCOV_ROOT=$(mktemp -d)
- wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz
- tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz
- mkdir -p ${KCOV_ROOT}/build
- cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd -
- make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
- name: Run unit tests
run: |
whoami && echo PWD=$PWD && echo HOME=$HOME && echo SPACK_TEST_SOLVER=$SPACK_TEST_SOLVER
- python -c "import clingo; print(hasattr(clingo.Symbol, '_rep'), clingo.__version__)"
+ python3 -c "import clingo; print(hasattr(clingo.Symbol, '_rep'), clingo.__version__)"
+ git clone https://github.com/spack/spack.git && cd spack
+ git fetch origin ${{ github.ref }}:test-branch
+ git checkout test-branch
. share/spack/setup-env.sh
spack compiler find
spack solve mpileaks%gcc