Skip to content

Transformer Docker Images #40

Transformer Docker Images

Transformer Docker Images #40

name: Transformer Docker Images
on:
workflow_dispatch:
inputs:
build_echo_image:
description: 'Build TRANSFORMER_ECHO Image (aistorage/transformer_echo:latest)'
required: true
type: boolean
default: true
build_go_echo_image:
description: 'Build TRANSFORMER_GO_ECHO Image (aistorage/transformer_echo_go:latest)'
required: true
type: boolean
default: true
build_hello_world_image:
description: 'Build TRANSFORMER_HELLO_WORLD Image (aistorage/transformer_hello_world:latest)'
required: true
type: boolean
default: true
build_md5_image:
description: 'Build TRANSFORMER_MD5 Image (aistorage/transformer_md5:latest)'
required: true
type: boolean
default: true
build_tar2tf_image:
description: 'Build TRANSFORMER_TAR2TF Image (aistorage/transformer_tar2tf:latest)'
required: true
type: boolean
default: true
build_compress_image:
description: 'Build TRANSFORMER_COMPRESS Image (aistorage/transformer_compress:latest)'
required: true
type: boolean
default: true
build_keras_preprocess_image:
description: 'Build TRANSFORMER_KERAS Image (aistorage/transformer_keras:latest)'
required: true
type: boolean
default: true
build_ffmpeg_image:
description: 'Build TRANSFORMER_FFMPEG Image (aistorage/transformer_ffmpeg:latest)'
required: true
type: boolean
default: true
build_torchvision_preprocess_image:
description: 'Build TRANSFORMER_TORCHVISION Image (aistorage/transformer_torchvision:latest)'
required: true
type: boolean
default: true
push:
paths:
- 'transformers/**'
env:
ECHO_ENABLE: ${{ github.event.inputs.build_echo_image }}
GO_ECHO_ENABLE: ${{ github.event.inputs.build_go_echo_image }}
HELLO_WORLD_ENABLE: ${{ github.event.inputs.build_hello_world_image }}
MD5_ENABLE: ${{ github.event.inputs.build_md5_image }}
TAR2TF_ENABLE: ${{ github.event.inputs.build_tar2tf_image }}
COMPRESS_ENABLE: ${{ github.event.inputs.build_compress_image }}
KERAS_ENABLE: ${{ github.event.inputs.build_keras_preprocess_image }}
FFMPEG_ENABLE: ${{ github.event.inputs.build_ffmpeg_image }}
TORCHVISION_ENABLE: ${{ github.event.inputs.build_torchvision_preprocess_image }}
jobs:
build-test-tag:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Docker Login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Setup Minikube
uses: medyagh/[email protected]
with:
driver: docker
container-runtime: docker
cpus: max
memory: max
- name: Run AIStore in Minikube
run: |
git clone https://github.com/NVIDIA/aistore.git
cd aistore/deploy/dev/k8s
./minimal.sh
- name: Setup Python 3.11
uses: actions/setup-python@v2
with:
python-version: 3.11
- name: Install FFMPEG
run: |
wget -nv http://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
tar -xf ffmpeg-release-amd64-static.tar.xz
FFMPEG_DIR=$(ls | grep ffmpeg-*-static)
cp ${FFMPEG_DIR}/ffmpeg /usr/local/bin/
cp ${FFMPEG_DIR}/ffprobe /usr/local/bin/
rm -rf ffmpeg-*-static ffmpeg-release-amd64-static.tar.xz
ffmpeg -version
- name: Install Torchvision
run: |
pip install torchvision --index-url https://download.pytorch.org/whl/cpu
- name: Build & Push Transformer Docker Images w/ `test` Tag
run: |
pushd $GITHUB_WORKSPACE/transformers
export GIT_TEST="true"
make -B all
popd
- name: Test Transformer Docker Images w/ `test` Tag
run: |
cd $GITHUB_WORKSPACE/transformers/
export AIS_ENDPOINT="http://$(minikube ip):8080"
export GIT_TEST="true"
make test
build-latest-tag:
needs: build-test-tag
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Docker Login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Setup Minikube
uses: medyagh/[email protected]
with:
driver: docker
container-runtime: docker
cpus: max
memory: max
- name: Run AIStore in Minikube
run: |
git clone https://github.com/NVIDIA/aistore.git
cd aistore/deploy/dev/k8s
./minimal.sh
- name: Setup Python 3.11
uses: actions/setup-python@v2
with:
python-version: 3.11
- name: Install FFMPEG
run: |
wget -nv http://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
tar -xf ffmpeg-release-amd64-static.tar.xz
FFMPEG_DIR=$(ls | grep ffmpeg-*-static)
cp ${FFMPEG_DIR}/ffmpeg /usr/local/bin/
cp ${FFMPEG_DIR}/ffprobe /usr/local/bin/
rm -rf ffmpeg-*-static ffmpeg-release-amd64-static.tar.xz
ffmpeg -version
- name: Install Torchvision
run: |
pip install torchvision --index-url https://download.pytorch.org/whl/cpu
- name: Build & Push Transformer Docker Images w/ `latest` Tag
run: |
pushd $GITHUB_WORKSPACE/transformers
export GIT_TEST="false"
make -B all
popd
- name: Test Transformer Docker Images w/ `latest` Tag
run: |
cd $GITHUB_WORKSPACE/transformers/
export AIS_ENDPOINT="http://$(minikube ip):8080"
export GIT_TEST="false"
make test