docs: require Go build args in Docker builds

This commit is contained in:
xiaobing.wang 2026-04-01 12:32:00 +08:00
parent ab2698f7c9
commit c1d3b67a89
2 changed files with 6 additions and 0 deletions

View File

@ -25,6 +25,7 @@
- 只允许应用仓库 CI 同步当前应用自己的 release 结果与 `Application.targetRevision`
- `deploy/release/secret.yaml` 是唯一作者源CI 只导出 `releases/<app>/manifests/secret.yaml`
- 如果保留 `releases/<app>/manifests/` source就必须保留固定模板的 `kustomization.yaml`
- 如果 Go 构建发生在 Dockerfile 内,`build-images` 必须用 `--build-arg` 透传 `GOPROXY` 等构建变量
- 需要公网 HTTP 入口时固定使用 nginx + 单一 `NodePort`,不改成 Ingress
- 百智云用户鉴权是必填项,按固定顺序逐项补齐 `app_id` 与证书材料
- 平台 shared 之外的私有依赖必须明确来源;第三方镜像保持真实来源

View File

@ -167,12 +167,17 @@ Go 项目默认变量写在 `.gitlab-ci.yml` 的 `variables:`
- 优先使用 `docker buildx`
- 私有 Git 依赖通过 `.netrc` 和 build secret 传入
- 如需额外 CA也通过 build secret 传入
- 如果 Dockerfile 内会执行 `go mod download`、`go build` 等 Go 构建命令,必须通过 `--build-arg` 透传 Go 构建变量,不要只写在 `.gitlab-ci.yml``variables:`
- 至少透传:`GOPROXY`、`GOSUMDB`、`GOINSECURE`
- 如果 Dockerfile 用到了 `GOPRIVATE`、`GONOSUMDB`、`GONOPROXY`,也一并透传
- Dockerfile 中对应变量必须有 `ARG`,并让构建命令实际使用传入值,而不是退回默认值
禁止:
- `http://registry...`
- `--plain-http`
- `--insecure-skip-tls-verify`
- 不要假设 `.gitlab-ci.yml` 中的环境变量会自动进入 `docker build` / `docker buildx build`
### package-chart job