Skip to content

Commit

Permalink
add latest docker-image.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
khsa1 committed Dec 3, 2024
1 parent 5d57e3b commit be57314
Showing 1 changed file with 293 additions and 6 deletions.
299 changes: 293 additions & 6 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,26 @@ name: Docker Image CI
on:
release:
types: [released]

env:
TRAPS_REL: ${{ github.event.release.tag_name }}
workflow_dispatch:
inputs:
release_tag:
description: ''
required: true
type: string

jobs:
docker:

engine:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
Expand All @@ -32,13 +42,61 @@ jobs:
push: true
tags: tapis/camera_traps_engine:${{ env.TRAPS_REL }}
build-args: TRAPS_REL=${{ env.TRAPS_REL }}

pyevents:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push pyevents
uses: docker/build-push-action@v5
with:
context: https://github.com/tapis-project/event-engine.git#:pyevents
platforms: linux/amd64,linux/arm64
push: true
tags: tapis/pyevents

pyevents_38:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push pyevents:3.8
uses: docker/build-push-action@v5
with:
Expand All @@ -47,13 +105,61 @@ jobs:
platforms: linux/amd64,linux/arm64
push: true
tags: tapis/pyevents:3.8

camera_traps_py:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push camera_traps_py
uses: docker/build-push-action@v5
with:
context: src/python
platforms: linux/amd64,linux/arm64
push: true
tags: tapis/camera_traps_py:${{ env.TRAPS_REL }}

camera_traps_py_38:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push camera_traps_py_3.8
uses: docker/build-push-action@v5
with:
Expand All @@ -62,7 +168,37 @@ jobs:
platforms: linux/amd64,linux/arm64
push: true
tags: tapis/camera_traps_py_3.8:${{ env.TRAPS_REL }}
- name: Build and push image_scoring_plugin

image_scoring_plugin_py_38:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Delete extra files
run: |
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf "/usr/local/share/boost"
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- name: Build and push general image_scoring_plugin
uses: docker/build-push-action@v5
with:
context: external_plugins/image_scoring_plugin
Expand All @@ -71,6 +207,69 @@ jobs:
tags: tapis/image_scoring_plugin_py_3.8:${{ env.TRAPS_REL }}
build-args: REL=${{ env.TRAPS_REL }}
file: external_plugins/image_scoring_plugin/Dockerfile-3.8

image_scoring_plugin_py_nano_38:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Delete extra files
run: |
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf "/usr/local/share/boost"
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- name: Build and push image_scoring_plugin for nano
uses: docker/build-push-action@v5
with:
context: external_plugins/image_scoring_plugin
platforms: linux/arm64
push: true
tags: tapis/image_scoring_plugin_py_nano_3.8:${{ env.TRAPS_REL }}
build-args: REL=${{ env.TRAPS_REL }}
file: external_plugins/image_scoring_plugin/Dockerfile-3.8-nano

image_generating_plugin:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push image_generating_plugin
uses: docker/build-push-action@v5
with:
Expand All @@ -79,6 +278,30 @@ jobs:
push: true
tags: tapis/image_generating_plugin_py:${{ env.TRAPS_REL }}
build-args: REL=${{ env.TRAPS_REL }}

power_measuring_plugin:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push power_measuring_plugin
uses: docker/build-push-action@v5
with:
Expand All @@ -87,3 +310,67 @@ jobs:
push: true
tags: tapis/power_measuring_plugin_py:${{ env.TRAPS_REL }}
build-args: REL=${{ env.TRAPS_REL }}

oracle_plugin:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push oracle_plugin
uses: docker/build-push-action@v5
with:
context: external_plugins/oracle_plugin
platforms: linux/amd64,linux/arm64
push: true
tags: tapis/oracle_plugin:${{ env.TRAPS_REL }}
build-args: REL=${{ env.TRAPS_REL }}

custom_install:
runs-on: ubuntu-latest
environment: main
steps:
- name: Set TRAPS_REL
run: |
if [[ ${{ github.event_name == 'workflow_dispatch' }} == true ]]; then
TRAPS_REL=${{ inputs.release_tag }}
else
TRAPS_REL=${{ github.event.release.tag_name }}
fi
echo "TRAPS_REL=$TRAPS_REL" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push camera-traps-installer
uses: docker/build-push-action@v5
with:
context: custom_install
platforms: linux/amd64,linux/arm64
push: true
tags: tapis/camera-traps-installer:${{ env.TRAPS_REL }}
build-args: REL=${{ env.TRAPS_REL }}

0 comments on commit be57314

Please sign in to comment.