资讯详情

资讯详情

Devtron v0.7.1 版本发布说明详解:多架构镜像复制、GitOps 异步安装与关键修复

云原生DevOps运维【免费下载链接】devtronThe only Kubernetes dashboard you need项目地址https://gitcode.com/gh_mirrors/dev/devtron点击查看免费下载本篇文章基于 Devtron 开源仓库 CHANGELOG/release-notes-v0.7.1.md 展开逐条解读 v0.7.1 的 Bug 修复、功能增强、文档更新与杂项改动并结合仓库源码、SQL 迁移脚本与用户文档说明每一项改动的实现位置、触发条件与实战影响。读完本文你将完整掌握 v0.7.1 的变更全景并能在升级后正确使用 CraneCopy 插件、GitOps 异步安装、Reload Materials 等新能力。版本概览v0.7.1 是 Devtron 在 v0.7.x 系列中的一次维护性版本共包含四类变更Bugs修复22 项覆盖权限RBAC、终端连接、GitOps 并发、日志接口崩溃、应用分组、Chart Group 等场景Enhancements增强15 项涉及多架构镜像支持、CraneCopy 插件、casbin v2 升级、GitOps 异步安装、air gap 镜像仓库等Documentation文档8 项包括 0.6 → 0.7 升级指引、插件创建文档、全局插件 API 规格等Others其他4 项主要是 common-lib 升级、Go 版本更新与数据库迁移。下文按类别逐项展开并给出对应的仓库证据路径方便读者在源码中进一步追溯。Bugs22 项关键修复的源码定位与影响分析权限与 RBAC 相关修复4 项v0.7.1 修复了多类权限问题其中与超级管理员Superadmin相关的最为关键修复条目影响场景fix: override clusterRbac with direct allow behaviour for super admin (#5449)超级管理员访问集群资源时直接用 allow 行为覆盖 clusterRbac 判断避免管理员被 RBAC 规则误拦fix: K8s Resource list RBAC ignore for Superadmin (#5415)K8s 资源列表页面对超级管理员跳过 RBAC 校验fix: Multiple choice option for namespace in Kubernetes resource permission (#5293)Kubernetes 资源权限配置中命名空间支持多选fix: chart group rbac issue (#5183)Chart Group 的权限校验问题这些修复围绕 Devtron 的 Casbin 权限模型展开权限规则定义在仓库根目录的 auth_model.conf 中内置策略样例可参考 argocd-assets/builtin-policy.csv。同时 v0.7.1 将 casbin 升级到 v2见下文 Enhancements这部分 RBAC 修复正是配合新版本权限引擎的必要收尾。终端与日志接口修复2 项fix: fix for terminal disconnect issue when custom transport is being used (#5436)当客户端使用自定义 transport 时终端会话出现意外断开本版本修复了该连接生命周期问题fix: panic issue in get/ download pod logs api (#5342)获取/下载 Pod 日志的 API 在特定输入下触发 panic空指针/切片越界类问题本版本补上了边界防护。Pod 日志接口位于 K8s 资源操作链路中对应实现可参考 api/restHandler/k8sRestHandler.go 与 api/terminal/UserTerminalAccessRestHandler.go这两处分别承载了日志读取与终端访问的 HTTP 入口。GitOps 与部署链路修复5 项修复条目说明fix: gitops async failed for git cli mode in concurrent cases (#5412)GitOps 异步模式在 git CLI 模式下并发执行时失败已修复并发场景下的处理fix: repo url and name handling with argocd (#5445)与 Argo CD 交互时仓库 URL 与名称的处理逻辑修正fix: compare manifest fixes (#5430)部署前 Manifest 对比diff功能的修复fix: deployment chart fix (#5215)部署 chart 相关问题修复fix: hibernating status is not being updated in app listing page (#5294)应用休眠Hibernation状态未在应用列表页正确刷新的问题GitOps 相关的客户端实现位于 client/argocdServer 目录其中 repository 子目录承载仓库管理逻辑是本版本 #5445 修复的直接落点。应用分组与应用列表修复3 项fix: encountering panic in application groups in build and deploy page (#5330)应用分组Application Group在构建与部署页触发 panicfix: restart workloads fix in app group (#5313)应用分组内重启工作负载Restart Workloads的修复fix: hibernating status is not being updated in app listing page (#5294)应用列表页休眠状态刷新问题与上文重复列出的同一项在发布说明中跨场景提及。其他修复8 项fix: EA mode wire fix (#5462)EAEnterprise Advantage模式的依赖注入wire修复相关文件见 DockerfileEA 与 authWire.gofix: external helm app when linked to devtron and page breaks while adding project to it, without switching back to applist (#5443)外部 Helm 应用关联 Devtron 后为其添加项目时页面崩溃、且未回到应用列表的问题fix: empty the code and image scan script (#5434)清空代码与镜像扫描脚本fix: Updating pr-issue-validator-script (#5384)更新 PR-issue 校验脚本fix: optimised FetchLatestDeploymentWithChartRefs query (#5393)优化FetchLatestDeploymentWithChartRefs数据库查询涉及 ChartRefs 的最近部署获取对应仓储层可参考 internal/sql/repository 下的部署仓储实现fix: nats consumer deleted on shutdown (#5377)NATS 消费者在进程关闭时被错误删除已修复优雅关闭流程fix: docker file version fix (#5299)Dockerfile 版本号修正。Enhancements15 项新能力的实现细节feat: Checking multiarchitecture of images (#5232) —— 多架构镜像检查Devtron 在镜像拉取/部署流程中增加了多架构multi-architecture即 multi-arch镜像的识别与检查能力配合 OCI manifest list 处理为后续在 CI 构建与部署环节支持多平台镜像分发奠定基础。多架构镜像的复制能力由本版本同时集成的CraneCopy 插件提供见下条其脚本中使用了crane pull ... --platformall --formatoci与crane push组合正是多架构镜像在仓库间无损迁移的具体实现。feat: Integration of Cranecopy plugin (#5131) —— CraneCopy 插件集成CraneCopy 是 v0.7.1 引入的预置PRESETCI 插件用于将一个仓库中的容器镜像含多架构复制到另一个目标仓库。其元数据、脚本与输入变量全部通过 SQL 迁移脚本 scripts/sql/265_cranecopy.up.sql 写入数据库插件类型PRESET仅可用于Post-build构建后阶段plugin_stage_mapping中stage_type0脚本类型SHELL运行于构建管道输出无输出变量仅打印复制结果仓库、Tag、镜像 Digest。输入变量SQL 定义变量格式说明TargetRegistrySTRING目标仓库格式如targetregistry.com/repoRegistryUsernameSTRING目标仓库认证用户名若为 ECR 则填 AWS Access Key IDRegistryPasswordSTRING目标仓库认证密码若为 ECR 则填 AWS Secret Access Key脚本核心逻辑依据 scripts/sql/265_cranecopy.up.sql 中的内联脚本通过CI_CD_EVENT事件中的commonWorkflowRequest获取源仓库、源凭证、Tag 等信息自动识别源/目标是否为 AWS ECRamazonaws.com或 Google Artifact Registrypkg.dev目标为pkg.dev时将密码 base64 解码为key.json借助gcloud auth login换取访问令牌涉及 ECR 时通过amazon/aws-cli ecr get-login-password获取临时认证使用gcr.io/go-containerregistry/crane:debug容器执行crane pull --platformall --formatoci拉取全部平台镜像再crane push推送到目标仓库最后输出目标仓库、Tag 与crane digest计算的镜像 Digest。该插件在使用层面没有前置依赖集成步骤见用户文档 docs/user-guide/plugins/crane-copy.md在App Configuration → Workflow Editor → 构建管道 → Post-build 阶段 → Add task中选择 CraneCopy填写 Task Name、Description 与上述三个输入变量并可设置触发/跳过条件Trigger/Skip Condition最后点击Update Pipeline生效。示例目标仓库取值如docker.io/dockertest。注意脚本开头会检查CI_CD_EVENT中的type若处于 CD部署阶段会直接报错退出——该插件只能用于 CI 的 Post-build 阶段。feat: GitOps async install for devtron applications (#5169) —— GitOps 异步安装v0.7.1 为 Devtron 应用引入GitOps 异步安装机制将耗时的 Helm/Argo CD 安装过程与部署请求解耦提升大批量部署的吞吐与稳定性。从源码结构看该能力的核心实现在 pkg/eventProcessor 与 pkg/deployment/trigger/devtronAppspkg/eventProcessor/CentralEventProcessorService.go 启动时订阅SubscribeDevtronAsyncInstallRequest()pkg/eventProcessor/in/WorkflowEventProcessorService.go 负责从消息中解析UserDeploymentRequest支持按userDeploymentRequestId取回最新请求、兼容旧版ValuesOverrideRequest结构并通过ProcessConcurrentAsyncDeploymentReq并发处理部署阶段入口 pkg/deployment/trigger/devtronApps/deployStageHandlerCode.go 通过isDevtronAsyncInstallModeEnabled按部署应用类型Helm App / Argo CD App / Flux App判断是否启用异步模式Helm 应用由EnableAsyncHelmInstallDevtronChart全局环境变量控制且ForceSyncDeployment为真时强制同步执行Argo CD 应用按应用与环境维度判断isDevtronAsyncArgoCdInstallModeEnabledForAppFlux 应用当前返回false即暂不支持异步安装。该特性配套迁移脚本为chore: migration for gitops config (#5383)见 Others 部分。feat: Reload materials api added (#5182) —— 新增 Reload Materials APIDevtron 通过 Git Sensor 组件监听代码仓库变更material。v0.7.1 新增Reload Materials API允许手动触发对指定 Git 仓库的重新加载/刷新。客户端实现位于 client/gitSensorclient/gitSensor/GitSensorClient.go 定义ReloadMaterials(ctx, req)接口并转发给底层 API 客户端client/gitSensor/GitSensorRestClient.go 定义请求体结构ReloadMaterialsDto/ReloadMaterialDto字段包括appId、gitmaterialId与cloningModeclient/gitSensor/GitSensorGrpcClient.go 通过 gRPC 将请求转换为pb.ReloadMaterialsRequest并调用 Git Sensor 服务。该 API 对“代码提交后未触发构建”或“需要立即同步最新提交”的排障场景非常实用。feat: air gap registry v2 (#5220) —— 离线环境镜像仓库 v2面向air gap离线/隔离网络环境v0.7.1 升级了离线镜像仓库方案到 v2。从源码看Devtron 通过全局环境变量暴露 air gap 标识pkg/commonService/CommonBaseService.go 将IsAirGapEnvironment写入环境变量列表bean 定义见 pkg/commonService/bean_ent.go。air gap 模式下镜像扫描、插件下载等需要外网访问的组件会切换为内网/离线源。feat: casbin upgraded to v2 (#5329) —— 权限引擎升级到 casbin v2权限模型从 casbin v1 升级到 v2。当前 go.mod 中同时保留了 v1.9.1 与 v2.102.0 两个依赖配合xorm-adapterv1/v2 两版完成策略持久化。升级后权限校验 API、模型语法解析均由 v2 引擎承担配合上文 RBAC 修复保证超级管理员等角色的兼容行为。feat: chart ref schema db migration (#5319) —— chart ref schema 数据库迁移为 chart ref部署模板引用增加了 schema 迁移支持确保新版本引用模板与数据库记录一致可参考 scripts/sql/256_custom_deployment_schema.up.sql 这类 schema 迁移脚本的组织方式。feat: Added statefulset chart 5.1.0 (#5199) —— 新增 StatefulSet Chart 5.1.0新增 StatefulSet 部署模板版本5.1.0对应 SQL 迁移脚本 scripts/sql/254_statefulset_5_1_0.up.sql向chart_ref表插入statefulset-chart_5-1-0version5.1.0部署策略路径pipeline-values.yaml在global_strategy_metadata_chart_ref_mapping中为该 chart 关联两种全局部署策略ROLLINGUPDATE默认与ONDELETE。这意味着在 v0.7.1 及以后新建的 StatefulSet 应用可在“滚动更新”与“删除后重建OnDelete”两种策略间选择。对应 chart 模板位于 scripts/devtron-reference-helm-charts 下的 statefulset-chart 目录。feat: 其余增强条目说明feat: updated kubelink grpc client cfg (#5426)更新 kubelink gRPC 客户端配置kubelink 是 Devtron 与集群通信的组件相关清单见 manifests/yamls/kubelink.yamlfeat: new scripts added for rescan sbom support, helm manifest scan flag and git container links (#5406)新增脚本SBOM 重新扫描支持、Helm manifest 扫描开关、Git 容器链接feat: mirgator plugin (#5347)新增“Mirgator”插件feat: insecure support for chart-sync (#5328)chart-sync 支持非安全insecure模式便于在 HTTP/自签证书环境同步 chartfeat: Up and Down Script for BitBucket Plugin v1.0.0 (#4949)BitBucket 插件 v1.0.0 的上线与下线脚本feat: tenants and installations migration (#5187)租户与安装信息的数据库迁移Documentation8 项文档更新条目说明doc: Added migration steps for 0.6 to 0.7 upgrade (#5411)新增0.6 → 0.7 升级迁移步骤是升级用户必读内容相关指引可参考 docs/setup/upgrade 目录doc: Created Deployment Window Draft (#4800)创建“部署窗口Deployment Window”功能文档草稿doc: Plugin Creation Doc (#5372)插件创建文档与 developers-guide/PluginCreationStep.md 呼应是编写自定义插件含 CraneCopy 这类 PRESET 插件的操作指南docs: Added specs for the global plugin Apis (#5362)为全局插件 API 补充规格说明对应规格文件见 specs/plugindoc: Blob Storage Redirection Other Fixes (#5432)对象存储Blob Storage重定向修复doc: Redirection Fix for User Permissions Doc Other Fixes (#5382)用户权限文档链接重定向修复doc: Redirection Fixes for 0.7 (#5381) / Redirection Issue Trial Fix (#5378)0.7 系列文档链接重定向修复docs: Fixes Corrections in Docs (#5335) / fixed broken link in readme (#5337)文档勘误与 README 失效链接修复docs: removed users (#5324) / Created a file for listing Devtron Users (#5310)整理用户相关文档新增用户列表文件Others4 项基础组件变更条目说明chore: common-lib upgrade for nats replicas (#5446)升级 common-lib适配 NATS 副本replicas配置NATS 组件清单见 manifests/yamls/nats-server.yamlchore: migration for gitops config (#5383)GitOps 配置的数据库迁移为 GitOps 异步安装#5169提供配置落库支持chore: update common-lib tag version (#5333)更新 common-lib 镜像 tag 版本chore: updated go version in EA dockerfile (#5327)更新 EAEnterprise Advantage镜像的 Go 版本对应 DockerfileEA升级与验证建议升级路径若当前为 v0.6.x请先查阅 #5411 提供的 0.6 → 0.7 迁移步骤对应 docs/setup/upgrade 目录下的升级文档再进入 v0.7.1权限回归测试casbin v2 升级后重点回归超级管理员访问集群资源、K8s 资源列表、Chart Group 等受 RBAC 保护的场景新插件尝鲜在构建管道的 Post-build 阶段集成 CraneCopy填写TargetRegistry/RegistryUsername/RegistryPassword即可完成多架构镜像的仓库间复制GitOps 异步安装确认部署类型Helm / Argo CD与全局开关EnableAsyncHelmInstallDevtronChart的配置注意 Flux 应用暂不支持异步安装如需强制同步可开启ForceSyncDeployment。以上所有条目均可在当前仓库的源码、SQL 迁移脚本与文档中找到对应实现v0.7.1 在权限、多架构镜像、GitOps 异步化与文档体系四个方向上的打磨为后续版本的能力扩展打下了基础。赞分享云原生DevOps运维【免费下载链接】devtronThe only Kubernetes dashboard you need项目地址https://gitcode.com/gh_mirrors/dev/devtron点击查看免费下载相关推荐OpenProject 4.1.2 版本发布说明核心与插件关键缺陷修复详解OpenProject 4.1.2 版本发布说明核心与插件关键缺陷修复详解 OpenProject 4.1.2 是 2015 年 6 月 11 日发布的补丁版后端前端项目管理企业应用协同办公Robot Framework 4.0.1 版本发布说明与关键修复深度解析Robot Framework 4.0.1 版本发布说明与关键修复深度解析 Robot Framework 4.0.1 是 4.0.x 系列的首个缺陷修复版本测试RPA接口测试devtron v0.6.25 版本发布解读关键修复、批量休眠与异步部署等源码级解析devtron v0.6.25 版本发布解读关键修复、批量休眠与异步部署等源码级解析 本文以 devtron 官方发布说明 CHANGELOG/release云原生DevOps运维上一篇革命性视频自动化JianYingApi如何颠覆企业内容生产范式下一篇WeChatMsg 教程3 步把微信聊天记录导出成 HTML、Word 和 CSV创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →