Commit graph

37 commits

Author SHA1 Message Date
Dan Stillman
da705c36ec Add a timeout to the SMB and NFS setup steps in CI
The apt mirrors regularly hang for many minutes, which was taking out
random jobs until the job timeout.
2026-08-20 12:34:40 -04:00
Dan Stillman
b930ddb863 Add Windows test jobs for Gecko and network-filesystem changes
Boots the Windows x64 and arm64 builds, which use custom-built Firefox
components rather than stock Mozilla binaries, and runs the DB and file
tests. A Gecko bump commit updates the custom-component hashes in
config.sh along with the version, so this tests each new set of custom
components, which previously required manual Windows testing.
2026-08-20 12:34:40 -04:00
Dan Stillman
847dffbf18 Update CI to Node 24
Include the version in the node_modules cache keys so that a version
change starts fresh caches.
2026-08-20 12:34:40 -04:00
Dan Stillman
96972db8c6 Don't install xvfb in Linux CI
xvfb comes with the GitHub runner image.
2026-08-20 12:34:39 -04:00
Dan Stillman
ed8049dffc Run network-filesystem tests only for relevant changes, and on macOS
Run the smb/nfs test shards and a new macOS NFS job only when the
changes touch the Gecko version or the network-filesystem database
handling, plus on manual and monthly scheduled runs, via a 'changes'
job feeding the test matrix. The macOS job uses the native NFS server
with a loopback mount and runs the real code path that crashed on
network data directories on macOS.
2026-08-19 11:13:15 -04:00
Dan Stillman
18f6fa50d5 Add CI test shards with the data directory on SMB and NFS shares
Adds 'smb' and 'nfs' entries to the test matrix that run the DB and
file test suites with the test data directory on a loopback CIFS or
NFS mount, covering the network-filesystem database handling from
bba85a3939. The test harness places the data directory under TMPDIR,
so connection initialization itself runs against the share, which is
where network-filesystem failures (startup crashes and hangs) occur.
The step timeout turns a startup hang into a failure.
2026-08-19 09:37:37 -04:00
Dan Stillman
62a431f42b CI: Don't run duplicate jobs for same-repo pull requests
Pushes to branches in this repo already run CI, so run pull_request jobs only
for PRs from forks, which don't trigger push runs here. The push run's checks
still appear on the PR, since checks are attached to the head commit. (This
skips merge-commit testing for same-repo PRs -- the push run tests the branch
as-is.)
2026-07-08 10:50:32 -04:00
Dan Stillman
4c392c4764 CI: Run tests in 4 parallel shards
Each shard job builds and runs a quarter of the test files via runtests.sh -p.
The deployment ZIP upload and utilities tests move to separate jobs. With the
default fail-fast matrix behavior, a failure in one shard cancels the others.
2026-07-08 10:50:32 -04:00
Dan Stillman
a487dd9eef Rename pdf-worker submodule to document-worker
Some checks are pending
CI / Build, Upload, Test (push) Waiting to run
Repo moved to zotero/document-worker on GitHub

After pulling, run:

    git submodule sync
    git submodule update --init document-worker

If an old `pdf-worker/` directory is left behind, it can be removed manually.
2026-04-22 15:50:02 -04:00
Dan Stillman
e1cd83214f CI: Deploy from version branches (9.0, 10.0, etc.)
Some checks are pending
CI / Build, Upload, Test (push) Waiting to run
And drop reference to fx128 branch
2026-04-21 14:41:21 -04:00
Tom Najdek
d3509ae259 Add support for test retries and enable three retries on CI 2026-03-11 14:35:39 -04:00
Dan Stillman
f5dd72dfb5 Run CI tests against zip-round-tripped build output
Instead of testing against the build/ directory directly, zip it up first
and then unzip it back into build/ before running tests. This ensures
tests run against the same artifact that gets uploaded to S3 and used by
the deployment scripts, catching issues that only manifest after a zip
round-trip (e.g., resolved symlinks, missing files).

