创建runner
现在gitlab上设置CI, http://192.168.xxx.xxx/path/to/src/settings/ci_cd
,得到注册令牌。
然后创建runner:
docker run -d --name gitlab-runner --restart always \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
进入runner容器后,运行设置命令,按照向导设置完runner
gitlab-runner register
修改runner配置 vi /etc/gitlab-runner/config.toml 在 [runners.docker]下添加以后配置
pull_policy = "if-not-present"
创建测试用的镜像
gitlab通过docker执行测试时,需要从镜像生成一个容器。这个镜像需要满足测试程序的运行环境,我们先搭建这个运行环境。
基于ubuntu基础镜像,创建一个容器
docker run -dit ubuntu bash
进入容器后,安装基本的编译环境,保证能从gitlab上拉取代码、编译代码、并成功测试程序。
apt install build-essential git cmake
git clone xxxxxxxxx surcode
cd surcode
mkdir -p build
cd build
cmake ..
make
make test
当以上命令执行成功后,退出容器,将容器提交为镜像
docker commit c51ea85567e1 build-image
新建CI配置文件
在项目根目录下,新建配置文件 vi .gitlab-ci.yml
image: build-image
test:
script:
- mkdir -p build
- cd build
- cmake ..
- make
- make test
yaml文件的格式要求如下:
- 缩进要求为2个空格
-
、:
后面要求有一个空额
将此文件添加进版本库,提交到服务器
git add .gitlab-ci.yml
git commit -m "添加CI文件"
git push
查看CI结果
回到gitlab页面,查看CI执行结果
http://192.168.xxx.xxx/path/to/src/pipelines