Sync tornado and python version between sheduler and worker image #150
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: Test docker images | |
on: | |
pull_request: | |
paths: | |
- docker/** | |
branches: | |
- master | |
workflow_dispatch: | |
env: | |
PROJECT: 'coffea-casa' | |
GITHUB_ACTIONS: 'true' | |
REGISTRY: 'localhost:5000' | |
REGISTRY_PATH: ${{ github.workspace }}/registry | |
CACHE_PATH: /tmp/.buildx-cache | |
jobs: | |
version-check: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Fetch current date (with timestamp) | |
id: date | |
run: | | |
echo "::set-output name=date::$(date +"%Y-%m-%d_%H-%M-%S")" | |
outputs: | |
date: ${{ steps.date.outputs.date }} | |
dask-base: | |
runs-on: ubuntu-latest | |
needs: version-check | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v2 | |
with: | |
version: latest | |
driver-opts: network=host | |
- name: Cache Docker layers | |
uses: actions/cache@v2 | |
id: cache | |
with: | |
path: ${{ env.CACHE_PATH }} | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Login to Harbor Hub | |
if: success() && github.event_name != 'pull_request' | |
uses: docker/login-action@v2 | |
with: | |
registry: hub.opensciencegrid.org | |
username: ${{ secrets.HARBOR_USER }} | |
password: ${{ secrets.HARBOR_PASSWORD }} | |
- name: Start Docker registry | |
run: | | |
docker run --rm --detach --publish 5000:5000 \ | |
--volume ${{ env.REGISTRY_PATH }}:/var/lib/registry \ | |
--name registry registry:2 | |
sleep 10 | |
- name: Build | |
uses: docker/[email protected] | |
with: | |
#outputs: type=docker,dest=/tmp/cc-base-ubuntu.tar | |
#push: ${{ github.event_name != 'pull_request' }} | |
push: true | |
cache-from: | | |
type=local,src=${{ env.CACHE_PATH }} | |
cache-to: type=local,dest=${{ env.CACHE_PATH }} | |
builder: ${{ steps.buildx.outputs.name }} | |
context: docker/ | |
file: docker/Dockerfile.cc-base-ubuntu | |
tags: | | |
localhost:5000/coffea-casa/cc-base-ubuntu:${{ needs.version-check.outputs.date }} | |
build-args: | | |
TAG=${{ needs.version-check.outputs.date }} | |
PROJECT=${{ env.PROJECT }} | |
GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} | |
REGISTRY=${{ env.REGISTRY }} | |
- name: Upload Docker registry data for testing | |
uses: actions/upload-artifact@v2 | |
with: | |
name: docker-registry-data | |
path: ${{ env.REGISTRY_PATH }}/ | |
retention-days: 1 | |
dask-cc: | |
runs-on: ubuntu-latest | |
needs: [version-check, dask-base] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v2 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v2 | |
with: | |
version: latest | |
driver-opts: network=host | |
- name: Cache Docker layers | |
uses: actions/cache@v2 | |
id: cache | |
with: | |
path: ${{ env.CACHE_PATH }} | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Login to Harbor Hub | |
if: success() && github.event_name != 'pull_request' | |
uses: docker/login-action@v2 | |
with: | |
registry: hub.opensciencegrid.org | |
username: ${{ secrets.HARBOR_USER }} | |
password: ${{ secrets.HARBOR_PASSWORD }} | |
- name: Download Docker registry data from build job | |
uses: actions/download-artifact@v2 | |
with: | |
name: docker-registry-data | |
path: ${{ env.REGISTRY_PATH }} | |
- name: Start Docker registry | |
run: | | |
docker run --rm --detach --publish 5000:5000 \ | |
--volume ${{ env.REGISTRY_PATH }}:/var/lib/registry \ | |
--name registry registry:2 | |
sleep 10 | |
- name: Import Docker images | |
run: docker pull localhost:5000/coffea-casa/cc-base-ubuntu:${{ needs.version-check.outputs.date }} | |
- name: Build | |
uses: docker/[email protected] | |
with: | |
#push: ${{ github.event_name != 'pull_request' }} | |
push: true | |
cache-from: | | |
type=local,src=${{ env.CACHE_PATH }} | |
cache-to: type=local,dest=${{ env.CACHE_PATH }} | |
context: docker/ | |
file: docker/Dockerfile.cc-ubuntu | |
tags: | | |
localhost:5000/coffea-casa/cc-ubuntu:${{ needs.version-check.outputs.date }} | |
build-args: | | |
DEV=true | |
TAG=${{ needs.version-check.outputs.date }} | |
PROJECT=${{ env.PROJECT }} | |
GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} | |
REGISTRY=${{ env.REGISTRY }} | |
- name: Upload Docker registry data for testing | |
uses: actions/upload-artifact@v2 | |
with: | |
name: docker-registry-data | |
path: ${{ env.REGISTRY_PATH }}/ | |
retention-days: 1 | |
# dask-skyhook: | |
# runs-on: ubuntu-latest | |
# needs: [version-check, dask-cc] | |
# steps: | |
# - name: Check out code | |
# uses: actions/checkout@v2 | |
# - name: Set up QEMU | |
# uses: docker/setup-qemu-action@v2 | |
# - name: Set up Docker Buildx | |
# id: buildx | |
# uses: docker/setup-buildx-action@v2 | |
# with: | |
# version: latest | |
# driver-opts: network=host | |
# - name: Cache Docker layers | |
# uses: actions/cache@v2 | |
# id: cache | |
# with: | |
# path: ${{ env.CACHE_PATH }} | |
# key: ${{ runner.os }}-buildx-${{ github.sha }} | |
# restore-keys: | | |
# ${{ runner.os }}-buildx- | |
# - name: Login to Harbor Hub | |
# if: success() && github.event_name != 'pull_request' | |
# uses: docker/login-action@v2 | |
# with: | |
# registry: hub.opensciencegrid.org | |
# username: ${{ secrets.HARBOR_USER }} | |
# password: ${{ secrets.HARBOR_PASSWORD }} | |
# - name: Download Docker registry data from build job | |
# uses: actions/download-artifact@v2 | |
# with: | |
# name: docker-registry-data | |
# path: ${{ env.REGISTRY_PATH }} | |
# - name: Start Docker registry | |
# run: | | |
# docker run --rm --detach --publish 5000:5000 \ | |
# --volume ${{ env.REGISTRY_PATH }}:/var/lib/registry \ | |
# --name registry registry:2 | |
# sleep 10 | |
# - name: Import Docker images | |
# run: docker pull localhost:5000/coffea-casa/cc-ubuntu:${{ needs.version-check.outputs.date }} | |
# - name: Build | |
# uses: docker/docker/[email protected] | |
# with: | |
# push: ${{ github.event_name != 'pull_request' }} | |
# cache-from: | | |
# type=local,src=${{ env.CACHE_PATH }} | |
# cache-to: type=local,dest=${{ env.CACHE_PATH }} | |
# context: docker/ | |
# file: docker/Dockerfile.cc-base-centos7 | |
# tags: | | |
# localhost:5000/coffea-casa/cc-ubuntu-skyhook:${{ needs.version-check.outputs.date }} | |
# build-args: | | |
# TAG=${{ needs.version-check.outputs.date }} | |
# PROJECT=${{ env.PROJECT }} | |
# GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} | |
# REGISTRY=${{ env.REGISTRY }} | |
# - name: Cleanup | |
# run: | | |
# docker stop registry | |
dask-analysis: | |
runs-on: ubuntu-latest | |
needs: version-check | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v2 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v2 | |
with: | |
version: latest | |
driver-opts: network=host | |
- name: Cache Docker layers | |
uses: actions/cache@v2 | |
id: cache | |
with: | |
path: ${{ env.CACHE_PATH }} | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Login to Harbor Hub | |
if: success() && github.event_name != 'pull_request' | |
uses: docker/login-action@v2 | |
with: | |
registry: hub.opensciencegrid.org | |
username: ${{ secrets.HARBOR_USER }} | |
password: ${{ secrets.HARBOR_PASSWORD }} | |
- name: Start Docker registry | |
run: | | |
docker run --rm --detach --publish 5000:5000 \ | |
--volume ${{ env.REGISTRY_PATH }}:/var/lib/registry \ | |
--name registry registry:2 | |
sleep 10 | |
- name: Build | |
uses: docker/build-push-action@v2 | |
with: | |
#push: ${{ github.event_name != 'pull_request' }} | |
push: true | |
#outputs: type=docker,dest=/tmp/cc-analysis-ubuntu.tar | |
cache-from: | | |
type=local,src=${{ env.CACHE_PATH }} | |
cache-to: type=local,dest=${{ env.CACHE_PATH }} | |
context: docker/ | |
file: docker/Dockerfile.cc-analysis-ubuntu | |
tags: | | |
localhost:5000/coffea-casa/cc-analysis-ubuntu:${{ needs.version-check.outputs.date }} | |
build-args: | | |
DEV=true | |
TAG=${{ needs.version-check.outputs.date }} | |
PROJECT=${{ env.PROJECT }} | |
GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} | |
REGISTRY=${{ env.REGISTRY }} | |
- name: Upload Docker registry data for testing | |
uses: actions/upload-artifact@v2 | |
with: | |
name: docker-registry-data | |
path: ${{ env.REGISTRY_PATH }}/ | |
retention-days: 1 | |
# dask-analysis-skyhook: | |
# runs-on: ubuntu-latest | |
# needs: [version-check, dask-analysis] | |
# steps: | |
# - name: Check out code | |
# uses: actions/checkout@v2 | |
# - name: Set up QEMU | |
# uses: docker/setup-qemu-action@v2 | |
# - name: Set up Docker Buildx | |
# id: buildx | |
# uses: docker/setup-buildx-action@v2 | |
# with: | |
# version: latest | |
# driver-opts: network=host | |
# - name: Cache Docker layers | |
# uses: actions/cache@v2 | |
# id: cache | |
# with: | |
# path: ${{ env.CACHE_PATH }} | |
# key: ${{ runner.os }}-buildx-${{ github.sha }} | |
# restore-keys: | | |
# ${{ runner.os }}-buildx- | |
# - name: Login to Harbor Hub | |
# if: success() && github.event_name != 'pull_request' | |
# uses: docker/login-action@v2 | |
# with: | |
# registry: hub.opensciencegrid.org | |
# username: ${{ secrets.HARBOR_USER }} | |
# password: ${{ secrets.HARBOR_PASSWORD }} | |
# - name: Download Docker registry data from build job | |
# uses: actions/download-artifact@v2 | |
# with: | |
# name: docker-registry-data | |
# path: ${{ env.REGISTRY_PATH }} | |
# - name: Start Docker registry | |
# run: | | |
# docker run --rm --detach --publish 5000:5000 \ | |
# --volume ${{ env.REGISTRY_PATH }}:/var/lib/registry \ | |
# --name registry registry:2 | |
# sleep 10 | |
# - name: Import Docker images | |
# run: docker pull localhost:5000/coffea-casa/cc-analysis-ubuntu:${{ needs.version-check.outputs.date }} | |
# - name: Build | |
# uses: docker/[email protected] | |
# with: | |
# #push: ${{ github.event_name != 'pull_request' }} | |
# push: true | |
# cache-from: | | |
# type=local,src=${{ env.CACHE_PATH }} | |
# cache-to: type=local,dest=${{ env.CACHE_PATH }} | |
# context: docker/ | |
# file: docker/Dockerfile.cc-analysis-ubuntu-skyhook | |
# tags: | | |
# localhost:5000/coffea-casa/cc-analysis-ubuntu-skyhook:${{ needs.version-check.outputs.date }} | |
# build-args: | | |
# TAG=${{ needs.version-check.outputs.date }} | |
# PROJECT=${{ env.PROJECT }} | |
# GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} | |
# REGISTRY=${{ env.REGISTRY }} | |
# - name: Cleanup | |
# run: | | |
# docker stop registry |