「迁移急救包」全云平台无缝迁移云效实操手册

作者:天彤、怀虎

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 配置进行泛化,在其中抽取了下面几个变量:

  1. Codeup 的服务连接的 ID

  2. 代码库路径

  3. ACR 的服务连接的 ID

  4. 镜像地址

调用云效的 API 流程为:

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

详细的批量创建脚本,可以添加文章底部的钉钉群获取。

云效支持多种部署方式(K8s 部署&主机部署),下面会给出一个 K8s 部署的例子,需要主机部署支持的开发者可进入钉群咨询。

K8S 部署:在流水线中进行 K8S 的部署非常简单,首先将 K8S 集群注册到流水线中:flow.aliyun.com/setting/kub...

创建阿里云 ACR 的服务连接。

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

在流水线中进行部署。

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

新建的流水线中只需要替换服务连接和仓库地址接口。

运行流水线,可以看到部署成功:

2.3 迁移制品仓库

云效制品仓库同时支持 Maven 库和 npm 库的迁移。

  1. Maven 库支持从 Nexus3 直接导入和本地文件批量上传;

  2. 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

coding.net/help/docs/c...

有哪几种方式支持需求导入_云效(Alibaba Cloud DevOps)-阿里云帮助中心

help.aliyun.com/zh/yunxiao/...

小结

欢迎大家加入全云平台迁移解决方案钉群,会有专业的技术团队为您提供详细的迁移方案。

我们将持续收集用户反馈,结合实际迁移案例不断优化指南,使内容更贴近真实需求。您在迁移过程中遇到的任何问题或总结的有效方法,都可能成为完善指南的重要依据。

祝各位顺利实现平台升级!期待阿里云云效助您打造更高效、更灵活的研发管理体系,开启智能化开发新体验。通过添加微信加入云效技术支持群咨询更多详情,微信号:lei1031509071。

相关推荐
斯普信专业组15 分钟前
k8s云原生rook-ceph pvc快照与恢复(上)
ceph·云原生·kubernetes
{⌐■_■}19 分钟前
【Kubernetes】Ingress的理解,netstat命令使用,对比理解service和ingress
云原生·容器·kubernetes
慌糖13 小时前
以微服务为基础搭建一套脚手架开始前的介绍
微服务·云原生·架构
37手游后端团队14 小时前
AI生成回流文案在《凡人修仙传:人界篇》应用
人工智能·后端·云原生
阿里云云原生15 小时前
LoongCollector:构建智能时代的数据采集新范式
云原生
曾经的三心草16 小时前
微服务的编程测评系统8-题库管理-竞赛管理
微服务·云原生·架构
阿里云云原生16 小时前
企业AI落地实践(三):使用 AI 网关解决 AI Agent 与 LLM 的交互挑战
云原生·llm