作者:天彤、怀虎
1. 背景
作为国内领先的一站式 DevOps 平台,阿里云云效提供三大核心能力:
▸ 代码全生命周期管理:基于 Git 的代码托管服务,支持大量级仓库并行操作
▸ 智能化交付流水线:CI/CD 全链路自动化,构建部署效率提升 50%+
▸ 精细化研发管控:支持 Scrum/看板等多模式项目管理,需求流转可视可控
此外,在安全体系构建方面支持代码安全防护、敏感信息检测、基于角色的权限管理做访问控制等功能,最大程度的保障了代码和应用的安全性。

2. 迁移方案
2.1 迁移代码仓库
云效 Codeup 是企业级代码管理平台,基于 Git 实现代码托管、评审、质量检测与安全扫描。支持权限控制、多层级项目管理,深度集成 CI/CD,提升研发协作效率。具备高可用、高安全性,适配多种开发场景,助力企业实现高效、稳定的软件交付。下面以 Coding 平台迁移为例,详细讲解如何从其他云平台无缝迁移到阿里云云效。
Codeup 提供了自动导入 Coding 代码库的功能,通过简单的配置,就可以将 Coding 代码库一键迁移到 Codeup。
第一步:在 Coding 创建访问令牌 Access Token
三方库导入时,通常需要输入账号和令牌进行鉴权,访问令牌即 Access Token,Access Token 通常在个人账号设置内进行管理和配置。

在 Coding 创建访问令牌
第二步:在云效输入令牌绑定 Coding 账号

从 Codeup 中导入 Coding 的代码仓库
第三步:选择代码库进行批量迁移
云效会展示 Coding 的所有代码库,选择需要迁移的代码库,即可完成一键迁移。

将 Coding 的代码仓库批量迁移到云效 Codeup
如何在Codeup迁移/导入三方代码库
help.aliyun.com/zh/yunxiao/...
Access Token访问令牌如何获取?
help.aliyun.com/zh/yunxiao/...
2.2 迁移流水线
为了批量在云效创建你的流水线配置,你可以创建一个流水线的 YAML 文件,并把各个流水线之间的不同之处变成占位符,通过编程方式针对各个流水线将占位符替换成实例的值,实例化成为一个完整的 YAML,然后调用创建流水线的 API。

第一步:创建一条在你的组织比较典型的流水线
下面以代码源使用阿里云云效 Codeup、镜像制品源使用阿里云 ACR 为例,创建一条流水线。
创建 Codeup 服务连接--->创建阿里云 ACR 的服务连接--->创建流水线。



第二步:使用 API 批量创建流水线
对上述的流水线 YAML 配置进行泛化,在其中抽取了下面几个变量:
-
Codeup 的服务连接的 ID
-
代码库路径
-
ACR 的服务连接的 ID
-
镜像地址
调用云效的 API 流程为:
- 创建个人 token,访问:account-devops.aliyun.com/settings/pe...

- 获取到当前企业的组织 ID:


详细的批量创建脚本,可以添加文章底部的钉钉群获取。
云效支持多种部署方式(K8s 部署&主机部署),下面会给出一个 K8s 部署的例子,需要主机部署支持的开发者可进入钉群咨询。
K8S 部署:在流水线中进行 K8S 的部署非常简单,首先将 K8S 集群注册到流水线中:flow.aliyun.com/setting/kub...

创建阿里云 ACR 的服务连接。
进行 K8S 部署,需要先将镜像推送到 registry 中,然后再在 K8S 集群中进行部署,这里使用阿里云 ACR 作为 registry。为了能够在运行时动态获取 ACR 的 registry 密码,需要按照如下方式建立服务连接。

在流水线中进行部署。
回到流水线中,我们选择一个主机部署的模板来新建流水线。

新建的流水线中只需要替换服务连接和仓库地址接口。
运行流水线,可以看到部署成功:

2.3 迁移制品仓库
云效制品仓库同时支持 Maven 库和 npm 库的迁移。
-
Maven 库支持从 Nexus3 直接导入和本地文件批量上传;
-
npm 库支持从 Nexus3 直接导入和从其他制品源导入;
云效提供了迁移工具,请先按照帮助文档的提示下载迁移工具,然后直接执行迁移命令,命令行中需要的参数可以在云效制品仓库页面上获取。迁移成功后即可在云效制品仓库页面看到包列表。

制品仓库的迁移说明页面

迁移成功后的 Maven 制品仓库

迁移成功后的云效 npm 仓库
如何将其他 NPM 仓库中的制品同步 packages 仓库?
help.aliyun.com/zh/yunxiao/...
2.4 迁移项目
项目和工作项的数据,可以通过导出再导入的方式进行迁移,
第一步:从 Coding 导出工作项
在 Coding 的项目中,选择工作项,导出到 Excel 文件;

第二步:配置工作项字段模板和工作流
在正式导入之前,需要在云效项目中配置工作项的字段模板和工作流,这样才能将 Coding 的工作项数据完整的迁移到云效,

云效工作项字段设置

云效工作流设置
第三步:将 Excel 导入云效项目
在云效的项目中导入工作项时,云效会首先提供一个 Excel 文件模板,这里需要将 Coding 的 Excel 文件内容复制到云效 Excel 文件,然后再进行导入。导入的进度可以在操作记录中查看,如果导入失败,云效也会提供日志文件展示失败原因,指导用户修改 Excel 文件,直至成功导入。

云效的工作项导入页面

云效工作项导入进度展示
导入&导出事项 - 什么是 DevOps? DevOps 介绍 | CODING DevOps
有哪几种方式支持需求导入_云效(Alibaba Cloud DevOps)-阿里云帮助中心
help.aliyun.com/zh/yunxiao/...
小结
欢迎大家加入全云平台迁移解决方案钉群,会有专业的技术团队为您提供详细的迁移方案。
我们将持续收集用户反馈,结合实际迁移案例不断优化指南,使内容更贴近真实需求。您在迁移过程中遇到的任何问题或总结的有效方法,都可能成为完善指南的重要依据。
祝各位顺利实现平台升级!期待阿里云云效助您打造更高效、更灵活的研发管理体系,开启智能化开发新体验。通过添加微信加入云效技术支持群咨询更多详情,微信号:lei1031509071。