Skip to content

Remove broken caching and use workaround for broken pip install #67

Remove broken caching and use workaround for broken pip install

Remove broken caching and use workaround for broken pip install #67

Workflow file for this run

name: ExascaleSandboxTests
on:
push:
branches: [ develop, main ]
pull_request:
branches: [ develop, main ]
workflow_dispatch:
jobs:
docker:
runs-on: ubuntu-latest
steps:
-
name: Checkout repository
uses: actions/checkout@v3
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
-
name: Login to GHCR
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
# -
# name: Pull caches
# run: |
# docker pull ghcr.io/noaa-gsl/exascaleworkflowsandbox/frontend:cache || true
# docker pull ghcr.io/noaa-gsl/exascaleworkflowsandbox/master:cache || true
# docker pull ghcr.io/noaa-gsl/exascaleworkflowsandbox/node:cache || true
# -
# name: Build frontend
# uses: docker/build-push-action@v4
# with:
# context: ./docker
# file: ./docker/frontend/Dockerfile
# push: false
# load: true
# tags: ghcr.io/noaa-gsl/exascaleworkflowsandbox/frontend:latest
# cache-from: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/frontend:cache
# cache-to: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/frontend:cache,mode=max
# -
# name: Build master
# uses: docker/build-push-action@v4
# with:
# context: ./docker
# file: ./docker/master/Dockerfile
# push: false
# load: true
# tags: ghcr.io/noaa-gsl/exascaleworkflowsandbox/master:latest
# cache-from: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/master:cache
# cache-to: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/master:cache,mode=max
# -
# name: Build node
# uses: docker/build-push-action@v4
# with:
# context: ./docker
# file: ./docker/node/Dockerfile
# push: false
# load: true
# tags: ghcr.io/noaa-gsl/exascaleworkflowsandbox/node:latest
# cache-from: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/node:cache
# cache-to: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/node:cache,mode=max
-
name: Start Slurm cluster containers
run: |
cd docker
export DOCKER_CLIENT_TIMEOUT=600
export COMPOSE_HTTP_TIMEOUT=600
docker-compose -f docker-compose.yml up -d
-
name: Create ssh keys in cluster
run: |
docker exec frontend ssh-keygen -t rsa -f /home/admin/.ssh/id_rsa -N ""
docker exec frontend cp /home/admin/.ssh/id_rsa.pub /home/admin/.ssh/authorized_keys
-
name: Copy test scripts to work directory
run: |
docker exec frontend bash -l -c "mkdir -p work; cd work ; cp ../test/*.py . ; cp ../test/*.f90 ."
-
name: Parsl hello test
run: |
docker exec frontend bash -l -c "spack env activate flux; cd work ; ./parsl_hello.py"
-
name: Parsl/Flux hello MPI test
run: |
docker exec frontend bash -l -c "spack env activate flux; cd work ; ./parsl_mpi_flux_hello.py"
docker exec frontend bash -l -c "cat work/resource_list.txt"
docker exec frontend bash -l -c "cat work/mpi_apps.hello.out"
# Uncomment this step to enable interactive debugging
# -
# name: Debug session
# if: ${{ failure() }}
# uses: mxschmitt/action-tmate@v3
# timeout-minutes: 60
# with:
# limit-access-to-actor: true
-
name: Shut down Slurm cluster containers
run: |
cd docker
export DOCKER_CLIENT_TIMEOUT=600
export COMPOSE_HTTP_TIMEOUT=600
docker-compose -f docker-compose.yml down
-
name: Push frontend
uses: docker/build-push-action@v4
with:
context: ./docker
file: ./docker/frontend/Dockerfile
push: true
tags: ghcr.io/noaa-gsl/exascaleworkflowsandbox/frontend:latest
# cache-to: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/frontend:cache,mode=max
-
name: Push master
uses: docker/build-push-action@v4
with:
context: ./docker
file: ./docker/master/Dockerfile
push: true
tags: ghcr.io/noaa-gsl/exascaleworkflowsandbox/master:latest
# cache-to: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/master:cache,mode=max
-
name: Push node
uses: docker/build-push-action@v4
with:
context: ./docker
file: ./docker/node/Dockerfile
push: true
tags: ghcr.io/noaa-gsl/exascaleworkflowsandbox/node:latest
# cache-to: type=registry,ref=ghcr.io/noaa-gsl/exascaleworkflowsandbox/node:cache,mode=max