您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > 其他相关 > 正文

使用gitlab runner做持续集成测试

发表于:2017-08-05 作者:网络转载 来源:

  1、gitlab中的项目页,设置-Runners-Specific runners:获得URL和token,用于步骤3
  2、选择运行测试脚本或构建的主机,安装gitlab-ci-multi-runner
  a、gitlab 本机
  b、其他服务器主机
  c、docker
  官方文档 https://gitlab.com/gitlab-org/gitlab-ci-multi-runner#install-gitlab-runner
  3、步骤2中的环境,绑定gitlab仓库, $: sudo gitlab-ci-multi-runner register 输入项目中的URL和token,输入执行方式:如doker,shell等等

  4、gitlab项目的根目录,配置.gitlab-ci.yml
  https://docs.gitlab.com/ee/ci/yaml/README.html
  5、gitlab中push代码,自动执行.gitlab-ci.yml配置。
  6、.gitlab-ci.yml 举例,执行shell

  7、命令行
  $ sudo gitlab-ci-multi-runner list
  $ sudo gitlab-runner list
  $ sudo gitlab-runner verify
  $ sudo gitlab-runner unregister --name "name"
  $ sudo gitlab-runner register
  8、在docker中执行gitlabrunner的job
  a、在自己的私有docker image中执行:
  1)提交修改过的image到docker hub,比如https://hub.docker.com/r/huskar/unit/, 其tag:forphp
  2)在执行job的机器上执行 $sudo gitlab-runner register,其中的executor 输入:docker,docker image输入docker hub上的 :image名称:Tag

  流程:
  1、push代码,触发runner
  2、启动一个执行器,本地shell 或docker
  3、将项目该分支代码 pull到执行器
  4、执行项目根目录中的配置文件 .gitlab-ci.yml,如进行单元测试,打包,安卓真机测试
  5、输出执行结果
  遇到的问题:
  1、注册runner后在gitlab中可看到,但不能联通,在runner的机器上执行
  解决方法 $ gitlab-ci-multi-runner --debug run
  2、使用mac作为runner机器时,重启机器后,gitlabrunner不能自动启动运行
  解决方法,运行register时不要使用su do ,$ gitlab-runner register