Also makes Ruby setup conditional on deployment branches
2026-03-03 09:53:07 -05:00
Dan Stillman
bc3c05d064 CI: Update to dpl v2 2025-01-07 01:32:25 -05:00
Dan Stillman
9b4961a31f Build deployment ZIPs for fx128 branch 2024-12-14 01:16:01 -05:00
Dan Stillman
e0aaa7e366 Fix CI failures with dpl v2
dpl v2 just left beta, but it's failing with a syntax error in the
CloudFormation template, so stick to v1 for now.
2024-08-31 01:19:19 -04:00
Dan Stillman
5b1f2f4f90 Revert "Build deployment ZIPs from fx115 branch"
No longer needed on main branch

This reverts commit 8cd2c41e25.
2024-03-30 01:11:52 -04:00
Dan Stillman
8cd2c41e25 Build deployment ZIPs from fx115 branch 2024-03-30 01:02:08 -04:00
Stefan Weil
054a7526d3
Update used GitHub actions (#3870)
This fixes the current build annotations caused by deprecated versions:

    Node.js 16 actions are deprecated.
    Please update the following actions to use Node.js 20:
    actions/checkout@v3, actions/setup-node@v3, actions/cache@v3.

For more information see
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2024-03-22 01:55:36 -04:00
Dan Stillman
a49b58ba87 Cancel in-progress CI runs if another one starts 2023-06-17 02:45:31 -04:00
Dan Stillman
0c3d8eeb6f Upload deployment ZIP from 'main' branch 2023-05-22 06:27:53 -04:00
Dan Stillman
08213eb8fb fx102 branch is no more 2023-05-21 18:52:26 -04:00
Dan Stillman
2097822872 CI: Add lfs: true to actions/checkout@v3 2023-05-20 11:02:21 +00:00
Dan Stillman
328de1e790 Restore CI tests and update for Z7 and combined repo
Now needs to run fetch_xulrunner instead of downloading Firefox
2023-05-04 08:40:06 -04:00
Dan Stillman
d701b8db11 CI: Stop using --legacy-peer-deps
No longer necessary after react-virtualized update (#3055)
2023-04-13 00:56:58 -04:00
Dan Stillman
d22e6cde6b CI: Use npm i --legacy-peer-deps instead of --force
Just to be a little more precise and match the build instructions
2023-04-07 03:19:48 -04:00
Dan Stillman
8ce059bb46 Update GitHub Actions action versions 2023-04-07 01:32:26 -04:00
Dan Stillman
8e13fc0e2a Use npm i --force for react-virtualized 2023-04-01 04:15:10 -04:00
Dan Stillman
c580d7fc5e CI: Add --openssl-legacy-provider for Webpack 2023-04-01 04:15:10 -04:00
Dan Stillman
2e6fe3ddf1 CI: Update Node version to 18 2023-04-01 02:01:25 -04:00
Dan Stillman
169db42cf6 CI: Enable ZIP building on fx102 branch
Tests are still skipped
2022-09-12 21:52:37 -04:00
Dan Stillman
88afb2c495 Temporarily disable CI 2022-05-13 04:28:57 -04:00
Abe Jellinek
9829ea7009
Update utilities, move tests, add to CI (#2584) 2022-04-30 04:55:11 -04:00
Dan Stillman
966bee275c CI: Temporarily disable NPM cache due to a bug in the setup-node action
Getting "Cache folder path is retrieved for npm but doesn't exist on
disk: /home/runner/.npm" in the "Post Install Node" step for all runs
2021-07-22 04:46:10 -04:00
Dan Stillman
689da34094 CI: Update setup-node version and enable npm caching
https://github.blog/changelog/2021-07-02-github-actions-setup-node-now-supports-dependency-caching/
2021-07-07 01:39:08 -04:00
Dan Stillman
8d7eee0300 CI: Recursive submodule checkout 2021-03-03 05:30:34 -05:00
Dan Stillman
a97b7d4369 CI: Switch gem call from --no-ri/--no-doc to --no-document 2021-02-25 16:16:17 -05:00
Dan Stillman
46bde4c5a2 Add GitHub Actions CI workflow and remove Travis config 2021-01-18 23:06:13 -05:00