代码库、制品库等数据资产托管在内部办公网,公网不能访问,希望能够使用云效流水线进行 CICD 的编排和控制。
云效流水线可以托管用户的私网环境内的机器,并将构建任务调度到这些机器上,从而确保整个构建过程,和代码库和制品库的交互在私网环境下进行。
在主机上安装 Runner 程序, 该程序需要能够访问到云效流水线的服务端,以便从服务端获取任务,并在执行任务的过程中上报日志和状态。
进入云效 Flow 首页 ->
全局设置
->
构建集群管理
页面:
1)点击
新建构建集群
,填入基础信息之后,完成私有构建集群创建。
2)进入私有构建集群,点击
接入新节点
,可以选择不同的方式接入构建节点。支持阿里云 ECS 的 Linux 和 Windows 机器,或者自己的 Linux、Windows 及 macOS机器,可以按需选择。
-
如果是自己的机器,则可以选择
手动安装 Runner
方式添加机器。复制 Runner 安装命令,在机器上执行,即可安装好 Runner 程序,该程序会是以服务的形式常驻在机器上,详见 Runner 文档。
-
如果是阿里云 ECS 机器,则可以选择
阿里云 ECS
方式添加机器,流水线会调用云助手 API 自动安装好 Runner 程序。
3)创建好私有构建集群之后,就可以创建流水线,并选择这个构建集群执行流水线任务了。
假设你内网的代码托管地址是
https://myrepo.com
,为了在构建过程中和代码服务进行交互,需要配置代码库的服务连接。
云效 Flow 首页 ->
全局设置
->
服务连接管理
页面:
1)点击
新建服务连接
,并选择
通用 Git
服务连接类型。
2)点击
下一步
,点击新建
服务授权/证书
,输入账密信息。
3)点击
确定
完成证书创建,回到服务连接页面,该证书会自动被选中,点击
创建
即可完成服务连接的创建。
进入云效 Flow 首页 ->
我的流水线
页面,点击新建流水线,选择空模板,可以选择
可视化编排
或者
YAML 化编排
任一种方式创建流水线。下面以 YAML 化流水线编排为示例。
1)输入代码源配置 YAML,在 serviceConnection 关键字后面键入空格会进行自动补全,可以看到刚才创建的那个服务连接,并进行选择。
sources:
my_repo:
type: git
name: 我的代码源
endpoint: http://myrepo.com/ns/code-repo.git # 请换成你自己的代码仓库地址
branch: master
triggerEvents: push
certificate:
type: serviceConnection
serviceConnection: # 请替换成上述创建好的服务连接ID
2)输入构建配置 YAML,在 runsOn 关键字后面键入空格会进行自动补全,可以看到刚才创建的私有构建集群,并进行选择。
sources:
my_repo:
type: git
name: 我的代码源
endpoint: http://myrepo.com/ns/code-repo.git # 请换成你自己的代码仓库地址
branch: master
triggerEvents