Skip to content

feat: Internationalize turnstile widget #1921

feat: Internationalize turnstile widget

feat: Internationalize turnstile widget #1921

Workflow file for this run

name: ci
permissions:
contents: write
on:
pull_request:
branches:
- main
push:
branches:
- main
- 'renovate/**'
jobs:
ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # fetch complete history for proper release detection
persist-credentials: false # to make `cycjimmy/semantic-release-action` work on protected branches
- run: corepack enable
- uses: actions/setup-node@v4
with:
node-version: 16
cache: "pnpm"
- name: πŸ“¦ Install dependencies
run: pnpm install
# https://github.com/vitejs/vite/blob/main/.github/workflows/ci.yml#L62
# Install playwright's binary under custom directory to cache
- name: Set Playwright path (non-windows)
if: runner.os != 'Windows'
run: echo "PLAYWRIGHT_BROWSERS_PATH=$HOME/.cache/playwright-bin" >> $GITHUB_ENV
- name: Set Playwright path (windows)
if: runner.os == 'Windows'
run: echo "PLAYWRIGHT_BROWSERS_PATH=$HOME\.cache\playwright-bin" >> $env:GITHUB_ENV
- name: Cache Playwright's binary
uses: actions/cache@v3
with:
# Playwright removes unused browsers automatically
# So does not need to add playwright version to key
key: ${{ runner.os }}-playwright-bin-v1
path: ${{ env.PLAYWRIGHT_BROWSERS_PATH }}
- name: Install Playwright
# does not need to explicitly set chromium after https://github.com/microsoft/playwright/issues/14862 is solved
run: pnpm playwright install chromium
- name: 🚧 Set up project
run: pnpm dev:prepare
- name: πŸ”  Lint project
run: pnpm run lint
- name: πŸ§ͺ Test project
run: pnpm test -- --coverage
- name: πŸ’ͺ Test types
run: pnpm test:types
- name: πŸ›  Build project
run: pnpm build
- name: 🟩 Coverage
uses: codecov/codecov-action@v3
- name: 🌍 Release
id: semantic
uses: cycjimmy/semantic-release-action@61680d0e9b02ff86f5648ade99e01be17f0260a4 # v4.0.0
with:
extra_plugins: |
@semantic-release/changelog
@semantic-release/git
env:
GITHUB_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} # required to be owned by a custom user to create releases & comments on protected branches
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: ✨ Beautify changelog
if: steps.semantic.outputs.new_release_published == 'true'
run: npx changelogithub
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}