publish canary #2510
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "publish canary" | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: "10 0 * * *" | |
push: | |
branches: | |
- release-* | |
env: | |
ELECTRON_SKIP_BINARY_DOWNLOAD: 1 | |
jobs: | |
publish-canary: | |
name: "publish canary NPM" | |
runs-on: ubuntu-24.04 | |
if: github.repository == 'microsoft/playwright' | |
permissions: | |
id-token: write # This is required for OIDC login (azure/login) to succeed | |
contents: read # This is required for actions/checkout to succeed | |
environment: allow-publish-driver-to-cdn # This is required for OIDC login (azure/login) | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
registry-url: 'https://registry.npmjs.org' | |
- run: npm ci | |
- run: npm run build | |
- run: npx playwright install-deps | |
- name: "@next: publish with commit timestamp (triggered manually)" | |
if: contains(github.ref, 'main') && github.event_name == 'workflow_dispatch' | |
run: | | |
node utils/build/update_canary_version.js --alpha --commit-timestamp | |
utils/publish_all_packages.sh --alpha | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: "@next: publish with today's date (triggered automatically)" | |
if: contains(github.ref, 'main') && github.event_name != 'workflow_dispatch' | |
run: | | |
node utils/build/update_canary_version.js --alpha --today-date | |
utils/publish_all_packages.sh --alpha | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: "@beta: publish with commit timestamp (triggered automatically)" | |
if: contains(github.ref, 'release') && github.event_name != 'workflow_dispatch' | |
run: | | |
node utils/build/update_canary_version.js --beta --commit-timestamp | |
utils/publish_all_packages.sh --beta | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Azure Login | |
uses: azure/login@v2 | |
with: | |
client-id: ${{ secrets.AZURE_PW_CDN_CLIENT_ID }} | |
tenant-id: ${{ secrets.AZURE_PW_CDN_TENANT_ID }} | |
subscription-id: ${{ secrets.AZURE_PW_CDN_SUBSCRIPTION_ID }} | |
- name: build & publish driver | |
env: | |
AZ_UPLOAD_FOLDER: driver/next | |
run: | | |
utils/build/build-playwright-driver.sh | |
utils/build/upload-playwright-driver.sh | |
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@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
- name: Deploy Canary | |
run: bash utils/build/deploy-trace-viewer.sh --canary | |
if: contains(github.ref, 'main') | |
env: | |
GH_SERVICE_ACCOUNT_TOKEN: ${{ secrets.REPOSITORY_DISPATCH_PERSONAL_ACCESS_TOKEN }} | |
- name: Deploy BETA | |
run: bash utils/build/deploy-trace-viewer.sh --beta | |
if: contains(github.ref, 'release') | |
env: | |
GH_SERVICE_ACCOUNT_TOKEN: ${{ secrets.REPOSITORY_DISPATCH_PERSONAL_ACCESS_TOKEN }} |