0

我在用着:

Gitlab 7.11.2

导轨 3.2

快速 0.4.2

pronto-rubocop 0.4.4

而且我在设置脚本以在 git 提交上运行 Rubocop 时遇到问题。我想使用 Pronto,所以只检查更改。我没有使用 GitLab 来托管,所以当我到达 Pronto 设置的这一点时,我不确定如何继续,https ://github.com/mmozuras/pronto :

将 GITLAB_API_ENDPOINT 环境变量设置为您的 API 端点 URL。如果您使用 Gitlab.com 的托管服务,您的端点将是https://gitlab.com/api/v3。将 GITLAB_API_PRIVATE_TOKEN 环境变量设置为您的 Gitlab 私有令牌,您可以在帐户设置中找到该令牌。

然后运行它:

GITLAB_API_ENDPOINT="https://gitlab.com/api/v3" GITLAB_API_PRIVATE_TOKEN=token pronto run -f gitlab -c origin/master

我在哪里运行最后一个命令?:

GITLAB_API_ENDPOINT="https://gitlab.com/api/v3" GITLAB_API_PRIVATE_TOKEN=token pronto run -f gitlab -c origin/master

我创建了一个 .gitlab-ci.yml 文件,它有:

before_script:
  - ruby -v
  - gem install bundler --no-ri --no-rdoc
  - bundle --without postgres
rubocop:
  script: bundle exec pronto run --index

但我不知道这是否正在运行。

我也没有像 Pronto 页面上提到的那样设置 GitlabFormatter,当我尝试查找有关它的信息时,它对我来说是模糊且无益的。

有人可以指出我正确的方向吗?

谢谢!

**更新

所以我暂时放弃了使用 .gitlab-ci.yml 文件路径,因为 gitlab-ci 上的工作有效。我找出了端点并在服务器上安装了所有必要的要求,并且所有东西都正确捆绑。

在该过程的最后,我运行:

GITLAB_API_ENDPOINT="https://gitlab.com/api/v3" GITLAB_API_PRIVATE_TOKEN=token pronto run -f gitlab -c origin/master

但它生成的 URL 不正确,我无法在提交中添加评论:

https://gitlab.com/api/v3/projects/10022%2Fname%2Fapp-name/repository/commits/ad87234..asdf87923/comments

我得到一个

(Gitlab::Error::NotFound)

我看起来像是来自这部分代码:

 ../10022%2Fname%2Fapp-name/..

因为当我将它更改为时我可以看到 JSON

 ../name/app-name/..

关于如何调用正确的 URL 的任何想法?

4

1 回答 1

2

终于得到了这个工作。我在自己的服务器上托管 gitlab,只要您最后有“api/v3”,API 端点就会查找正确的项目。当您指定项目时,事情可能会出错,如果您看到类似以下的错误,您就会知道这一点:

"Project not found" --> don't specify the project

"Unauthorized" --> are you using the correct user token?

最后,即使在 pronto 运行之后它会告诉您发现了多少错误或留下了多少评论,它可能并不总是显示在提交上,但是如果您提交合并请求,rubocop 评论将显示出来。

如果存在样式指南违规,要让 gitlab 构建失败,请使用以下选项运行 pronto:

--exit-code
于 2015-09-29T18:02:48.573 回答