|
2 | 2 | # with just the toast dependencies for various versions of python. These can
|
3 | 3 | # be used in toast CI testing.
|
4 | 4 |
|
5 |
| -name: CMBenv Deploy |
| 5 | +name: CMBenv Docker Deploy |
6 | 6 |
|
7 | 7 | on:
|
8 | 8 | push:
|
|
15 | 15 |
|
16 | 16 | jobs:
|
17 | 17 | full:
|
18 |
| - name: Docker Release |
| 18 | + name: Docker Deploy Python ${{ matrix.python }} ${{ matrix.mpi }} |
19 | 19 | runs-on: ubuntu-latest
|
| 20 | + strategy: |
| 21 | + fail-fast: false |
| 22 | + matrix: |
| 23 | + include: |
| 24 | + - python: 3.9 |
| 25 | + mpi: mpich |
| 26 | + - python: 3.9 |
| 27 | + mpi: openmpi |
20 | 28 | steps:
|
| 29 | + - name: Cancel Previous Runs |
| 30 | + uses: styfle/cancel-workflow-action@0.9.1 |
| 31 | + with: |
| 32 | + access_token: ${{ github.token }} |
| 33 | + |
21 | 34 | - name: Checkout
|
22 | 35 | uses: actions/checkout@v2
|
| 36 | + |
23 | 37 | - name: Create Dockerfile
|
24 |
| - run: ./cmbenv -c docker-py3.9-debian -p /usr/local |
| 38 | + run: ./cmbenv -c docker-py${{ matrix.python }}-debian-${{ matrix.mpi }} |
| 39 | + |
25 | 40 | - name: Set tag name
|
26 |
| - run: tag=$(echo "${GITHUB_REF}" | sed -e 's/.*\/\(v.*\)/\1/') && echo "TAGNAME=${tag}" >> $GITHUB_ENV |
| 41 | + run: tag=$(echo "${GITHUB_REF}" | sed -e 's/.*\/\(v.*\)/\1/') && echo "TAGNAME=${tag}-${{ matrix.mpi }}" >> $GITHUB_ENV |
| 42 | + |
27 | 43 | - name: Build Docker Image
|
28 |
| - run: docker build -t hpc4cmb/cmbenv:${TAGNAME} -f Dockerfile_docker-py3.9-debian . |
| 44 | + run: docker build -t hpc4cmb/cmbenv:${TAGNAME} -f Dockerfile_docker-py${{ matrix.python }}-debian-${{ matrix.mpi }} . |
| 45 | + |
29 | 46 | - name: Test Docker Image
|
30 | 47 | run: docker run hpc4cmb/cmbenv:${TAGNAME} python -c 'import toast.tests; toast.tests.run()'
|
| 48 | + |
31 | 49 | - name: Tag Latest
|
32 | 50 | run: docker tag hpc4cmb/cmbenv:${TAGNAME} hpc4cmb/cmbenv:latest
|
| 51 | + |
33 | 52 | - name: Push Docker Image
|
34 | 53 | run: echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin && docker push hpc4cmb/cmbenv:${TAGNAME} && docker push hpc4cmb/cmbenv:latest
|
35 |
| - toastdeps-py37: |
36 |
| - name: TOAST Dependencies Python 3.7 |
37 |
| - runs-on: ubuntu-latest |
38 |
| - steps: |
39 |
| - - name: Checkout |
40 |
| - uses: actions/checkout@v2 |
41 |
| - - name: Create Dockerfile |
42 |
| - run: ./cmbenv -c docker-toastdeps-py37 -p /usr/local |
43 |
| - - name: Set tag name |
44 |
| - run: tag=$(echo "${GITHUB_REF}" | sed -e 's/.*\/\(v.*\)/\1/') && echo "TAGNAME=${tag}" >> $GITHUB_ENV |
45 |
| - - name: Build Docker Image |
46 |
| - run: docker build -t hpc4cmb/toast-deps-py37:${TAGNAME} -f Dockerfile_docker-toastdeps-py37 . |
47 |
| - - name: Tag Latest |
48 |
| - run: docker tag hpc4cmb/toast-deps-py37:${TAGNAME} hpc4cmb/toast-deps-py37:latest |
49 |
| - - name: Push Docker Image |
50 |
| - run: echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin && docker push hpc4cmb/toast-deps-py37:${TAGNAME} && docker push hpc4cmb/toast-deps-py37:latest |
51 |
| - toastdeps-py38: |
52 |
| - name: TOAST Dependencies Python 3.8 |
53 |
| - runs-on: ubuntu-latest |
54 |
| - steps: |
55 |
| - - name: Checkout |
56 |
| - uses: actions/checkout@v2 |
57 |
| - - name: Create Dockerfile |
58 |
| - run: ./cmbenv -c docker-toastdeps-py38 -p /usr/local |
59 |
| - - name: Set tag name |
60 |
| - run: tag=$(echo "${GITHUB_REF}" | sed -e 's/.*\/\(v.*\)/\1/') && echo "TAGNAME=${tag}" >> $GITHUB_ENV |
61 |
| - - name: Build Docker Image |
62 |
| - run: docker build -t hpc4cmb/toast-deps-py38:${TAGNAME} -f Dockerfile_docker-toastdeps-py38 . |
63 |
| - - name: Tag Latest |
64 |
| - run: docker tag hpc4cmb/toast-deps-py38:${TAGNAME} hpc4cmb/toast-deps-py38:latest |
65 |
| - - name: Push Docker Image |
66 |
| - run: echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin && docker push hpc4cmb/toast-deps-py38:${TAGNAME} && docker push hpc4cmb/toast-deps-py38:latest |
67 |
| - toastdeps-py39: |
68 |
| - name: TOAST Dependencies Python 3.9 |
| 54 | + |
| 55 | + toastdeps: |
| 56 | + name: TOAST Dependencies Python ${{ matrix.python }} |
69 | 57 | runs-on: ubuntu-latest
|
| 58 | + strategy: |
| 59 | + fail-fast: false |
| 60 | + matrix: |
| 61 | + include: |
| 62 | + - python: 37 |
| 63 | + - python: 38 |
| 64 | + - python: 39 |
70 | 65 | steps:
|
| 66 | + - name: Cancel Previous Runs |
| 67 | + uses: styfle/cancel-workflow-action@0.9.1 |
| 68 | + with: |
| 69 | + access_token: ${{ github.token }} |
| 70 | + |
71 | 71 | - name: Checkout
|
72 | 72 | uses: actions/checkout@v2
|
| 73 | + |
73 | 74 | - name: Create Dockerfile
|
74 |
| - run: ./cmbenv -c docker-toastdeps-py39 -p /usr/local |
| 75 | + run: ./cmbenv -c docker-toastdeps-py${{ matrix.python }} |
| 76 | + |
75 | 77 | - name: Set tag name
|
76 | 78 | run: tag=$(echo "${GITHUB_REF}" | sed -e 's/.*\/\(v.*\)/\1/') && echo "TAGNAME=${tag}" >> $GITHUB_ENV
|
| 79 | + |
77 | 80 | - name: Build Docker Image
|
78 |
| - run: docker build -t hpc4cmb/toast-deps-py39:${TAGNAME} -f Dockerfile_docker-toastdeps-py39 . |
| 81 | + run: docker build -t hpc4cmb/toast-deps-py${{ matrix.python }}:${TAGNAME} -f Dockerfile_docker-toastdeps-py${{ matrix.python }} . |
| 82 | + |
79 | 83 | - name: Tag Latest
|
80 |
| - run: docker tag hpc4cmb/toast-deps-py39:${TAGNAME} hpc4cmb/toast-deps-py39:latest |
81 |
| - - name: Push Docker Image |
82 |
| - run: echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin && docker push hpc4cmb/toast-deps-py39:${TAGNAME} && docker push hpc4cmb/toast-deps-py39:latest |
| 84 | + run: docker tag hpc4cmb/toast-deps-py${{ matrix.python }}:${TAGNAME} hpc4cmb/toast-deps-py${{ matrix.python }}:latest |
83 | 85 |
|
| 86 | + - name: Push Docker Image |
| 87 | + run: echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin && docker push hpc4cmb/toast-deps-py${{ matrix.python }}:${TAGNAME} && docker push hpc4cmb/toast-deps-py${{ matrix.python }}:latest |
0 commit comments