Skip to content

Commit f06c8b3

Browse files
brunoborgesCopilot
andcommitted
Use actions cache for JAR and AOT instead of committing to git
- build-generator.yml: save JAR+AOT to actions/cache, run weekly (Monday 06:00 UTC) - deploy.yml: restore from cache, fallback to building from source on cache miss - deploy.yml: trigger on workflow_run from Build Generator JAR - Remove generate.jar and generate.aot from git tracking - .gitignore: ignore both generate.jar and generate.aot Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 3facb10 commit f06c8b3

File tree

5 files changed

+34
-18
lines changed

5 files changed

+34
-18
lines changed

.github/workflows/build-generator.yml

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@ on:
66
paths:
77
- '.github/workflows/build-generator.yml'
88
- 'html-generators/generate.java'
9+
schedule:
10+
- cron: '0 6 * * 1' # every Monday at 06:00 UTC
911
workflow_dispatch:
1012

1113
permissions:
12-
contents: write
14+
contents: read
15+
actions: write
1316

1417
jobs:
1518
build:
@@ -30,18 +33,10 @@ jobs:
3033
- name: Build AOT cache
3134
run: java -XX:AOTCacheOutput=html-generators/generate.aot -jar html-generators/generate.jar
3235

33-
- name: Commit updated JAR and AOT cache
34-
run: |
35-
git config user.name "github-actions[bot]"
36-
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
37-
git add html-generators/generate.jar html-generators/generate.aot
38-
if git diff --cached --quiet; then
39-
echo "No changes to generate.jar or generate.aot"
40-
else
41-
git commit -m "Rebuild generate.jar and generate.aot from generate.java
42-
43-
Auto-generated by build-generator workflow.
44-
45-
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>"
46-
git push
47-
fi
36+
- name: Cache JAR and AOT
37+
uses: actions/cache/save@v4
38+
with:
39+
path: |
40+
html-generators/generate.jar
41+
html-generators/generate.aot
42+
key: generator-${{ hashFiles('html-generators/generate.java') }}

.github/workflows/deploy.yml

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@ on:
66
paths:
77
- 'content/**/*.json'
88
- 'templates/**'
9-
- 'html-generators/generate.jar'
10-
- 'html-generators/generate.aot'
119
- 'site/**'
10+
workflow_run:
11+
workflows: ['Build Generator JAR']
12+
types: [completed]
13+
branches: [main]
1214
workflow_dispatch:
1315

1416
permissions:
@@ -23,6 +25,7 @@ concurrency:
2325
jobs:
2426
build:
2527
runs-on: ubuntu-latest
28+
if: ${{ github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success' }}
2629
steps:
2730
- uses: actions/checkout@v4
2831

@@ -31,6 +34,22 @@ jobs:
3134
distribution: 'temurin'
3235
java-version: '25'
3336

37+
- name: Restore cached JAR and AOT
38+
id: cache-restore
39+
uses: actions/cache/restore@v4
40+
with:
41+
path: |
42+
html-generators/generate.jar
43+
html-generators/generate.aot
44+
key: generator-${{ hashFiles('html-generators/generate.java') }}
45+
46+
- name: Build JAR if cache miss
47+
if: steps.cache-restore.outputs.cache-hit != 'true'
48+
run: |
49+
echo "Cache miss — building JAR from source"
50+
curl -Ls https://sh.jbang.dev | bash -s - export fatjar --force --output html-generators/generate.jar html-generators/generate.java
51+
java -XX:AOTCacheOutput=html-generators/generate.aot -jar html-generators/generate.jar
52+
3453
- name: Generate HTML pages and snippets.json
3554
run: java -XX:AOTCache=html-generators/generate.aot -jar html-generators/generate.jar
3655

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,7 @@ site/data/snippets.json
1717
site/index.html
1818

1919
# Platform-specific CDS/AOT intermediate files (generated by build-cds.sh)
20+
html-generators/generate.aot
21+
html-generators/generate.jar
2022
html-generators/generate.jsa
2123
html-generators/generate.classlist

html-generators/generate.aot

-21 MB
Binary file not shown.

html-generators/generate.jar

-2.23 MB
Binary file not shown.

0 commit comments

Comments
 (0)