From af1bf963dc75a546b4d7d4d4f8cfb3800f91458c Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Thu, 25 Mar 2021 12:44:20 -0700 Subject: [PATCH] devops: add docker release workflow to master branch (#367) --- .github/workflows/publish_docker_release.yml | 37 ++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .github/workflows/publish_docker_release.yml diff --git a/.github/workflows/publish_docker_release.yml b/.github/workflows/publish_docker_release.yml new file mode 100644 index 00000000..7f82e092 --- /dev/null +++ b/.github/workflows/publish_docker_release.yml @@ -0,0 +1,37 @@ +name: Publish Release Docker +on: + release: + types: [published] + workflow_dispatch: + branches: + - release-* +jobs: + publish-canary-docker: + name: publish to DockerHub + # We use `docker push --all-tags` to push all tags which is a newly addition to docker + runs-on: ubuntu-20.04 + if: github.repository == 'microsoft/playwright-java' + steps: + - uses: actions/checkout@v2 + - uses: azure/docker-login@v1 + with: + login-server: playwright.azurecr.io + username: playwright + password: ${{ secrets.DOCKER_PASSWORD }} + - uses: actions/checkout@v2 + - name: Build Docker image + run: docker build -t playwright-java:localbuild-focal -f Dockerfile.focal . + - name: tag & publish + run: | + # GITHUB_REF has a form of `refs/tags/v1.3.0`. + # TAG_NAME would be `v1.3.0` + TAG_NAME=${GITHUB_REF#refs/tags/} + if [[ -z "$TAG_NAME" ]]; + then + echo "TAG_NAME is empty" + exit 1 + fi + ./scripts/tag_image_and_push.sh playwright-java:localbuild-focal playwright.azurecr.io/public/playwright/java:latest + ./scripts/tag_image_and_push.sh playwright-java:localbuild-focal playwright.azurecr.io/public/playwright/java:focal + ./scripts/tag_image_and_push.sh playwright-java:localbuild-focal playwright.azurecr.io/public/playwright/java:${TAG_NAME} + ./scripts/tag_image_and_push.sh playwright-java:localbuild-focal playwright.azurecr.io/public/playwright/java:focal-${TAG_NAME}