v1.17.0 Release Notes

2023 年 4 月 4 日,Zadig 正式发布 v1.17.0。

功能列表

工作流功能列表

  • 自定义工作流增加内置输出变量(服务/代码信息/环境名称等)
  • 自定义工作流支持个人收藏
  • 自定义工作流支持通用触发器
  • 自定义工作流支持操作日志
  • 自定义工作流执行支持全选服务组件
  • 自定义工作流添加待审批状态
  • 工作流支持 Helm 服务并行部署
  • 工作流 Git 触发器 Push 事件支持自动取消
  • 工作流任务超时时间包含准备环境阶段
  • 工作流构建支持配置代码库执行时不显示
  • 工作流任务缓存配置默认关闭
  • 测试任务支持文件存储能力
  • 安全扫描支持配置多个仓库
  • 仪表盘新增工作流运行状态

工作流体验优化

  • 工作流部署任务状态优化,增强 Pod 事件检查
  • 工作流列表页面显示效率优化
  • 工作流列表页面显示近十条任务信息
  • 工作流任务列表页面支持阶段信息
  • 工作流任务详情页面 UI 优化
  • 工作流配置和执行错误信息优化
  • 工作流日志 /r 换行显示优化
  • 工作流任务必填内容增加校验
  • 自定义工作流审批人数检查优化

服务及环境

  • 下线共享服务
  • 环境支持个人收藏
  • 环境页面服务列表滚动交互优化
  • Helm Chart 项目添加服务交互优化

其他优化及问题修复

  • 项目搜索支持中文
  • 镜像仓库集成增加地址校验
  • 权限配置 UI 优化
  • 修复自定义工作流执行跨项目测试报错问题
  • 修复 Gerrit patch set 事件无法触发工作流问题
  • 修复工作流多 PR 执行时通知信息中丢失 PR 问题
  • 修复基于非 master 分支创建 tag 无法正常触发工作流问题
  • 若干体验优化和交互优化

业务变更声明

K8s YAML 场景中的共享服务功能在新版本中下线,升级后服务数据不受影响。如果你有使用此功能,升级后在引用服务的项目中为该服务配置构建即可,构建配置可参考:构建配置

版本升级过程

注意

如果当前系统版本 < v1.16.0,请先升级到 v1.16.0,具体升级过程参见 v1.16.0 升级方式,再按照以下方式升级到 v1.17.0

数据库备份

如果已经正式使用,升级前请务必做好数据库备份

  1. 数据库备份命令:
  • 备份 MongoDB 数据
  1. mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
  • 备份 MySQL 数据
  1. mysqldump -h <HOST> -P <PORT> -u root -p user > user.sql
  2. mysqldump -h <HOST> -P <PORT> -u root -p dex > dex.sql
  1. 数据库恢复命令:
  • 恢复 MongoDB 数据
  1. mongorestore -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存储路径
  • 恢复 MySQL 数据
  1. # 在 MySQL 中执行如下操作:
  2. mysql> drop database user;
  3. mysql> create database user;
  4. mysql> drop database dex;
  5. mysql> create database dex;
  6. # 命令行执行如下数据恢复操作:
  7. mysql -h <HOST> -P <PORT> -u root -p user < user.sql
  8. mysql -h <HOST> -P <PORT> -u root -p dex < dex.sql

升级操作

请根据不同的安装方式执行对应的升级步骤。

安装方式:All in One 一键安装模式基于现有 Kubernetes 安装

这两种安装方式下,均使用基于现有 Kubernetes 安装新中的脚本进行升级。

安装方式:基于 Helm 命令安装

该种安装方式下,执行以下步骤升级至 v1.17.0:

  1. 执行以下命令后查看 zadig.yaml 文件,如果文件中包含镜像信息,需要手动删除。
  1. helm get values <Release Name> -n <Zadig Namespace> > zadig.yaml
  1. 根据安装方式,执行命令升级。
  • 域名方式:
  1. export NAMESPACE=<Zadig 安装的 NAMESPACE>
  2. helm repo update
  3. helm upgrade -f zadig.yaml <release_name> koderover-chart/zadig --namespace ${NAMESPACE} --version=1.17.0
  • IP + PORT 方式:
  1. export NAMESPACE=<Zadig 安装的 NAMESPACE>
  2. export PORT=<30000 - 32767 任一端口,与初次安装时使用的端口不同即可>
  3. helm repo update
  4. helm upgrade -f zadig.yaml <release_name> koderover-chart/zadig --namespace ${NAMESPACE} \
  5. --set gloo.gatewayProxies.gatewayProxy.service.httpNodePort=${PORT} \
  6. --set gloo.gatewayProxies.gatewayProxy.service.type=NodePort --version=1.17.0