Record verified production baseline and reuse Go module cache
Demo CI / check (push) Successful in 9s
Demo CI / check (push) Successful in 9s
This commit is contained in:
1 parent
c65b5470e0
commit
e8b4d41dd8
3 files changed
+7
-5
No files matched your search
@@ -37,6 +37,8 @@ kubectl exec -n platform-dev deployment/dev -c dev -- supervisorctl -c /etc/supe
|
|||||||
- 发布阶段失败会尝试恢复之前的 Demo 镜像和副本数,并在 Actions 中报失败,不把自动回退当作发布成功。首次发布失败恢复未启动状态。
|
- 发布阶段失败会尝试恢复之前的 Demo 镜像和副本数,并在 Actions 中报失败,不把自动回退当作发布成功。首次发布失败恢复未启动状态。
|
||||||
- `images/<完整提交>.tar`、`.tar.sha256`、`.json` 是正式发行归档,Git 忽略整个 `images/`。源码、Git、配置与归档保留;临时 CI 工作目录和验证 Job 会清理。
|
- `images/<完整提交>.tar`、`.tar.sha256`、`.json` 是正式发行归档,Git 忽略整个 `images/`。源码、Git、配置与归档保留;临时 CI 工作目录和验证 Job 会清理。
|
||||||
|
|
||||||
`config/namespace.yaml` 和 `config/prod/` 是首次建立生产资源的配置。生产镜像与副本数之后由发布流程管理;不要直接重套初始化配置覆盖正在运行的版本。更新平台拓扑前需保留当前固定镜像摘要和副本数,审查差异后再应用;日常发布和回退使用 Actions。
|
`config/namespace.yaml` 和 `config/prod/` 保存生产拓扑和首次验证通过的镜像基线。当前生产镜像与副本数由发布流程管理;不要直接重套基线配置覆盖正在运行的版本。更新平台拓扑前需保留当前固定镜像摘要和副本数,审查差异后再应用;日常发布和回退使用 Actions。
|
||||||
|
|
||||||
Runner、工具镜像、缓存和角色配置归 `/dm/service/platform/ci/`。Runner 仅接受本仓库任务、并发为 1;构建 Pod 不挂 Kubernetes 令牌,部署 Pod 的生产权限仅能读取和更新本项目的 `demo` Deployment。只有可信仓库维护者可以修改工作流或触发发布,不接收外部 fork/PR 的自动任务。
|
Runner、工具镜像、缓存和角色配置归 `/dm/service/platform/ci/`。Runner 仅接受本仓库任务、并发为 1;构建 Pod 不挂 Kubernetes 令牌,部署 Pod 的生产权限仅能读取和更新本项目的 `demo` Deployment。只有可信仓库维护者可以修改工作流或触发发布,不接收外部 fork/PR 的自动任务。
|
||||||
|
|
||||||
|
2026-10-09 首次自动 CI 和手动发布已通过,开发与正式域名均已实际返回 `hello world`。后续添加依赖时,将 `go.mod`、`go.sum` 一起提交;构建的下载、测试和编译步骤复用同一模块缓存,不把缓存内容提交到 Git。
|
||||||
+2
-2
@@ -1,10 +1,10 @@
|
|||||||
FROM docker.io/library/golang:1.25.14-bookworm@sha256:c268a04d59aea0b180ed9946a658cfab9e7b3391dc90eed6e4969ccff98c851f AS build
|
FROM docker.io/library/golang:1.25.14-bookworm@sha256:c268a04d59aea0b180ed9946a658cfab9e7b3391dc90eed6e4969ccff98c851f AS build
|
||||||
ENV GOTOOLCHAIN=local CGO_ENABLED=0
|
ENV GOTOOLCHAIN=local CGO_ENABLED=0
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
COPY src/go.mod ./
|
COPY src/go.* ./
|
||||||
RUN --mount=type=cache,target=/go/pkg/mod go mod download
|
RUN --mount=type=cache,target=/go/pkg/mod go mod download
|
||||||
COPY src/ ./
|
COPY src/ ./
|
||||||
RUN --mount=type=cache,target=/root/.cache/go-build \
|
RUN --mount=type=cache,target=/root/.cache/go-build --mount=type=cache,target=/go/pkg/mod \
|
||||||
test -z "$(gofmt -l .)" \
|
test -z "$(gofmt -l .)" \
|
||||||
&& go test ./... \
|
&& go test ./... \
|
||||||
&& go vet ./... \
|
&& go vet ./... \
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ metadata:
|
|||||||
name: demo
|
name: demo
|
||||||
namespace: project-demo
|
namespace: project-demo
|
||||||
spec:
|
spec:
|
||||||
replicas: 0
|
replicas: 1
|
||||||
revisionHistoryLimit: 5
|
revisionHistoryLimit: 5
|
||||||
strategy:
|
strategy:
|
||||||
type: RollingUpdate
|
type: RollingUpdate
|
||||||
@@ -33,7 +33,7 @@ spec:
|
|||||||
type: RuntimeDefault
|
type: RuntimeDefault
|
||||||
containers:
|
containers:
|
||||||
- name: demo
|
- name: demo
|
||||||
image: git.dever.cc/demo-ci/demo:bootstrap
|
image: git.dever.cc/demo-ci/demo@sha256:25c2c028d9e241424ff91391597a8d349036764d38a66192266ad7d5cdd26e38
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
env:
|
env:
|
||||||
- name: PORT
|
- name: PORT
|
||||||
|
|||||||
Reference in new issue
Block a user