gitlab-ci

411 阅读1分钟

1.触发 CI pipeline 的前置条件

  • 项目根目录添加.gitlab-ci.yml文件以定义pipeline(构建任务)
  • 配置项目所使用的 Runner

2. 安装Gitlab-Runner

官方安装说明

本次测试使用的是 centos,安装指令如下:

$ curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash

$ sudo yum install gitlab-runner

3. 注册 Runner,和项目绑定

到gitlab的项目的 Settings --> CI/CD --> Runners,获取 URL 和 token,然后可以注册Runner:

$ sudo gitlab-runner register

指令执行过程中会要求输入 URL和token,以及会选择 exector,此处选择 shell,完成后新注册的Runner会显示在Settings --> CI/CD --> Runners中。

在项目根目录添加 .gitlab-ci.yml文件,push到远端,则会自动触发pipeline(可从项目的CI/CD ---> Pipelines查看)。

4. 问题记录

1. Host key verification failed.

问题: 将Runner 安装在服务器 A上,想要使用scp 拷贝文件到 服务器B上,提示上述错误

gitlab-runner 安装过程中会自动创建 gitlab-runner 用户,实际也是使用此用户登录与服务器B通信,所以需要在 /home/gitlab-runner/.ssh/ 中生成密钥对,将公钥放到服务器B的 authorized_keys中。

若还是失败,需要在使用 gitlab-runner用户登录时手动ssh <服务器B用户@服务器B_Ip>,以将服务器B添加到 known_hosts