问题标签 [gitlab-ci]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
188 浏览

php - 如何防止解析错误停止linux命令执行链

我们有一个自动运行测试的 CI 服务器。一切都很好,除了今天早上一个构建被推送,当“phpunit”运行时它遇到了一些错误的 php 语法,它退出了下面的执行链,所以它artisan ci:cleanup永远不会运行。

GitLab-CI 的日志输出的尾部如下所示,表明此解析错误阻止了清理运行。

我宁愿避免编写 bash 文件或其他东西来处理执行/错误,但我仍然需要像往常一样在 GitLab-CI 的日志中显示输出。

在不阻止清理运行的情况下,我应该如何最好地处理这种终止错误?

0 投票
2 回答
3889 浏览

python - 在 gitlab ci 上运行 django 测试

我在 django 1.4 中有项目,我需要在 contious 集成系统(GitLab 6.8.1 和 Gitlab CI 4.3)中运行 django 测试。

Gitlab Runner 已安装在带有项目的服务器上。

当我运行时:

cd project/app/ && ./runtest.sh test some_app

我得到:

Traceback (most recent call last): File "manage.py", line 2, in <module> from django.core.management import execute_manager ImportError: No module named django.core.management

我如何运行测试?

0 投票
6 回答
12792 浏览

nginx - 使用 gitlab 的 nginx 服务另一个应用程序

您好,我已经使用此
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md#installation安装了 Gitlab

现在我想使用 nginx 来提供除 gitlab 应用程序以外的其他内容我该怎么做

  • 我需要修改的配置文件在哪里
  • 如何指向 /var/www 之类的目录,以便 nginx 知道这是另一个应用程序的根目录。

更新(忘了提我在 Red Hat 6.5 下运行,欢迎使用 Debian/Ubuntu 解决方案)

0 投票
1 回答
1289 浏览

token - Gitlab CI 无法克隆 gitlab repo

有没有人有同样的问题?

我将 Gitlab ci 与 Gitlab 连接起来。测试运行时,Gitlab CI 无法克隆 Gitlabs 存储库。得到这个错误:

0 投票
1 回答
942 浏览

testing - 生成文件测试失败后,Gitlab-CI 运行程序挂起

我正在使用 Gitlab-CI 进行构建测试。我有一个非常简单的测试,它将测试安装/构建的输出与已知输出进行比较。我把测试放在一个makefile中。

Makefile 条目如下所示:

当差异通过时,返回退出代码 0,如果差异显示文件存在差异,则返回退出代码 1。

我试过的:

  1. 无论结果如何,从任何 shell运行make test都会运行测试并退出diff
  2. make test从 shell 运行作为 运行gitlab_ci_runner测试并且无论diff结果如何都存在
  3. 从 Gitlab-CI 运行时,diff退出状态为 0,构建返回成功

问题:

  • 在 Gitlab-CI 中运行且diff退出状态为非 0 时,构建挂起。
  • 构建屏幕上的输出是 diff 的输出,最后一行是预期的错误: make: *** [test] Error 1
  • 之后,循环符号保持亮起,运行器不会因构建失败而退出。

有任何想法吗?我认为这可能与 Makefiles 有关,但如果 Make 以错误 1 ​​退出以进行任何其他测试,Gitlab-CI 将以失败状态退出。我只能看到它发生在差异的输出上。

谢谢!

0 投票
1 回答
3466 浏览

gitlab - Gitlab api在合并请求中获取提交

从 GITLAB API 文档中,我可以获取合并请求详细信息,从中可以获取源项目和分支。

获取分支中提交列表的 api,列出该分支中的所有提交。

有没有办法通过 API 获取特定于合并请求的提交列表。?

目标是只知道合并请求中的新提交。

谢谢你。

0 投票
2 回答
5430 浏览

android - 使用 Gitlab CI 生成 Android 构建

我刚刚安装了 Gitlab 作为我的项目的存储库,我想利用他们的 Gitlab CI 系统。我想在每次提交后自动生成分发和调试 Apk。我用谷歌搜索,但没有找到任何教程或类似案例。如果有人能以某种方式指导我,那就太好了。

谢谢!

0 投票
1 回答
6251 浏览

git - 使用 GitLab CI 持续交付

我一直在思考如何使用 GitLab CI 实现持续交付?

我为 CD 阅读的每个解决方案都依赖于多步管道(例如 Jenkins),或者是侦听 webhook 并提供自己的部署接口的自定义应用程序(例如,GitHub 的 HuBot + Heaven + Janky)。

如果我们只关心在 Master 分支上执行 CD,并且我们的测试套件/部署步骤非常快,您可以简单地将其包含在 GitLab CI 运行的 shell 脚本中......但是,如果您的测试套件不快?或者您的部署可能需要几分钟来下载软件包等?然后你的 CI Runner 正忙着做一些事情。

我能想出的最佳解决方案是:

  1. 创建一个接受来自 GitLab 和 GitLab CI 的 Web Hooks 的 Web 应用程序,并跟踪所做的每个单独的提交和构建状态。
  2. 启动自己的自定义运行程序,尝试为收到的每个通过的 webhook 执行交付到暂存站点。应用程序可以使用,例如,fabistrano,以便于部署/回滚。
  3. 收听合并请求以合并到通过所有测试的 GitLab 中被接受的 master。

有什么想法吗?有人用 GitLab CI 实现过 CD 吗?

0 投票
1 回答
4718 浏览

gitlab - gitlab 6.0.2 Jenkins CI 服务未显示

我有一个 gitlab 服务器版本“Gitlab 6.0.2 10b0b8f”。我想连接“Jenkins CI”以进行构建。为此,我正在关注-http: //doc.gitlab.com/ee/integration/jenkins.html。但是在项目服务中,我看不到“Jenkins CI”。只有我能看到“Gitlab CI”。你能帮我么。任何例子都会被应用。

0 投票
11 回答
43677 浏览

ssh - 让 GitLab CI 克隆私有存储库

我设置了 GitLab 和 GitLab CI 来托管和测试我的一些私人存储库。对于这个系统下的作曲家模块,我设置了 Satis 来解析我的私有包。

显然,这些私有包需要一个 ssh 密钥来克隆它们,而我在终端中有这个工作 - 我可以运行 composer install 并获取这些包,只要我ssh-add在 shell 中添加了密钥。

但是,当在 GitLab CI 中运行我的测试时,如果项目具有这些依赖项中的任何一个,则测试将无法完成,因为我的 GitLab 实例需要身份验证才能获取 deps(显然),并且测试失败并显示Host key verification failed.

我的问题是如何设置它,以便当运行者运行测试时,它可以在没有密码的情况下向 gitlab 进行身份验证?我已经尝试在我的 runners 文件夹中放置一个无密码的 ssh-key ~/.ssh,但是构建甚至不会添加密钥,“eval ssh-agent -s”后跟 ssh-add 似乎无法说明代理没有运行......