chore(i18n): translations update from hosted Weblate #6194
Workflow file for this run
This file contains hidden or 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: Build | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| - master | |
| pull_request: | |
| branches: | |
| - develop | |
| - master | |
| merge_group: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| permissions: {} | |
| jobs: | |
| build: | |
| name: Build | |
| uses: ./.github/workflows/_build.yml | |
| permissions: | |
| contents: read | |
| publish-docker: | |
| name: Publish | |
| needs: build | |
| if: ${{ github.event_name != 'pull_request' }} | |
| uses: ./.github/workflows/_publish-docker.yml | |
| permissions: | |
| id-token: write | |
| contents: read | |
| attestations: write | |
| packages: write | |
| artifact-metadata: write | |
| publish-web: | |
| name: Deploy to Host | |
| needs: build | |
| if: ${{ github.repository == 'fluidd-core/fluidd' && github.ref == 'refs/heads/develop' }} | |
| uses: ./.github/workflows/_publish-web.yml | |
| secrets: | |
| bucket: ${{ secrets.DEV_S3_BUCKET_NAME }} | |
| distribution-id: ${{ secrets.DEV_CF_DISTRIBUTION_ID }} | |
| aws-role: ${{ secrets.AWS_GITHUB_ACTIONS_ROLE }} | |
| permissions: | |
| id-token: write | |
| contents: read | |
| bundle-baseline: | |
| name: Save Bundle Size Baseline | |
| needs: build | |
| if: ${{ github.event_name == 'push' }} | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Harden Runner | |
| uses: step-security/harden-runner@05e31511f85b41b11d1cf0ef85d0992719546e2c # v2.21.0 | |
| with: | |
| egress-policy: audit | |
| - name: Checkout | |
| uses: actions/checkout@v7 | |
| with: | |
| persist-credentials: false | |
| sparse-checkout: tools | |
| - name: Setup Node | |
| uses: actions/setup-node@v7 | |
| with: | |
| node-version-file: .node-version | |
| - name: Download dist | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: fluidd-${{ github.sha }} | |
| path: ./dist | |
| - name: Generate bundle size manifest | |
| run: node tools/bundle-size.mjs generate dist bundle-size.base.json | |
| - name: Cache bundle size manifest | |
| uses: actions/cache/save@v6 | |
| with: | |
| path: bundle-size.base.json | |
| key: bundle-size-${{ hashFiles('tools/bundle-size.mjs') }}-${{ github.sha }} | |
| bundle-size: | |
| name: Bundle Size Report | |
| needs: build | |
| if: ${{ github.event_name == 'pull_request' }} | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Harden Runner | |
| uses: step-security/harden-runner@05e31511f85b41b11d1cf0ef85d0992719546e2c # v2.21.0 | |
| with: | |
| egress-policy: audit | |
| - name: Checkout | |
| uses: actions/checkout@v7 | |
| with: | |
| persist-credentials: false | |
| fetch-depth: 0 | |
| - name: Setup pnpm and Node | |
| uses: ./.github/actions/setup-pnpm-node | |
| - name: Resolve merge-base | |
| id: mb | |
| env: | |
| BASE_REF: ${{ github.base_ref }} | |
| run: | | |
| MERGE_BASE=$(git merge-base "origin/$BASE_REF" HEAD) | |
| echo "sha=$MERGE_BASE" >> "$GITHUB_OUTPUT" | |
| - name: Restore bundle size baseline | |
| id: cache | |
| uses: actions/cache/restore@v6 | |
| with: | |
| path: bundle-size.base.json | |
| key: bundle-size-${{ hashFiles('tools/bundle-size.mjs') }}-${{ steps.mb.outputs.sha }} | |
| - name: Build merge-base | |
| if: ${{ steps.cache.outputs.cache-hit != 'true' }} | |
| env: | |
| MERGE_BASE: ${{ steps.mb.outputs.sha }} | |
| run: | | |
| git worktree add ../base "$MERGE_BASE" | |
| cd ../base | |
| pnpm i --frozen-lockfile | |
| pnpm run build | |
| node "$GITHUB_WORKSPACE/tools/bundle-size.mjs" generate dist "$GITHUB_WORKSPACE/bundle-size.base.json" | |
| - name: Save bundle size baseline | |
| if: ${{ steps.cache.outputs.cache-hit != 'true' }} | |
| uses: actions/cache/save@v6 | |
| with: | |
| path: bundle-size.base.json | |
| key: bundle-size-${{ hashFiles('tools/bundle-size.mjs') }}-${{ steps.mb.outputs.sha }} | |
| - name: Download PR dist | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: fluidd-${{ github.sha }} | |
| path: ./dist | |
| - name: Generate PR bundle size manifest | |
| run: | | |
| node tools/bundle-size.mjs generate dist bundle-size.head.json | |
| - name: Compare bundle sizes | |
| # `shell: bash` for pipefail; the implicit default is `bash -e` without it, | |
| # so a failing `compare` would be masked by `tee`. | |
| shell: bash | |
| run: | | |
| node tools/bundle-size.mjs compare bundle-size.base.json bundle-size.head.json | tee bundle-size-report.md >> "$GITHUB_STEP_SUMMARY" | |
| - name: Write PR number | |
| env: | |
| PR_NUMBER: ${{ github.event.pull_request.number }} | |
| run: | | |
| echo "$PR_NUMBER" > pr-number.txt | |
| - name: Upload bundle size report | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: bundle-size-report | |
| path: | | |
| bundle-size-report.md | |
| pr-number.txt | |
| retention-days: 7 |