Files
wangjia 2698116696 feat(ci): 客户端 CI 脚手架(Android+Windows, 照 jiu)——起草+Android 本地验证
- compile-android.sh: 建 libbox.aar + split-per-abi 取 arm64-v8a(~82MB, 避 232MB
  universal) + release 签名(RELEASE_KEYSTORE/KEY_PASSWORD)。本地已验证构建通过、
  libbox.so 打进 APK。
- compile-windows.sh: 复用 client/windows/installer/pangolin.iss(Inno Setup),不签名。
- release-client.sh / deploy-client.sh: 复用 pangolin lib-forgejo/lib-ssh,传 Gitea
  release + 部署最新到 pangolin1:/var/lib/pangolin/downloads(仅留最新)。
- deploy-client.yml: client-v* tag → build-android(mac)+build-windows(windows) → release-deploy(mac)。
- build.gradle: 补 release 签名 config(读 key.properties, 缺则回退 debug)。
- 待确认: keystore alias/密码(见脚本 TODO);runner 需提到 user 级;服务器 /downloads + 官网链接下一步。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013nMthbVEmQquxBRKb9Fj8u
2026-07-06 19:40:34 +08:00

93 lines
2.1 KiB
Plaintext

# ---> AL
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
*.code-workspace
# Local History for Visual Studio Code
.history/
*.app
.snapshots/*
# 密钥与渲染产物 —— 绝不入库
deploy/secrets/
deploy/xray/config.json
deploy/singbox/config.json
# 备份系统密钥(age 私钥、AWS 凭据)—— 绝不入库
deploy/backup/backup.env
*.age-private*
age-keypair.txt
# infra/domains —— 签名私钥与发布产物绝不入库(公钥可入库)
*.ed25519.key
infra/domains/tools/_publish/
infra/domains/tools/_smoke/
# Terraform —— state/tfvars/缓存绝不入库
**/.terraform/
*.tfstate
*.tfstate.*
*.tfvars
!*.tfvars.example
*.tfplan
tf.plan
crash.log
# Terraform 状态与本地变量(含厂商/管理凭证)—— 绝不入库
infra/**/.terraform/
infra/**/.terraform.lock.hcl
*.tfstate
*.tfstate.*
infra/**/terraform.tfvars
*.auto.tfvars
# kernel 构建产物与临时源码(不入库,本地可重建)
app/kernel/dist/
app/kernel/.build/
# Go 编译产物(mock server 等)
server/mockserver
server/pangolin-server
server/out/
# Flutter / Dart 构建产物与本地配置
client/android/local.properties
client/android/app/src/main/java/
client/ios/Flutter/ephemeral/
client/pubspec.lock
# Android release 签名材料(本地或 CI 落盘,绝不入库)
client/android/key.properties
client/android/*.jks
client/android/*.keystore
# CI 客户端产物暂存目录(scripts/ci/compile-{android,windows}.sh 输出,构建期生成)
/dist/
# Claude worktrees(临时工作目录,本地专用)
.claude/worktrees/
# 杂项
.DS_Store
*.log
*.bak
# 编译产物(不应跟踪)
/server/server
/server/nodectl
/server/agent
# 字体子集生成的中间产物(源字体/临时字表;产物 client/fonts/ 才入库)
tools/fonts/_*
# golden 测试失败时生成的对比图(临时产物)
client/test/golden/failures/
# Inno Setup 编译产物(安装包,本地生成不入库)
client/windows/installer/Output/
# 覆盖率产物(CI 覆盖率闸生成,临时不入库)
/server/cover.out
/server/coverage.txt
/client/coverage/