mirror of
https://github.com/huggingface/transformers.git
synced 2025-07-03 21:00:08 +06:00

* update actions versions * update actions versions * update actions versions * update actions versions Co-authored-by: ydshieh <ydshieh@users.noreply.github.com>
258 lines
7.9 KiB
YAML
258 lines
7.9 KiB
YAML
name: Build docker images (scheduled)
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- docker-image*
|
|
repository_dispatch:
|
|
workflow_call:
|
|
inputs:
|
|
image_postfix:
|
|
required: true
|
|
type: string
|
|
schedule:
|
|
- cron: "0 1 * * *"
|
|
|
|
concurrency:
|
|
group: docker-images-builds
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
latest-docker:
|
|
name: "Latest PyTorch + TensorFlow [dev]"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-all-latest-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-all-latest-gpu${{ inputs.image_postfix }}
|
|
# Push CI images still need to be re-built daily
|
|
-
|
|
name: Build and push (for Push CI) in a daily basis
|
|
# This condition allows `schedule` events, or `push` events that trigger this workflow NOT via `workflow_call`.
|
|
# The later case is useful for manual image building for debugging purpose. Use another tag in this case!
|
|
if: inputs.image_postfix != '-push-ci'
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-all-latest-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-all-latest-gpu-push-ci
|
|
|
|
latest-with-torch-nightly-docker:
|
|
name: "Nightly PyTorch + Stable TensorFlow"
|
|
# Push CI doesn't need this image
|
|
if: inputs.image_postfix != '-push-ci'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-all-latest-gpu
|
|
build-args: |
|
|
REF=main
|
|
PYTORCH=pre
|
|
push: true
|
|
tags: huggingface/transformers-all-latest-torch-nightly-gpu
|
|
|
|
latest-torch-deepspeed-docker:
|
|
name: "Latest PyTorch + DeepSpeed"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-pytorch-deepspeed-latest-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-pytorch-deepspeed-latest-gpu${{ inputs.image_postfix }}
|
|
|
|
# Can't build 2 images in a single job `latest-torch-deepspeed-docker` (for `nvcr.io/nvidia`)
|
|
latest-torch-deepspeed-docker-for-push-ci-daily-build:
|
|
name: "Latest PyTorch + DeepSpeed (Push CI - Daily Build)"
|
|
# Can't run in parallel, otherwise get an error:
|
|
# `Error response from daemon: Get "https://registry-1.docker.io/v2/": received unexpected HTTP status: 503 Service Unavailable`
|
|
needs: latest-torch-deepspeed-docker
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
# Push CI images still need to be re-built daily
|
|
-
|
|
name: Build and push (for Push CI) in a daily basis
|
|
# This condition allows `schedule` events, or `push` events that trigger this workflow NOT via `workflow_call`.
|
|
# The later case is useful for manual image building for debugging purpose. Use another tag in this case!
|
|
if: inputs.image_postfix != '-push-ci'
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-pytorch-deepspeed-latest-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-pytorch-deepspeed-latest-gpu-push-ci
|
|
|
|
nightly-torch-deepspeed-docker:
|
|
name: "Nightly PyTorch + DeepSpeed"
|
|
# Push CI doesn't need this image
|
|
if: inputs.image_postfix != '-push-ci'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-pytorch-deepspeed-nightly-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-pytorch-deepspeed-nightly-gpu
|
|
|
|
doc-builder:
|
|
name: "Doc builder"
|
|
# Push CI doesn't need this image
|
|
if: inputs.image_postfix != '-push-ci'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-doc-builder
|
|
push: true
|
|
tags: huggingface/transformers-doc-builder
|
|
|
|
latest-pytorch:
|
|
name: "Latest PyTorch [dev]"
|
|
# Push CI doesn't need this image
|
|
if: inputs.image_postfix != '-push-ci'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-pytorch-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-pytorch-gpu
|
|
|
|
latest-tensorflow:
|
|
name: "Latest TensorFlow [dev]"
|
|
# Push CI doesn't need this image
|
|
if: inputs.image_postfix != '-push-ci'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
-
|
|
name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
-
|
|
name: Check out code
|
|
uses: actions/checkout@v3
|
|
-
|
|
name: Login to DockerHub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
|
-
|
|
name: Build and push
|
|
uses: docker/build-push-action@v3
|
|
with:
|
|
context: ./docker/transformers-tensorflow-gpu
|
|
build-args: |
|
|
REF=main
|
|
push: true
|
|
tags: huggingface/transformers-tensorflow-gpu
|