Skip to content

feat(java): add SimpleWeb Java edition - #21

Merged
lettucebo merged 1 commit into
masterfrom
feat/java-simpleweb
Sep 2, 2026
Merged

lettucebo merged 1 commit into
masterfrom
feat/java-simpleweb

Conversation

@lettucebo

Copy link
Copy Markdown
Contributor

Summary

  • add a Java 21 / Spring Boot 4.1.1 edition under src-java/
  • add Java CI and OIDC VM deployment workflows
  • document local, Docker, and VM usage in English and Traditional Chinese

Verification

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

…lows

SimpleWeb only shipped an ASP.NET Core edition, so the same DevOps practices
could not be demonstrated on a second technology stack. Add a Java edition that
lives next to the C# one and is built and deployed independently.

- Add src-java/, a Spring Boot 4.1.1 / Java 21 application (Maven project root
  with wrapper and Dockerfile) serving /, /api/info, /actuator/health and
  /actuator/info, packaged as target/simpleweb.jar
- Add .github/workflows/12.java-build.yml: runs ./mvnw -B verify on pushes that
  touch src-java/**, uploads the deployable jar and writes a job summary
- Add .github/workflows/13.java-vm-deploy.yml: manual-only deployment to a
  Linux VM for the test or production GitHub Environment, using OIDC login and
  az vm run-command, with contents:write scoped to the publishing job only,
  a DEPLOY_OK sentinel check and a buildSha-verifying smoke test
- Document the Java edition in src-java/README.md and link it from README.md
  and README_zh-TW.md without touching the existing C# documentation
- Ignore Maven build output and Java IDE files

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1b3fad4e-252e-4b4b-8de7-618fddc6979f
@lettucebo
lettucebo merged commit 000d3b9 into master Sep 2, 2026
1 check passed
@lettucebo
lettucebo deleted the feat/java-simpleweb branch September 2, 2026 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant