mirror of
https://github.com/layue13/MoonBridge.git
synced 2026-10-25 18:46:18 +00:00
Add Gitea CI and repository hygiene
This commit is contained in:
1 parent
648fd76012
commit
c95e26b4af
4 files changed
+80
No files matched your search
@@ -0,0 +1,15 @@
|
||||
* text=auto eol=lf
|
||||
|
||||
*.bat text eol=crlf
|
||||
*.cmd text eol=crlf
|
||||
*.ps1 text eol=crlf
|
||||
|
||||
*.jar binary
|
||||
*.zip binary
|
||||
*.gz binary
|
||||
*.png binary
|
||||
*.jpg binary
|
||||
*.jpeg binary
|
||||
*.gif binary
|
||||
*.ico binary
|
||||
*.pdf binary
|
||||
@@ -0,0 +1,34 @@
|
||||
name: ci
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
verify:
|
||||
name: Java 25 verification
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Java 25
|
||||
uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: zulu
|
||||
java-version: "25"
|
||||
cache: gradle
|
||||
|
||||
- name: Make Gradle wrapper executable
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Verify build, tests, release gates, and installed distributions
|
||||
run: ./gradlew --no-daemon --configuration-cache check installDist :proxy-admin-cli:installDist :proxy-query:installDist
|
||||
|
||||
- name: Build release bundle
|
||||
run: ./gradlew --no-daemon --configuration-cache release
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
.gradle/
|
||||
build/
|
||||
**/build/
|
||||
|
||||
out/
|
||||
target/
|
||||
|
||||
*.class
|
||||
*.log
|
||||
*.tmp
|
||||
*.pid
|
||||
|
||||
.idea/
|
||||
.vscode/
|
||||
*.iml
|
||||
|
||||
hs_err_pid*
|
||||
replay_pid*
|
||||
|
||||
data/
|
||||
*.invalid-*
|
||||
@@ -11,6 +11,7 @@ The core model intentionally does not contain `modpackId`. Routing decisions are
|
||||
- Version Catalog
|
||||
- Convention plugins in `proxy-build-logic`
|
||||
- Configuration cache enabled
|
||||
- Gitea Actions CI in `.gitea/workflows/ci.yml` runs Java 25 `check`, installed distribution smoke tests, release audit, performance profile validation, and release bundle creation on `main` pushes and pull requests
|
||||
|
||||
The local machine currently has JDK 25 installed at `C:\Program Files\Zulu\zulu-25`, while the default `java` on PATH may still point to Java 8. Use `JAVA_HOME=C:\Program Files\Zulu\zulu-25` or update PATH before building.
|
||||
|
||||
@@ -73,6 +74,15 @@ Get-ChildItem .\build\release
|
||||
Get-Content .\build\release\strataproxy-0.1.0-SNAPSHOT.zip.sha256
|
||||
```
|
||||
|
||||
The same core verification is automated in Gitea CI:
|
||||
|
||||
```text
|
||||
./gradlew --no-daemon --configuration-cache check installDist :proxy-admin-cli:installDist :proxy-query:installDist
|
||||
./gradlew --no-daemon --configuration-cache release
|
||||
```
|
||||
|
||||
CI proves build, unit/integration tests, installed command smoke tests, release metadata/SBOM/checksum audits, deployment asset validation, and performance profile schema validation. It does not replace the dedicated Linux native acceptance run for the 10k idle / 2k active-player performance target; record that evidence with `deployment/performance/profile-result-template.json`.
|
||||
|
||||
The release bundle contains app, Admin CLI, query CLI distribution archives, deployment profiles, sample configs, observability assets, README, `RELEASE-MANIFEST.txt`, `strataproxy-<version>.sbom.cdx.json`, and `strataproxy-<version>.metadata.json`. The checksum file covers the outer release bundle, the three inner distribution archives, the SBOM, and release metadata.
|
||||
|
||||
Release metadata is unsigned by default for local builds. Set `STRATAPROXY_RELEASE_SIGNING_KEY` or Gradle property `strataproxy.releaseSigningKey` to emit an HMAC-SHA256 signature over the release metadata payload:
|
||||
|
||||
Reference in new issue
Block a user