Skip to content

Setup VRT

Setup VRT #36

name: Update Screenshots
on:
pull_request:
types: [labeled]
env:
AUTHOR_NAME: 'github-actions[bot]'
AUTHOR_EMAIL: '41898282+github-actions[bot]@users.noreply.github.com'
COMMIT_MESSAGE: |
Update screenshots
Co-authored-by: ${{ github.actor }}
jobs:
update-screenshots:
if: ${{ github.event.label.name == 'Update Screenshots' }}
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
# one at a time per branch
concurrency:
group: update-screenshots@${{ github.head_ref }}
cancel-in-progress: true
steps:
- uses: actions/checkout@v5
with:
ref: ${{ github.head_ref }}
- uses: actions/setup-node@v6
with:
node-version: 25
check-latest: true
- name: Remove label
uses: actions-ecosystem/action-remove-labels@v1
with:
labels: 'Update Screenshots'
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Install dependencies
run: npm i
- name: Install Playwright Browsers
run: npx playwright install chromium firefox
- name: Update screenshots
run: node --run visual:update
- name: Push new screenshots
run: |
git config --global user.name "${{ env.AUTHOR_NAME }}"
git config --global user.email "${{ env.AUTHOR_EMAIL }}"
git add test/visual/__screenshots__/.
git diff-index --quiet HEAD || git commit -m "${{ env.COMMIT_MESSAGE }}"
git push --set-upstream origin ${{ github.head_ref }}