Provide a jammy env #9
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Spack images | |
on: | |
schedule: [ { cron: "50 23 * * 0" } ] # run every Sunday 23h50 | |
push: { branches: [ main, 'v*' ] } | |
pull_request: | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
step1a_base: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
if: ${{ github.event_name != 'schedule' }} | |
run: | | |
docker pull ghcr.io/pdidev/test_env/base || true | |
echo "--cache-from ghcr.io/pdidev/test_env/base" > CACHE_INFO | |
- name: build | |
run: | | |
touch CACHE_INFO | |
CACHE_INFO="$(cat CACHE_INFO)" | |
echo "Cache: ${CACHE_INFO}" | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
DOCKER_BUILDKIT=1 docker build \ | |
${CACHE_INFO} \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
-t ghcr.io/pdidev/test_env/base \ | |
-t ghcr.io/pdidev/test_env/base:${GITHUB_SHA:0:7} \ | |
spack/1a-base | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/base | |
docker push ghcr.io/pdidev/test_env/base:${GITHUB_SHA:0:7} | |
step1b_spackbase: | |
needs: step1a_base | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/spackbase || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/spackbase \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/spackbase \ | |
-t ghcr.io/pdidev/test_env/spackbase:${GITHUB_SHA:0:7} \ | |
spack/1b-spackbase | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/spackbase | |
docker push ghcr.io/pdidev/test_env/spackbase:${GITHUB_SHA:0:7} | |
step2a_precomp: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step1b_spackbase | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2a || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2a \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2a \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2a-${GITHUB_SHA:0:7} \ | |
spack/2a-precomp | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2a | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2a-${GITHUB_SHA:0:7} | |
step2b_compiler: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step2a_precomp | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2b || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2b \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2b \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2b-${GITHUB_SHA:0:7} \ | |
spack/2b-compiler | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2b | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2b-${GITHUB_SHA:0:7} | |
step2c_squash: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step2b_compiler | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2c || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2c \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2c \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2c-${GITHUB_SHA:0:7} \ | |
spack/2c-squash | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2c | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-2c-${GITHUB_SHA:0:7} | |
step3a_precomp: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step2c_squash | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3a || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3a \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3a \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3a-${GITHUB_SHA:0:7} \ | |
spack/3a-precomp | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3a | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3a-${GITHUB_SHA:0:7} | |
step3b_compiler: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step3a_precomp | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3b || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3b \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3b \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3b-${GITHUB_SHA:0:7} \ | |
spack/3b-compiler | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3b | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3b-${GITHUB_SHA:0:7} | |
step3c_squash: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step3b_compiler | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3c || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3c \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3c \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3c-${GITHUB_SHA:0:7} \ | |
spack/3c-squash | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3c | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-3c-${GITHUB_SHA:0:7} | |
step4_baselibs: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
needs: step3c_squash | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4a || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4a \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4a \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4a-${GITHUB_SHA:0:7} \ | |
spack/4a-baselibs | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4a | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4a-${GITHUB_SHA:0:7} | |
docker image prune -f | |
- name: get cache | |
run: | | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4b || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4b \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4b \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4b-${GITHUB_SHA:0:7} \ | |
spack/4b-squash | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4b | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-4b-${GITHUB_SHA:0:7} | |
step5_mpi: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
mpi: ['openmpi'] | |
needs: step4_baselibs | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-5a || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-5a \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg MPI=${{ matrix.mpi }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-5a \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-5a-${GITHUB_SHA:0:7} \ | |
spack/5a-mpi | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-5a | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-5a-${GITHUB_SHA:0:7} | |
docker image prune -f | |
- name: get cache | |
run: | | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-mini || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-mini \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg MPI=${{ matrix.mpi }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-mini \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-mini-${GITHUB_SHA:0:7} \ | |
spack/5b-squash | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-mini | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-mini-${GITHUB_SHA:0:7} | |
step6_optlibs: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
mpi: ['openmpi'] | |
needs: step5_mpi | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
docker pull ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-all || true | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-all \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg MPI=${{ matrix.mpi }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-all \ | |
-t ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-all-${GITHUB_SHA:0:7} \ | |
spack/6-optlibs | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-all | |
docker push ghcr.io/pdidev/test_env/builder:${{ matrix.version }}-${{ matrix.compiler }}-${{ matrix.mpi }}-all-${GITHUB_SHA:0:7} | |
step7_finalize: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['latest', 'oldest'] | |
compiler: ['gcc', 'clang'] | |
mpi: ['openmpi'] | |
level: ['mini', 'all'] | |
needs: step6_optlibs | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: get cache | |
run: | | |
sudo rm -rf /opt/az /opt/hostedtoolcache /usr/local/graalvm \ | |
/usr/local/lib/android /usr/local/lib/node_modules \ | |
/usr/local/.ghcup /usr/share/dotnet /usr/share/swift | |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
- name: build | |
run: | | |
DOCKER_BUILDKIT=1 docker build \ | |
--cache-from ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }} \ | |
--build-arg BUILDKIT_INLINE_CACHE=1 \ | |
--build-arg VERSION=${{ matrix.version }} \ | |
--build-arg COMPILER=${{ matrix.compiler }} \ | |
--build-arg MPI=${{ matrix.mpi }} \ | |
--build-arg LIBS=${{ matrix.level }} \ | |
--build-arg IMAGE_TAG=${GITHUB_SHA:0:7} \ | |
-t ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }} \ | |
-t ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }}:${GITHUB_SHA:0:7} \ | |
spack/7-finalize | |
- name: publish | |
run: | | |
docker push ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }} | |
docker push ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }}:${GITHUB_SHA:0:7} | |
- name: Publish tagged | |
if: ${{ github.event_name == 'push' || github.event_name == 'schedule' }} | |
run: | | |
DOCKER_TAG="${{github.ref_name}}" | |
docker tag ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }} ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }}:${DOCKER_TAG} | |
docker push ghcr.io/pdidev/spack/${{ matrix.version }}/${{ matrix.compiler }}/${{ matrix.mpi }}/${{ matrix.level }}:${DOCKER_TAG} |