v1.16.0 Release Notes

2022 年 12 月 30 日,Zadig 正式发布 v1.16.0。

功能列表

项目

  • 新增开发者仪表盘
  • 项目列表支持搜索
  • Helm 服务支持从通用代码源新建
  • K8s YAML 模板及 K8s YAML 项目服务变量增强

工作流

  • 工作流支持视图
  • 工作流支持多 PR 合并构建
  • 工作流支持中文名称
  • 工作流 IM 通知支持指定人(飞书&企业微信)
  • 自定义工作流代码变更触发分支选择支持正则表达式
  • 自定义工作流支持代码扫描
  • 自定义工作流支持镜像分发任务
  • 自定义工作流支持任务间参数传递
  • 自定义工作流支持任务间共享存储
  • 自定义工作流增加通过率和耗时分析数据
  • 自定义工作流增加准备环境阶段
  • 工作流列表增加执行信息

代码扫描

  • 代码扫描支持自定义构建镜像
  • 代码扫描链接支持跳转到对应 sonar 项目

系统

  • 增加国际化(i18n)支持
  • 快捷链接入口优化
  • 构建模板/Helm Chart 模板添加引用列表
  • AWS 对象存储集成添加区域配置
  • 镜像仓库选择全局支持搜索
  • 软件包管理版本更新

其他优化及问题修复

  • 32 个体验和交互细节优化
  • 工作流/服务日志支持自定义颜色
  • 工作流列表样式优化
  • 产品工作流执行工作流任务 openAPI 优化
  • 代码分支选择组件交互优化
  • 测试任务执行过程不做镜像仓库登录操作
  • K8s YAML 项目环境中相关报错信息放服务列表显示
  • 修复工作流/测试/代码扫描名称超过一定长度后无法执行的问题
  • 修复自定义工作流缓存路径渲染 $WORKSPACE 变量问题
  • 修复 commit msg 多行导致工作流执行失败问题
  • 优化前端字体引用加载,移除站外字体引用,提升页面加载速度

业务变更声明

新版本做如下内容调整,在老版本中配置的相应功能升级后不受影响:

  • 原腾讯云 EKS 不再支持,企业版支持腾讯云 TKE serverless并通过兼容性测试
  • 集群管理-任务调度(强制调度)、Dind 资源调度配置纳入企业版范畴
  • 项目-版本管理纳入企业版范畴
  • 服务配置/服务变量的 GitOps 自动更新或同步纳入企业版范畴

版本升级过程

注意

如果当前系统版本 < v1.15.0,请先升级到 v1.15.0,具体升级过程参见 v1.15.0 升级方式,再按照以下方式升级到 v1.16.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.16.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.16.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.16.0