Skip to content

Commit 7858d60

Browse files
waltossclaude
andcommitted
demo: java-hotpatch polish, Slidev deck, Pages deploy workflow
- **java-hotpatch/record.sh** + asciinema cast + skills lockfile: iterative polish on the existing demo (continues 135e733 / a5ef031 / 1509d82) for reproducibility. `PricingController.java` is intentionally left with the VAT-on-discount bug — that's what the demo teaches. - **Slidev deck** (`demo/slides/`) used at the Dev With AI meetup. Media committed except `demo-java.mp4` (32 MB), which is uploaded to the [demo-assets-v1](https://github.com/theodo-group/debug-that/releases/tag/demo-assets-v1) release and referenced by URL from `slides.md`. - **GitHub Pages site deploy** (`.github/workflows/deploy-site.yml`): assembles a single artifact combining the existing landing page in `docs/` with the Slidev build under `/slides/`. Triggered by push to `main` under `docs/**` or `demo/slides/**`, plus manual dispatch. Landing page preserved — the existing Pages deploy at https://theodo-group.github.io/debug-that/ keeps working, just gets a new nav link to https://theodo-group.github.io/debug-that/slides/. **One-time repo setting change required**: switch Pages source from "Branch: main / /docs" to "GitHub Actions" (Settings → Pages → Source: GitHub Actions). After that, this workflow owns every deploy. - `docs/index.html`: added "Slides" link to the top nav and footer. .gitignore additions: - `demo/**/target/`, `demo/**/.agents/`, `demo/**/.claude/` (build output + local tooling) - `demo/slides/public/demo-java.mp4` (hosted on GH Releases) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 9464da2 commit 7858d60

35 files changed

Lines changed: 2664 additions & 38 deletions

.github/workflows/deploy-site.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Deploy site to GitHub Pages
2+
3+
# Assembles a single GitHub Pages site combining:
4+
# - the static landing page in `docs/` (existing dbg homepage)
5+
# - the Slidev deck in `demo/slides/`, built into `<site>/slides/`
6+
#
7+
# Both served from https://theodo-group.github.io/debug-that/ — landing at
8+
# `/`, slides at `/slides/`. Requires Pages source = "GitHub Actions" in
9+
# repo settings (Settings → Pages → Source: GitHub Actions). The previous
10+
# legacy setup (Source: Branch `main` / `/docs`) must be switched over once;
11+
# after that, this workflow owns every deploy.
12+
13+
on:
14+
push:
15+
branches: [main]
16+
paths:
17+
- "docs/**"
18+
- "demo/slides/**"
19+
- ".github/workflows/deploy-site.yml"
20+
# Manual trigger — useful for the first deploy after flipping the Pages source.
21+
workflow_dispatch:
22+
23+
# One deploy at a time; latest push wins.
24+
concurrency:
25+
group: pages
26+
cancel-in-progress: true
27+
28+
permissions:
29+
contents: read
30+
pages: write
31+
id-token: write
32+
33+
jobs:
34+
build:
35+
runs-on: ubuntu-latest
36+
steps:
37+
- uses: actions/checkout@v4
38+
39+
- uses: oven-sh/setup-bun@v2
40+
with:
41+
bun-version: latest
42+
43+
- name: Install slides dependencies
44+
working-directory: demo/slides
45+
run: bun install --frozen-lockfile
46+
47+
- name: Assemble site (docs landing + slides)
48+
run: |
49+
mkdir -p _site
50+
# Copy existing static landing page as-is.
51+
cp -R docs/. _site/
52+
# Build Slidev into _site/slides. The --base path matches where
53+
# it'll be served (Pages serves this repo's site under /debug-that/).
54+
cd demo/slides
55+
bunx slidev build --base /debug-that/slides/ --out "$GITHUB_WORKSPACE/_site/slides"
56+
57+
- uses: actions/configure-pages@v5
58+
59+
- uses: actions/upload-pages-artifact@v3
60+
with:
61+
path: _site
62+
63+
deploy:
64+
needs: build
65+
runs-on: ubuntu-latest
66+
environment:
67+
name: github-pages
68+
url: ${{ steps.deploy.outputs.page_url }}
69+
steps:
70+
- id: deploy
71+
uses: actions/deploy-pages@v4

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,11 @@ src/dap/adapters/java/adapter-sources.tar.gz
4949
demo/**/recording.cast
5050
demo/**/__hotpatch_tmp/
5151
docs/java-hotpatch.gif
52+
53+
# Demo build output / local tooling
54+
demo/**/target/
55+
demo/**/.agents/
56+
demo/**/.claude/
57+
58+
# Large demo video — hosted on GitHub Releases (demo-assets-v1) instead
59+
demo/slides/public/demo-java.mp4

0 commit comments

Comments
 (0)