devops: split release workflow into many (#11310)
This way we can restart independent parts of the release independently. References #11292
This commit is contained in:
parent
7bf0e28bc7
commit
62095b000b
90
.github/workflows/publish_release.yml
vendored
90
.github/workflows/publish_release.yml
vendored
|
|
@ -1,90 +0,0 @@
|
||||||
name: "publish release"
|
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [published]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish-npm-release:
|
|
||||||
name: "publish to NPM"
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
if: github.repository == 'microsoft/playwright'
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- uses: actions/setup-node@v2
|
|
||||||
with:
|
|
||||||
node-version: 12
|
|
||||||
registry-url: 'https://registry.npmjs.org'
|
|
||||||
- run: npm i -g npm@8
|
|
||||||
- run: npm ci
|
|
||||||
- run: npm run build
|
|
||||||
- run: npx playwright install-deps
|
|
||||||
- run: utils/publish_all_packages.sh --release-candidate
|
|
||||||
if: "github.event.release.prerelease"
|
|
||||||
env:
|
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
||||||
- run: utils/publish_all_packages.sh --release
|
|
||||||
if: "!github.event.release.prerelease"
|
|
||||||
env:
|
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
||||||
|
|
||||||
publish-driver-release:
|
|
||||||
name: "publish playwright driver to CDN"
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
if: github.repository == 'microsoft/playwright'
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- uses: actions/setup-node@v2
|
|
||||||
with:
|
|
||||||
node-version: 12
|
|
||||||
registry-url: 'https://registry.npmjs.org'
|
|
||||||
- run: npm i -g npm@8
|
|
||||||
- run: npm ci
|
|
||||||
- run: npm run build
|
|
||||||
- run: npx playwright install-deps
|
|
||||||
- run: utils/build/build-playwright-driver.sh
|
|
||||||
- run: utils/build/upload-playwright-driver.sh
|
|
||||||
env:
|
|
||||||
AZ_UPLOAD_FOLDER: driver
|
|
||||||
AZ_ACCOUNT_KEY: ${{ secrets.AZ_ACCOUNT_KEY }}
|
|
||||||
AZ_ACCOUNT_NAME: ${{ secrets.AZ_ACCOUNT_NAME }}
|
|
||||||
|
|
||||||
publish-docker-release:
|
|
||||||
name: "publish to DockerHub"
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
if: github.repository == 'microsoft/playwright'
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- uses: actions/setup-node@v2
|
|
||||||
with:
|
|
||||||
node-version: 12
|
|
||||||
registry-url: 'https://registry.npmjs.org'
|
|
||||||
- uses: azure/docker-login@v1
|
|
||||||
with:
|
|
||||||
login-server: playwright.azurecr.io
|
|
||||||
username: playwright
|
|
||||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
- name: Set up Docker QEMU for arm64 docker builds
|
|
||||||
uses: docker/setup-qemu-action@v1
|
|
||||||
with:
|
|
||||||
platforms: arm64
|
|
||||||
- run: npm i -g npm@8
|
|
||||||
- run: npm ci
|
|
||||||
- run: npm run build
|
|
||||||
- run: npx playwright install-deps
|
|
||||||
- run: ./utils/docker/publish_docker.sh stable
|
|
||||||
|
|
||||||
publish-trace-viewer:
|
|
||||||
name: "publish Trace Viewer to trace.playwright.dev"
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
if: github.repository == 'microsoft/playwright'
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- uses: actions/setup-node@v2
|
|
||||||
with:
|
|
||||||
node-version: 16
|
|
||||||
- run: npm i -g npm@7
|
|
||||||
- name: Deploy Stable
|
|
||||||
run: bash utils/build/deploy-trace-viewer.sh --stable
|
|
||||||
env:
|
|
||||||
GH_SERVICE_ACCOUNT_TOKEN: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
|
|
||||||
32
.github/workflows/publish_release_docker.yml
vendored
Normal file
32
.github/workflows/publish_release_docker.yml
vendored
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
name: "publish release - Docker"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
publish-docker-release:
|
||||||
|
name: "publish to DockerHub"
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
if: github.repository == 'microsoft/playwright'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: 12
|
||||||
|
registry-url: 'https://registry.npmjs.org'
|
||||||
|
- uses: azure/docker-login@v1
|
||||||
|
with:
|
||||||
|
login-server: playwright.azurecr.io
|
||||||
|
username: playwright
|
||||||
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||||
|
- name: Set up Docker QEMU for arm64 docker builds
|
||||||
|
uses: docker/setup-qemu-action@v1
|
||||||
|
with:
|
||||||
|
platforms: arm64
|
||||||
|
- run: npm i -g npm@8
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build
|
||||||
|
- run: npx playwright install-deps
|
||||||
|
- run: ./utils/docker/publish_docker.sh stable
|
||||||
27
.github/workflows/publish_release_driver.yml
vendored
Normal file
27
.github/workflows/publish_release_driver.yml
vendored
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
name: "publish release - driver"
|
||||||
|
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
publish-driver-release:
|
||||||
|
name: "publish playwright driver to CDN"
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
if: github.repository == 'microsoft/playwright'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: 12
|
||||||
|
registry-url: 'https://registry.npmjs.org'
|
||||||
|
- run: npm i -g npm@8
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build
|
||||||
|
- run: npx playwright install-deps
|
||||||
|
- run: utils/build/build-playwright-driver.sh
|
||||||
|
- run: utils/build/upload-playwright-driver.sh
|
||||||
|
env:
|
||||||
|
AZ_UPLOAD_FOLDER: driver
|
||||||
|
AZ_ACCOUNT_KEY: ${{ secrets.AZ_ACCOUNT_KEY }}
|
||||||
|
AZ_ACCOUNT_NAME: ${{ secrets.AZ_ACCOUNT_NAME }}
|
||||||
29
.github/workflows/publish_release_npm.yml
vendored
Normal file
29
.github/workflows/publish_release_npm.yml
vendored
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
name: "publish release - NPM"
|
||||||
|
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
publish-npm-release:
|
||||||
|
name: "publish to NPM"
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
if: github.repository == 'microsoft/playwright'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: 12
|
||||||
|
registry-url: 'https://registry.npmjs.org'
|
||||||
|
- run: npm i -g npm@8
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build
|
||||||
|
- run: npx playwright install-deps
|
||||||
|
- run: utils/publish_all_packages.sh --release-candidate
|
||||||
|
if: "github.event.release.prerelease"
|
||||||
|
env:
|
||||||
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||||
|
- run: utils/publish_all_packages.sh --release
|
||||||
|
if: "!github.event.release.prerelease"
|
||||||
|
env:
|
||||||
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||||
21
.github/workflows/publish_release_traceviewer.yml
vendored
Normal file
21
.github/workflows/publish_release_traceviewer.yml
vendored
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
name: "publish release - TraceViewer"
|
||||||
|
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
publish-trace-viewer:
|
||||||
|
name: "publish Trace Viewer to trace.playwright.dev"
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
if: github.repository == 'microsoft/playwright'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: 16
|
||||||
|
- run: npm i -g npm@7
|
||||||
|
- name: Deploy Stable
|
||||||
|
run: bash utils/build/deploy-trace-viewer.sh --stable
|
||||||
|
env:
|
||||||
|
GH_SERVICE_ACCOUNT_TOKEN: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
|
||||||
Loading…
Reference in a new issue