gitlab docker的自动化测试环境搭建

创建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

猜你喜欢

转载自my.oschina.net/yumm007/blog/1800320