CI: more cache coverage, drop redundant triggers and a duplicate build step#4836
Merged
shai-almog merged 1 commit intomasterfrom Apr 30, 2026
Merged
CI: more cache coverage, drop redundant triggers and a duplicate build step#4836shai-almog merged 1 commit intomasterfrom
shai-almog merged 1 commit intomasterfrom
Conversation
…d step Round 2 of CI optimizations. All low-risk; no test coverage changes. - parparvm-tests.yml: move cache: 'maven' from the 6th setup-java to the first JDK 8 install so dependency restore happens before the five JDK installs run, not after. - scripts-javascript.yml: cache codenameone-tools, scripts/node_modules, and ~/.cache/ms-playwright; skip the ~150 MB Chromium download on cache hit (still installs OS deps via install-deps). - developer-guide-docs.yml + website-docs.yml: drop ready_for_review trigger type (synchronize already covers the relevant transitions). - javadocs.yml: add path filter so it only runs when Java sources, the build script, or the workflow itself change. - codeql.yml: drop timeout-minutes from 360 (6h) to 60. A hung run shouldn't burn 6 hours of compute. - pr.yml: remove the "Build CLDC 11 VM" step — it ran the byte-identical ant command as "Build CLDC11 JAR" earlier in the same job. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Contributor
|
Developer Guide build artifacts are available for download from this workflow run:
Developer Guide quality checks: |
Contributor
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
Contributor
Cloudflare Preview
|
5 tasks
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Round 2 of CI optimizations, building on #4834. All low-risk; no test coverage changes. The remaining structural items (pr.yml Maven+Ant dedupe, iOS port artifact sharing across workflows, dropping
push:triggers on test-only workflows) are bigger changes and will land as their own focused PRs.Changes
parparvm-tests.yml: Movecache: 'maven'from the 6thsetup-javainvocation (a "Restore JDK 8" step) onto the first JDK 8 install. The cache restore now happens before the five JDK installs, not after.scripts-javascript.yml: Add three caches:codenameone-tools(the JDK 8/17 + Maven binaries thatsetup-workspace.shdownloads itself — was previously the onlyscripts-*.ymlworkflow without this cache)scripts/node_modules(npm install ofplaywright)~/.cache/ms-playwright(the ~150 MB Chromium binary — on cache hit we useinstall-deps chromiumto install only the OS packages, skipping the browser download)developer-guide-docs.yml+website-docs.yml: Drop theready_for_reviewtrigger type. The default[opened, synchronize, reopened]covers everything;ready_for_reviewonly fires on draft → ready transitions where the head SHA hasn't changed since the lastsynchronize, so the workflow has already run.javadocs.yml: Add apaths:filter so it only runs when Java sources, the build script, or the workflow itself change. Previously ran on every PR including pure docs/CI/typo PRs.codeql.yml: Droptimeout-minutesfrom 360 (6h) to 60. CodeQL on this codebase finishes well under 30 min; a 6-hour ceiling lets a hung run burn money.pr.yml: Remove the "Build CLDC 11 VM" step. It ran the byte-identical ant command as "Build CLDC11 JAR" earlier in the same job:jartarget.Expected savings
scripts-javascript.yml(cache hit): ~3–5 min/run (skips the JDK redownloads in setup-workspace.sh and the Chromium download).parparvm-tests.yml(cache hit): ~30s earlier in the job — small but real.pr.yml: removes one redundant ant invocation × 3 matrix rows.javadocs.yml: zero CI for PRs that don't touch Java sources (was ~31s/run).codeql.yml: bound on a worst-case stuck run.What I didn't include and why
workflow_callreusable workflow and careful artifact-key design.push:triggers on test-only workflows (L6) — would halve master-merge CI cost but changes the signal model; should be reviewed deliberately.Test plan
yaml.safe_load).Cache restored from key:lines appear for the new cn1-tools / npm / Playwright caches inscripts-javascript.ymlon a second run.parparvm-testsjob logs show thecache: mavenrestore early in the job.🤖 Generated with Claude Code