mirror of
https://github.com/pezkuwichain/pezkuwi-extension.git
synced 2026-10-25 04:55:07 +00:00
The diff step rebuilds the extension from master-ff-src.zip (the source archive AMO reviews) and compares the result with our build. It had never worked, which the removed continue-on-error was hiding: - The source zip left out .yarn/releases (yarnPath points there, so yarn could not start in the unpacked source) and scripts/ (build:ff runs scripts/postbuild-cleanup.cjs). Both are now included. - diff.sh used `[ a || b ]`, which is not valid test syntax, and piped `diff -qr` into `sort`, so the check exited 0 whatever diff found. It now goes by diff's own exit status; with a file altered it fails. - With those fixed, the builds still differed: webpack inlined import.meta.url from @pezkuwi/* packageInfo.js as the absolute file:// path of the build machine, which also put our build directory into the published extension. DefinePlugin now gives it a fixed value; it is only shown in duplicate-version warnings. Also fail-fast: false on the matrix. Without continue-on-error, the first red step cancelled the others, so their results were lost. Checked locally with node_modules as locked: "Builds are identical".
24 lines
564 B
YAML
24 lines
564 B
YAML
name: PR
|
|
on: [pull_request]
|
|
|
|
jobs:
|
|
pr:
|
|
strategy:
|
|
# Each step reports on its own; one red step must not cancel the others.
|
|
fail-fast: false
|
|
matrix:
|
|
step: ['lint', 'test', 'build', diff]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 'lts/*'
|
|
- name: Set Execute Permissions
|
|
run: chmod +x ./scripts/*
|
|
- name: ${{ matrix.step }}
|
|
run: |
|
|
corepack enable
|
|
yarn install --immutable
|
|
yarn ${{ matrix.step }}
|