Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Workflow to Publish Katib Images #1746

Merged
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 99 additions & 0 deletions .github/workflows/publish-algorithm-images.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
name: Publish AutoML Algorithm Images

on:
push:
branches:
- master
andreyvelich marked this conversation as resolved.
Show resolved Hide resolved

jobs:
# Suggestion Images.
suggestion-hyperopt:
name: Suggestion Hyperopt
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-hyperopt
dockerfile: cmd/suggestion/hyperopt/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-chocolate:
name: Suggestion Chocolate
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-chocolate
dockerfile: cmd/suggestion/chocolate/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-hyperband:
name: Suggestion Hyperband
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-hyperband
dockerfile: cmd/suggestion/hyperband/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-skopt:
name: Suggestion Skopt
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-skopt
dockerfile: cmd/suggestion/skopt/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-goptuna:
name: Suggestion Goptuna
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-goptuna
dockerfile: cmd/suggestion/goptuna/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-optuna:
name: Suggestion Optuna
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-optuna
dockerfile: cmd/suggestion/optuna/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-enas:
name: Suggestion ENAS
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-enas
dockerfile: cmd/suggestion/nas/enas/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

suggestion-darts:
name: Suggestion DARTS
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/suggestion-darts
dockerfile: cmd/suggestion/nas/darts/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}
andreyvelich marked this conversation as resolved.
Show resolved Hide resolved

# Early Stopping Images.
earlystopping-medianstop:
name: Early Stopping MedianStop
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/earlystopping-medianstop
dockerfile: cmd/earlystopping/medianstop/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}
69 changes: 69 additions & 0 deletions .github/workflows/publish-core-images.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: Publish Katib Core Images

on:
push:
branches:
- master

jobs:
# Katib Core Images.
controller:
name: Controller
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/katib-controller
dockerfile: cmd/katib-controller/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

db-manager:
name: DB Manager
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/katib-db-manager
dockerfile: cmd/db-manager/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

ui:
name: UI
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/katib-ui
dockerfile: cmd/new-ui/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

cert-generator:
name: Cert Generator
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/cert-generator
dockerfile: cmd/cert-generator/v1beta1/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

# Metrics Collector Images.
metrics-collector-file:
name: File Metrics Collector
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/file-metrics-collector
dockerfile: cmd/metricscollector/v1beta1/file-metricscollector/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

metrics-collector-tfevent:
name: TFEvent Metrics Collector
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/tfevent-metrics-collector
dockerfile: cmd/metricscollector/v1beta1/tfevent-metricscollector/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}
57 changes: 57 additions & 0 deletions .github/workflows/publish-trial-images.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: Publish Trial Images

on:
push:
branches:
- master

jobs:
trial-mxnet-mnist:
name: Trial MXNet MNIST
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/mxnet-mnist
dockerfile: examples/v1beta1/trial-images/mxnet-mnist/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

trial-pytorch-mnist:
name: Trial PyTorch MNIST
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/pytorch-mnist
dockerfile: examples/v1beta1/trial-images/pytorch-mnist/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

trial-enas-cnn-cifar10-gpu:
name: Trial ENAS CNN CIFAR10 for GPU
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/enas-cnn-cifar10-gpu
dockerfile: examples/v1beta1/trial-images/enas-cnn-cifar10/Dockerfile.gpu
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

trial-enas-cnn-cifar10-cpu:
name: Trial ENAS CNN CIFAR10 for CPU
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/enas-cnn-cifar10-cpu
dockerfile: examples/v1beta1/trial-images/enas-cnn-cifar10/Dockerfile.cpu
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}

trial-darts-cnn-cifar10:
name: Trial DARTS CNN CIFAR10
uses: kubeflow/katib/.github/workflows/template-publish-image.yaml@master
with:
image: docker.io/kubeflowkatib/darts-cnn-cifar10
dockerfile: examples/v1beta1/trial-images/darts-cnn-cifar10/Dockerfile
secrets:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}
54 changes: 54 additions & 0 deletions .github/workflows/template-publish-image.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Publish Katib Image Template

on:
workflow_call:
inputs:
image:
required: true
type: string
dockerfile:
required: true
type: string
secrets:
dockerhub_username:
required: true
dockerhub_token:
required: true

jobs:
publish-image:
name: Publish Image
# Trigger Publish Workflow only for kubeflow/katib repository.
if: github.repository == 'kubeflow/katib'
runs-on: ubuntu-latest
andreyvelich marked this conversation as resolved.
Show resolved Hide resolved
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Set Up Docker Buildx
uses: docker/setup-buildx-action@v1

- name: Docker Login
uses: docker/login-action@v1
with:
username: ${{ secrets.dockerhub_username }}
password: ${{ secrets.dockerhub_token }}

- name: Add Docker Tags
id: meta
uses: docker/metadata-action@v3
with:
images: ${{ inputs.image }}
tags: |
type=raw,latest
type=sha,prefix=v1beta1-

- name: Build and Push
uses: docker/build-push-action@v2
with:
context: .
file: ${{ inputs.dockerfile }}
push: true
tags: ${{ steps.meta.outputs.tags }}
cache-from: type=gha
cache-to: type=gha,mode=max