标签: gitlab-ci-runner

通过CI runner将文件推送到gitlab-ci

我正在使用gitlab CI runner来测试我的代码并生成一些文件.我只是想通过CI runner将生成的文件推送到gitlab存储库.有没有办法做到这一点?

gitlab gitlab-ci gitlab-ci-runner

19
推荐指数
4
解决办法
1万
查看次数

19
推荐指数
2
解决办法
4837
查看次数

如何避免在Gitlab CI中重新安装每个作业的依赖项

我正在使用Gitlab CI 8.0和gitlab-ci-multi-runner 0.6.0.我有一个.gitlab-ci.yml类似于以下的文件:

before_script:
  - npm install

server_tests:
  script: mocha

client_tests:
  script: karma start karma.conf.js
Run Code Online (Sandbox Code Playgroud)

这有效,但这意味着在每个测试作业之前独立安装依赖项.对于具有许多依赖项的大型项目,这会增加相当大的开销.

在Jenkins中,我将使用一个作业来安装依赖项,然后对它们进行TAR,然后创建一个构建工件,然后将其复制到下游作业.类似的东西可以与Gitlab CI一起使用吗?有推荐的方法吗?

gitlab-ci gitlab-ci-runner

18
推荐指数
4
解决办法
1万
查看次数

如何通过SSH为Gitlab运行器启用克隆?

我在Windows Gitlab运行器上通过HTTP克隆大型存储库时遇到了一些麻烦.我已经尝试了几种方法来做浅克隆或禁用克隆压缩.仍然没有运气.

通过SSH克隆相同的存储库非常适合作为临时解决方案,我希望在我们的Gitlab CI过程中实现这一点.

现在问题就在于我不知道如何使用SSH作为gitlab-multi-runner的克隆方法.它似乎只是使用HTTP作为默认值,我唯一关于克隆的选项是它是完成克隆还是获取.

CI/CD显示

有人可以解释我如何通过SSH而不是HTTP来使克隆/获取工作在跑步者身上?

Gitlab版本:GitLab社区版8.10.7

谢谢!

git ssh gitlab gitlab-ci gitlab-ci-runner

18
推荐指数
2
解决办法
1万
查看次数

GitLab Runner 突然无法使用 Docker Machine 和 AWS Autoscaling 运行作业

我使用 GitLab Runner 在 AWS EC2 Spot 实例上运行 CI 作业,并使用 Docker Machine 的自动缩放功能。

突然,今天 GitLab CI 无法运行作业,并向我显示了我想要启动的所有作业的以下作业输出:

Running with gitlab-runner 14.9.1 (f188edd7)
  on AWS EC2 runner ...
Preparing the "docker+machine" executor
10:05
ERROR: Preparation failed: exit status 1
Will be retried in 3s ...
ERROR: Preparation failed: exit status 1
Will be retried in 3s ...
ERROR: Preparation failed: exit status 1
Will be retried in 3s ...
ERROR: Job failed (system failure): exit status 1
Run Code Online (Sandbox Code Playgroud)

我在 AWS 控制台中看到 EC2 …

amazon-web-services docker gitlab-ci gitlab-ci-runner docker-machine

18
推荐指数
1
解决办法
6810
查看次数

travis-ci和gitlab-ci如何比较?

据我所知,主要区别在于gitlab-ci是opensource(你可以在自己的服务器上安装)而travis-ci则不是.

那么后者总是基于云/服务.它对于开源项目是免费的.

但是GitLab.com(公司,而不是软件)也有一个你不需要安装的云版本:ci.gitlab.com.我猜这个版本只能用于你的Gitlab帐户中发布的公共存储库.

但是,那里几乎没有关于以这种方式运行GitLab CI的文档.我找到的大多数文档都是关于安装GitLab CI服务器或跑步者.但是如何配置ci.gitlab.com的跑步者?他们有什么操作系统?我可以拥有Windows/Mac跑步者吗?(该软件显然支持这些操作系统,但未指定ci.gitlab.com服务提供的跑步者.)

travis-ci gitlab-ci gitlab-ci-runner

17
推荐指数
1
解决办法
1万
查看次数

GitLab.com CI共享Android项目的跑步者

我想在我的Android应用程序gradle项目中使用GitLab CI系统.项目存储库托管在GitLab.com上,所以我想使用Gitlab Inc. 提供的一个共享运行器.
虽然官方教程提供了NodeJS 项目运行器配置的示例,并且还有用于Ruby项目的共享运行器,I找不到任何支持Android应用程序的示例甚至是跑步者.

  • 是否有一个由GitLab.com提供的共享运行器,它支持开箱即用的Android项目(通过指定image: android:4.2.2或类似的东西)?
  • 有没有办法配置GitLab.com提供的现有共享运行器来支持Android项目(通过修改.gitlab-ci.yml文件)?

android gitlab android-gradle-plugin gitlab-ci gitlab-ci-runner

17
推荐指数
2
解决办法
5184
查看次数

在合并请求中触发gitlab-ci中的作业

只有在合并请求时才能从gitlab-ci运行一个工作?现在,我们有一个重型测试的大型单一项目,但我们只想在合并到分支主机之前运行测试.

gitlab-ci gitlab-ci-runner

17
推荐指数
2
解决办法
1万
查看次数

无法从gitlab-ci.yml推送

与我的同事一起,我们致力于开发一个每天变得越来越重要的C++库.我们已经通过gitlab-ci.yml文件构建了持续集成实用程序,让我们:

  • 在调试模式下构建和测试
  • 在发布模式下构建和测试
  • 使用Valgrind执行内存泄漏等安全检查,并检查我们的库中是否有任何我们不想要的清晰符号
  • 生成文档

各种让我们选择GitLab的东西!

我们希望对整个库进行概述,并将基准推送到一个单独的项目中.我们已经使用SSH密钥方法完成了类似的文档,但是这次我们想避免这种情况.

我们尝试了这样的脚本:

test_ci_push:
  tags:
    - linux
    - shell
    - light
  stage: profiling
  allow_failure: false
  only:
    - new-benchmark-stage
  script:
    - git clone http://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.mycompany.home/developers/benchmarks.git &> /dev/null
    - cd benchmarks
    - touch test.dat
    - echo "This is a test" > test.dat
    - git config --global user.name "${GITLAB_USER_NAME}"
    - git config --global user.email "${GITLAB_USER_EMAIL}"
    - git add --all
    - git commit -m "GitLab Runner Push"
    - git push http://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.mycompany.home/developers/benchmarks.git HEAD:master
    - cd ..
Run Code Online (Sandbox Code Playgroud)

我们还尝试了一个基本 …

shell gitlab-ci gitlab-ci-runner

17
推荐指数
3
解决办法
1万
查看次数

Gitlab-CI runner:忽略自签名证书

gitlab-ci-multi-runner register
Run Code Online (Sandbox Code Playgroud)

给我

couldn't execute POST against https://xxxx/ci/api/v1/runners/register.json:
Post https://xxxx/ci/api/v1/runners/register.json: 
x509: cannot validate certificate for xxxx because it doesn't contain any IP SANs
Run Code Online (Sandbox Code Playgroud)

有没有办法禁用认证验证?

我正在使用Gitlab 8.13.1和gitlab-ci-multi-runner 1.11.2.

go gitlab gitlab-ci gitlab-ci-runner gitlab-8

16
推荐指数
6
解决办法
2万
查看次数