Add Gitea CI + release workflows (CI-SETUP.md)
- .gitea/workflows/ci.yml: gateway plugin tests + Kotlin host tests on push/PR (hermes-agent cloned at pinned SHA, vendored test mirror) - .gitea/workflows/release.yml: manual dispatch; runs tests, builds signed Android APK (debug fallback) + Linux desktop app-image/deb via jpackage, creates Gitea release v<version> with artifacts (re-run safe) - androidApp: versionName from -PappVersion, CI release signing from ANDROID_KEYSTORE_* env vars - desktopApp: jpackage --app-version from -PappVersion - scripts/make_release_keystore.sh: one-time keystore + Gitea secret setup - vendor gateway-plugin/tests/test_android.py (byte-identical mirror) and ignore it in .pi-lens.json
This commit is contained in:
1 parent
8c09aecf4a
commit
7309158e12
8 files changed
+3141
-2
No files matched your search
@@ -14,7 +14,9 @@ android {
|
||||
minSdk = 29
|
||||
targetSdk = 34
|
||||
versionCode = 1
|
||||
versionName = "0.1.0"
|
||||
// CI passes -PappVersion=<version> (release workflow); local builds
|
||||
// keep the default.
|
||||
versionName = (project.findProperty("appVersion") as? String) ?: "0.1.0"
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
@@ -23,6 +25,27 @@ android {
|
||||
}
|
||||
}
|
||||
|
||||
// CI release signing: .gitea/workflows/release.yml restores a keystore
|
||||
// from Gitea secrets and exports ANDROID_KEYSTORE_* env vars (see
|
||||
// scripts/make_release_keystore.sh). Without them the release build stays
|
||||
// unsigned and the workflow falls back to a debug APK.
|
||||
val ciKeystore = System.getenv("ANDROID_KEYSTORE_FILE")
|
||||
if (ciKeystore != null) {
|
||||
signingConfigs {
|
||||
create("release") {
|
||||
storeFile = file(ciKeystore)
|
||||
storePassword = System.getenv("ANDROID_KEYSTORE_PASSWORD")
|
||||
keyAlias = System.getenv("ANDROID_KEY_ALIAS")
|
||||
keyPassword = System.getenv("ANDROID_KEY_PASSWORD")
|
||||
}
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
signingConfig = signingConfigs.getByName("release")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
|
||||
Reference in new issue
Block a user