Devtron v0.6.28 发布解读:Cosign 镜像签名插件、外部 ArgoCD 应用支持与 GitOps 能力增强

📅 发布时间:2026/10/14 22:17:36
Devtron v0.6.28 发布解读:Cosign 镜像签名插件、外部 ArgoCD 应用支持与 GitOps 能力增强
云原生DevOps运维【免费下载链接】devtronThe only Kubernetes dashboard you need项目地址https://gitcode.com/gh_mirrors/dev/devtron点击查看免费下载本篇基于 Devtron 仓库中的 release-notes-v0.6.28.md 展开完整梳理 v0.6.28 版本的 21 项缺陷修复、14 项功能增强、13 项文档更新与 8 项工程改进。读完后你可以掌握本版本最核心的四项能力Cosign 镜像签名插件的集成方式与底层脚本逻辑、外部 ArgoCD 应用的接入、用户自定义 GitOps 仓库与共享集群多 GitOps 配置以及 Pod 日志下载等运维实用特性并能按修复清单评估自身环境是否需要升级。版本概览v0.6.28 是 Devtron 0.6.x 系列中功能密度较高的一次发布覆盖四大类变更类别数量代表变更Bugs缺陷修复21CD 阶段 registry 凭据错误、强制删除选项修复、5xx 错误治理等Enhancements功能增强14Cosign 插件、GCS 镜像导出、外部 ArgoCD 应用、Pod 日志下载Documentation文档13安全特性文档重构、Build Infra 文档、exit status 128 排障指南Others其他8AppStore 重构 v3、dag app services 重构、NATS 依赖升级下面按新增能力 → 缺陷修复 → 文档与工程改进的顺序逐一展开并对有源码佐证的核心特性做纵深解析。功能增强Enhancements本版本共包含以下 14 项增强先完整列出再对重点特性深入剖析feat: Cosign plugin (#4543)feat: added support for GCS for image exporter plugin (#4625)feat: Github Release Plugin (#4761)feat: User defined git repo for GitOps deployment (#4281)feat: change deployment type from gitops to non-gitops and vice-versa for chart store apps (#4666)feat: version upgrade for authenticator (#4651)feat: active inactive user phase 2 (#4624)feat: added support for external argocd apps (#4643)feat: support build infra configurations properties configurable from ui (#4583)perf: adding support for git cli operations for existing go-git flows (#4602)feat: added proxy in github transport (#4652)feat: active inactive user phase 1 (#4589)feat: added support for multiple gitops configurations on shared clusters (#4622)feat: added support for downloading pod logs (#4539)Cosign 插件在 CI 流水线中对容器镜像签名v0.6.28 最重磅的新能力是内置Cosign v1.0.0插件#4543。Cosign 用于对构建产出的容器镜像进行安全签名证明创建者身份、保证镜像完整性下游消费方可以据此验证镜像来源并检测篡改是供应链安全的关键一环。官方用户指南见 Cosign 插件文档。集成方式。按照指南操作路径为Applications → Devtron Apps → 选择应用 → App Configuration → Workflow Editor → 新建或编辑构建流水线 → 进入 Post-build stage → 在 TASKS 中点击 Add task 并选择 Cosign。插件作为PRESET预置类型注册在 Post-buildstage_type 0阶段这一事实可以从插件注册脚本 226_cosign_plugin.up.sql 中确认INSERT INTO plugin_metadata (id,name,description,type,icon,deleted,...) VALUES (nextval(id_seq_plugin_metadata),Cosign v1.0.0, This plugin is used to Cosign to sign docker images.,PRESET,...); INSERT INTO plugin_stage_mapping (id,plugin_id,stage_type,...) VALUES (nextval(id_seq_plugin_stage_mapping), (SELECT id from plugin_metadata where nameCosign v1.0.0), 0, ...);用户输入变量。指南中列出的全部输入变量如下表这些变量与 SQL 脚本中写入plugin_step_variable表的定义一一对应VariableFormat说明示例值PrivateKeyFilePathSTRINGGit 仓库中私钥文件路径cosign/cosign.keyPostCommandSTRING签名完成后执行的命令cosign verify $DOCKER_IMAGEExtraArgumentsSTRING传给 Cosign 命令的附加参数--certificate-identitynameexample.comCosignPasswordSTRINGCosign 私钥的口令S3cur3Pssw0rd123!VariableAsPrivateKeySTRINGbase64 编码的私钥可引用作用域变量{{COSIGN_PRIVATE_KEY}}PreCommandSTRING为执行 Cosign 命令准备前置条件的命令curl -sLJO https://.../private其中DOCKER_IMAGE是全局输入变量脚本中以value_typeGLOBAL、reference_variable_nameDOCKER_IMAGE注册由流水线上游的构建步骤自动注入无需手动填写。底层执行逻辑与私钥优先级。从 226_cosign_plugin.up.sql 内嵌的 shell 脚本看插件的执行流程为从$HOME/.docker/config.json的.auths第一段条目中解析出 registry 地址与 base64 解码后的--registry-username/--registry-password保证签名命令与推送镜像使用同一套凭据以docker run gcr.io/projectsigstore/cosign:v2.2.2 sign --yestrue ...的方式执行签名脚本将DOCKER_IMAGE与ExtraArguments透传给 cosign 命令私钥来源存在明确的三级优先级SQL 中变量描述也标注了 high/lowest priority最高优先级VariableAsPrivateKey将 base64 私钥解码为cosign_ci.key后使用适合私钥以作用域变量形式托管的场景其次PreCommandPrivateKeyFilePath先执行前置命令例如下载私钥到工作目录再按路径签名最低优先级PrivateKeyFilePath默认值cosign.key直接使用 Git 仓库内的密钥文件若上述私钥来源均未配置脚本直接exit 1报 VariableAsPrivateKey must be present避免无密钥的空跑签名完成后执行可选的PostCommand典型用法是cosign verify $DOCKER_IMAGE做自校验。前置条件。接入前需按指南要求自行准备 Cosign 密钥对密钥生成流程见指南引用的 Cosign 官方项目私钥可放在 Git 仓库中配PrivateKeyFilePath、由PreCommand动态拉取、或以 base64 变量形式注入。外部 ArgoCD 应用支持#4643Devtron 支持纳管运行在外部 ArgoCD 实例中的应用。从源码结构看应用维度新增了外部 Argo 应用的链接请求识别逻辑CDPipelineConfigObject.IsExternalArgoAppLinkRequest 即用于判断当前 CD 配置是否指向外部 ArgoCD 应用同时 ArgoApplicationConfigService 等模块负责外部实例的配置读取。结合 ArgoClientWrapperServiceEA.goEA 即 External ArgoCD 构建变体可推断外部实例的连接与凭据封装由独立的 wrapper 服务承担与 Devtron 内置 ArgoCD 的调用链隔离。GitOps 部署的仓库与配置灵活性本版本对 GitOps 场景做了三处重要增强用户自定义 Git 仓库#4281GitOps 部署不再强制使用 Devtron 管理的 git-sensor 仓库可以为应用指定用户自己的 Git 仓库作为部署目标共享集群支持多套 GitOps 配置#4622同一共享集群下可以并存多个 GitOps 配置为多团队/多 GitOps 实例场景提供了基础Chart Store 应用可切换 GitOps 与非 GitOps 部署类型#4666chart store 应用可以在两种部署模式之间互相转换降低了早期选型失误的迁移成本。用户生命周期管理Active / Inactive 用户#4589、#4624分两阶段Phase 1 / Phase 2落地了用户激活/停用能力用于在保留历史数据的前提下禁止特定用户登录与访问。结合 User api version for old apis 的配套修复#4685旧版用户 API 也同步适配了新的用户状态语义。Pod 日志下载#4539除在线查看 Pod 日志外本版本新增了下载Pod 日志的能力。对应实现位于 k8sApplicationRestHandler.goDownloadPodLogs复用GetPodLogs的请求校验与日志流获取逻辑强制Follow false日志一次性拉取完毕而不持续跟踪最终以generatePodLogsFilename生成的文件名含 Pod 名称作为附件响应返回方便将现场日志导出归档用于故障分析。镜像导出器支持 GCS#4625与 Github Release 插件#4761Container Image Exporter 增加 GCS 目标镜像导出备份插件此前支持的存储目标扩展到 Google Cloud Storage与仓库中已有的 GCS 相关插件体系如 GCS Create Bucket配套使用Github Release Plugin将 CI 产物与版本发布动作对接到 GitHub Release 流程。两个新插件的图标注册均可在 30602400_plugin_icons_update.up.sql 中确认Container Image Exporter v1.0.0、Github Release Plugin v1.0、Cosign v1.0.0等条目的图标映射。性能与传输优化git CLI 操作支持#4602perf在既有 go-git 纯 Go 流程之外增加对 git 命令行操作的支持从提交类型看这是性能导向perf的变更可以推断用于缓解 go-git 在部分大仓库/深度历史场景下的性能瓶颈GitHub 传输层代理#4652为 GitHub 相关传输加入 proxy 支持便于企业网络出口统一代理的场景访问 GitHub认证组件版本升级#4651与构建基础设施属性 UI 可配置化#4583authenticatorSSO版本升级build infra configurations 的部分属性开放为可在 UI 上配置。缺陷修复Bugsv0.6.28 共包含 21 项修复完整清单如下括号内为对应 PR 号fix: Not able to see workflow name in case of project with uppercase letters (#4776)fix: provider nil fields (#4758)fix: git material url sanitised (#4742)fix: customTagService missing in workflowdagexec (#4741)fix: packages synced (#4743)fix: wrong registry creds is used in CD stage (PRE/POST) (#4717)fix: force delete option fixed on resource browser and app details page (#4646)fix: 28feb packet common bug fix (#4724)fix: Added argo app stream API response to resource tree API (#4715)fix: wrong image scan execution result (#4691)fix: 5xx 3.0 (#4578)fix: chart repo delete routing (#4692)fix: job workflow req volume mount (#4693)fix: User api version for old apis (#4685)fix: updated rbac for argo apps listing and detail fetch apis (#4678)fix: nil pointer issue in manual sync api (#4681)fix: add milli unit in memory (#4671)fix: resource terminal update api (#4641)fix: chartRef fetch in historical deployment triggers (#4654)fix: version upgrade (#4557)fix: resource tree bad gateway handle (#4613)其中几项与日常使用直接相关值得重点关注CD PRE/POST 阶段使用错误 registry 凭据#4717修复前 CD 阶段前后置插件可能拿错镜像仓库凭据与上文 Cosign 插件从 docker config 解析凭据的机制直接相关涉及镜像推送/签名类插件的用户应升级强制删除选项修复#4646资源浏览器与应用详情页的 force delete 选项恢复可用影响存量资源的删除操作Argo 应用资源树增强#4715resource tree API 的响应中补充了 argo app stream 信息并配合 #4613 修复了 resource tree 遇到 bad gateway 时的处理手动同步 API 空指针#4681与Argo 应用列表/详情 API 的 RBAC 更新#4678分别修复了崩溃与权限问题对依赖手动 sync 与程序化拉取 Argo 应用列表的集成方有意义CLI 新 API#3708新增仅凭ciPipelineId获取ciPipelineDetails的接口面向 CLI 场景。文档更新Documentation本版本同步改进了 13 项文档内容说明 Devtron 在持续完善随源码分发的用户手册仓库内 docs/ 目录文档与工程脚手架修正#4754、#4753、#4733、#4716项目级勘误、链接修正、导航与脚手架修复Lock Deployment Config 文档#4732新增部署配置锁定相关说明Workflow Skopeo Approval Image Tag at CI Image Tag Image Digest at CD 综合文档#4507覆盖工作流、Skopeo、审批以及 CI/CD 镜像打标与摘要的完整链路FAQgit-sensor PVC 磁盘写满问题#4714新增 Build Infra 文档#4686与上文 #4583 的 UI 可配置化配套排障指南gitexit status 128#4657安全特性文档全面重构#4349对应 docs/user-guide/security-features.md其他PR Validator 更新#4697、带文件类型的重定向#4675、重定向与断链修复#4634。其他变更Others工程与治理侧共 8 项均不影响功能但体现了内部架构演进方向misc: Updated new codeowners for migration scripts (#4781)chore: nats common lib version upgrade (#4711)chore: Refactoring dag app services (#4612)misc: Changed PR template (#4698)chore: AppStore Refactoring v3 (#4621)chore: Update CODEOWNERS (#4630)chore: Refactoring deployment template GitOps AppStore (#4616)chore: clean appListing api (#4628)其中 AppStore 重构 v3 与部署模板GitOps/AppStore重构是较大的内部整理可推断 pkg/appStore/ 目录下的服务划分在本版本后更加清晰NATS 公共库升级则关系到事件通信层的稳定性。升级建议与适用说明若你的环境使用镜像签名/验证Cosign、镜像导出到 GCS、外部 ArgoCD 纳管或自定义 GitOps 仓库v0.6.28 提供了直接对应的新能力是引入这些场景的起点版本若你依赖PRE/POST 阶段的 registry 凭据、手动同步 API、资源强制删除或CLI 按 ciPipelineId 查询流水线建议为修复这些缺陷而升级本版本属于 0.6.x 维护系列文中特性均基于该仓库当前快照release-notes-v0.6.28.md 及其引用的 SQL 脚本、源码文件核实升级到更新大版本时仍需参照仓库内后续 CHANGELOG 确认兼容性。总体而言v0.6.28 是一个安全 GitOps 灵活性 运维便利性三位一体的版本Cosign 插件补齐了镜像签名环节外部 ArgoCD 与多 GitOps 配置拓宽了部署拓扑的适配范围Pod 日志下载与资源强制删除等修复则降低了日常排障成本。赞分享云原生DevOps运维【免费下载链接】devtronThe only Kubernetes dashboard you need项目地址https://gitcode.com/gh_mirrors/dev/devtron点击查看免费下载相关推荐Devtron Cosign 插件实战在 CI 流水线中为容器镜像签名Devtron Cosign 插件实战在 CI 流水线中为容器镜像签名 导读 Cosign 是 Devtron 内置的预置PRESETCI 插件用于在构云原生DevOps运维Devtron v0.6.27 版本发布解读容器镜像导出、漏洞修复插件与可配置化基础设施增强Devtron v0.6.27 版本发布解读容器镜像导出、漏洞修复插件与可配置化基础设施增强 Devtron v0.6.27 是围绕 CI/CD 插件生态、镜云原生DevOps运维如何快速构建基于Google Ads Python库的广告监控仪表板完整指南如何快速构建基于Google Ads Python库的广告监控仪表板完整指南 想要实时监控Google Ad Manager广告投放效果本文将为您展示如何使后端开发工具创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考