我正在研究Gitlab CI,但是得到一些问题与测试运行有关,因为下面的命令正在终端上工作并给出了完美的测试结果,但不知何故它现在在gitlab CI上运行。
下面是我的 .gitlab-ci.yml
stages:
- build
build_project:
stage: build
script:
- xcodebuild clean -workspace "First Container.xcworkspace" -scheme "First Container" | xcpretty
- xcodebuild test -workspace "First Container.xcworkspace" -scheme "First Container" -destination 'platform=iOS Simulator,name=iPhone 8 Plus,OS=11.3' | xcpretty
tags:
- ios_11-3
- xcode_9-3
- osx_10-13-4
以下命令在我的终端上工作:
$ xcodebuild test -workspace "First Container.xcworkspace" -scheme "First Container" -destination 'platform=iOS Simulator,name=iPhone 8 Plus,OS=11.3' | xcpretty
但是当我在CI上运行时它停滞不前,我的gitlab-runner没有启动iPhone模拟器并运行测试,构建正在运行
答案 0 :(得分:1)
在进行sudo
及以后的gitlab-runner register
时,请勿使用gitlab-runner start
。这样,它将以 user-mode (而不是 system-mode )运行。如果您已经使用过sudo
,请从GitLab Web UI上删除流道,然后重新注册。
答案 1 :(得分:0)
这是发生在我身上。原因是因为我在系统模式下运行了运行程序。
我更改为使用模式,并且在更改了所需文件夹中的权限后,它才起作用。
答案 2 :(得分:0)
我来晚了一点,但是总比没有好。
正如@acastano和@Nikolay所说,请确保您对gitlab-runner的注册是正确的。我的错误是,作为macOS用户,我遵循Linux而不是macOS注册。否则,请从GitLab.com Settings » CI / CD » Runners » Remove Runner
移除gitlab-runner并重新注册。
之后,请按照以下步骤更改您的.gitlab-ci.yml
:
stages:
- build
variables:
LC_ALL: "en_US.UTF-8"
build_project:
stage: build
script:
- xcodebuild clean -project testProject.xcodeproj -scheme testProject+ | xcpretty
- xcodebuild test -project testProject.xcodeproj -scheme testProject+ -destination 'platform=iOS Simulator,name=iPhone X,OS=12.1' | xcpretty -s
variables: LC_ALL: "en_US.UTF-8"
很重要,否则gitlab-runner会显示错误。现在启动gitlab-runner:
gitlab-runner start
gitlab-runner install
gitlab-runner run
确保您从不使用sudo
。最后检查您的Gitlab CI: