Remove broken caching and use workaround for broken pip install #73
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: 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 /tmp/install; ./install_flux.sh; cd; 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 |