如何为iOS项目设置GitLab CI

问题描述 投票:0回答:1

是否有关于如何使用Gitlab为iOS项目设置CI的最新且详细的教程?

我找到了很多教程(见下面的列表) - 但是自从这些教程完成后,GitLab似乎已经发生了变化。或者它们根本就没有详细说明,并且作为初学者对我进行了充分的解释。因此,我想知道是否有关于如何在Mac上为iOS设置Gitlab-CI的最准确的逐步说明?

特别是,我正在寻找一个使用Fastlane和Cocoapods依赖项的iOS项目的Gitlab-CI分步教程。

您可以在下面找到所有关于iOS项目的GitLab CI设置的教程和页面列表。

(我已经完成了所有这些 - 但对于我来说,作为CI的初学者,没有一个对我来说足够详细,或者,真的,2019年不再准确,GitLab今天代表的是什么)。

对于所有教程,我最终得到了Gitlab Pipeline错误。

这里列出了我的打开stackoverflow问题,每个问题都有自己的Gitlab CI试用版:

  • gitlab-runner register没有sudo:我最终得到“许可被拒绝”Stackoverflow Nr1
  • gitlab-runner register与docker:我最终得到了“root error”Stackoverflow Nr2
  • sudo gitlab-runner register与sudo:我最终得到“root error”Stackoverflow Nr 3

具体问题:

  1. 你可以使用Gitlab for iOS的“docker”吗? (或者必须是“shell”)
  2. 你需要在你的gitlab-runner注册中使用“sudo”这个词吗? (为什么或者为什么不)
  3. 你如何在你的Mac上设置权限,这样一旦你把所有的sudo单词都删掉,Gitlab CI就可以了?

以下是我发现的使用iOS项目解释Gitlab CI的教程列表:

ios continuous-integration gitlab cocoapods gitlab-ci
1个回答
1
投票

我找到的Here is the best tutorial on how to set up GitLab CI for an iOS-project

以下是为iOS项目带来成功的GitLab CI的发现:

  • 特别重要的是要认识到,对于iOS项目,您的GitLab CI必须注册为“shell”执行者(而不是“docker”)。
  • 此外,在处理gitlab-runner时,不允许使用任何sudo。 (没有任何sudo允许,因为Apple希望你与GitLab建立用户模式连接(并且没有像在docker中那样的系统模式)...

步骤如下:

gitlab-runner stop(如果以前的试验已经选择......)

gitlab-runner uninstall(如果以前的试验已经选择......)

gitlab-runner register \
  --non-interactive \
  --url "https://gitlab.com/" \
  --registration-token "ABCDEFG21sadfSAEGEAERE" \
  --description "MyApp runner with shell" \
  --tag-list ios \
  --executor "shell"

(随意使用不同的标签。此外,可以在GitLab页面下找到令牌 - >在设置 - > CI / CD - > Runner展开下)

gitlab-runner install

gitlab-runner start

此外,事实证明我的GitLab Pipeline上的“权限被拒绝”错误与GitLab本身无关 - 但是由于我的Mac上与我与gitlab-runner连接的Ruby版本不匹配。

我能够更新我的Ruby版本with the help of this post(即使用chruby)。关于如何在Mac上更新Ruby,还有其他可能性。

重要的是要了解GitLab要求您的Mac拥有稳定的Ruby环境。

© www.soinside.com 2019 - 2024. All rights reserved.