StackVista/image-pipeline

GitHub: StackVista/image-pipeline

这是一套用于自动化容器镜像构建、扫描、证明和发布的可复用GitHub Actions工具集。

Stars: 0 | Forks: 1

# 镜像处理工具集 用于构建、扫描、证明和发布容器镜像的可复用 GitHub Actions。 ## 目录结构 | 路径 | 用途 | |------|------| | `.github/actions/scan-image/` | 组合操作:使用 Trivy + Grype 扫描镜像,依据策略进行判断,并输出 SARIF | | `evaluator/` | Go 二进制文件 (`image-pipeline-evaluate`),用于将异常策略应用到扫描器输出 | | `schemas/exception.schema.json` | 针对每个消费者的异常文件的 JSON Schema | | `vex/repository.yaml` | Trivy VEX 中心配置 | | `.github/workflows/` | 操作和评估器的 CI;评估器二进制文件的发布流程 | 异常 YAML 文件本身位于 **消费者仓库** 中,而不是此仓库,它们通过 `scan-image` 操作的 `exceptions-path` 输入来指定。 各操作的文档与操作本身位于同一目录:参见 [`.github/actions/scan-image/README.md`](./.github/actions/scan-image/README.md)。 ## 本地开发 [mise](https://mise.jdx.dev) 用于管理工具版本: ``` mise run build # builds ./bin/image-pipeline-evaluate mise run test # go test ./... mise run lint # gofmt + go vet + zizmor mise run lint-workflows # zizmor on workflows + composite actions ``` 评估器详情:[`evaluator/README.md`](./evaluator/README.md)。 ## 依赖更新 上游依赖的固定版本使用 [updatecli](https://www.updatecli.io/) 在 `.updatecli/` 目录下进行跟踪。 - `.github/workflows/updatecli-ci.yml` 为更改了 updatecli 配置或工作流的 PR 运行 `updatecli pipeline diff`。这是只读验证,不会自动提交更新 PR。 - `.github/workflows/bump-upstream-pins.yml` 每周以及手动触发时运行 `updatecli pipeline apply`。它使用 updatecli GitHub App 令牌为每个 updatecli 管道(例如 `[updatecli] bump Go dependencies` 和 `[updatecli] bump GitHub Actions pins`)单独提交或更新 PR。 - updatecli 清单跟踪 Go 模块更新、GitHub Actions SHA 固定版本以及嵌入在 `.github/actions/scan-image/action.yml` 中的工具固定版本。 ## 发布 评估器二进制文件通过从 `main` 分支推送 SemVer 标签来发布: ``` git tag -a v0.1.0 -m "evaluator v0.1.0" git push origin v0.1.0 ``` 这会触发 `.github/workflows/evaluator-release.yml`,该工作流使用 goreleaser 构建 linux/darwin × amd64/arm64 架构的归档文件 + 校验和,并发布一个 GitHub Release。 `v*` 标签命名空间当前属于评估器。如果添加了第二个可发布构件(例如一个构建操作),标签方案将需要重新考虑。 ## 路线图 - 可复用的构建工作流(镜像构建 + SBOM 证明) - 每个平台的 SBOM + 漏洞报告的 Cosign 无密钥 OIDC 证明 - 发布工作流(带来源信息的仓库推送)
标签:Angular, EVTX分析, GitHub Actions, Go语言, Grype, JSON Schema, mise, SARIF, updatecli, VEX, Web截图, 二进制构建, 依赖更新, 发布流水线, 复合动作, 容器安全, 容器镜像, 工具版本管理, 异常管理, 日志审计, 活动识别, 程序破解, 策略评估, 自动化构建, 自动笔记, 镜像扫描