# ============================================================ # CI/CD 环境变量模板 # # ⚠️ 复制为 .env 后填写真实值。.env 已在 .gitignore 中,绝不允许入库。 # ⚠️ 2026-09-14 曾发生凭据入库事故(scripts/setup-cicd/cicd.config), # 本文件即该事故的整改产物。任何密码/令牌只允许出现在这里或 Jenkins Credentials。 # # 生成强随机值: # openssl rand -base64 24 # 密码 # openssl rand -hex 32 # 令牌/密钥 # ============================================================ # ---------- Gitea ---------- GITEA_ROOT_URL=https://git.f.novalon.cn GITEA_SSH_DOMAIN=git.f.novalon.cn GITEA_DB_NAME=gitea GITEA_DB_USER=gitea # 至少 24 位;与 app.ini [database] PASSWD 必须一致 GITEA_DB_PASSWORD=__CHANGE_ME__ # ---------- Jenkins ---------- JENKINS_ADMIN_USER=zhangxiang # 至少 16 位;JCasC 首次启动写入,之后改此值需同步改 casc.yaml 逻辑 JENKINS_ADMIN_PASSWORD=__CHANGE_ME__ # Gitea 个人访问令牌(Jenkins 拉取代码用) # 生成:Gitea -> 设置 -> 应用 -> 生成新令牌,权限仅勾 read:repository GITEA_TOKEN=__CHANGE_ME__ # 部署用 SSH 私钥口令(无口令填空) DEPLOY_SSH_KEY_PASSPHRASE= # ---------- 备份 ---------- BACKUP_ROOT=/home/novalon/backups/cicd # 本地保留份数(磁盘 20G 已用 85%,务必配异地) BACKUP_RETENTION=3 # 单份备份告警阈值 BACKUP_MIN_FREE_GB=3 # 异地同步开关:留空则不同步(强烈建议配置) # 例:rclone remote 名 + 路径 RCLONE_REMOTE= RCLONE_PATH=novalon-cicd-backup # ---------- 告警 ---------- # 失败时推送的 Webhook(企业微信/钉钉);留空则不推送 ALERT_WEBHOOK_URL= BACKUP_FULL_RETENTION=1 BACKUP_THIN_RETENTION=3