我的.gitlab-ci.yml文件设置在典型的三个阶段:测试,构建,部署.在构建阶段,我运行一个命令来编译我的项目并将其放入tarball中.构建阶段似乎成功执行,因为它转移到部署阶段,但部署阶段然后说它找不到tarball.它在另一个目录中吗?这是怎么回事?谢谢.
我似乎无法在gitlab CI中的作业之间获得缓存或工件.我怀疑这与我的配置有关,但我不确定是什么.我正在使用以下docker-compose配置在docker中运行gitlab和gitlab-ci-multirunner.为简洁起见,我省略了数据库配置和一些环境变量:
version: '2'
services:
gitlab:
image: sameersbn/gitlab:8.5.1
links:
- redis:redisio
- postgresql:postgresql
ports:
- "10080:80"
- "10022:22"
environment:
...
volumes:
- gitlab_data:/home/git/data
gitlab-ci-runner:
restart: always
image: gitlab/gitlab-runner
volumes:
- gitlab_runner_config_data:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
- /etc/nginx/ssl/gitlab.crt:/etc/gitlab-runner/certs/ca.crt
- /etc/ssh:/ssh
links:
- gitlab:gitlab
redis:
...
postgresql:
...
volumes:
postgresql_data:
redis_data:
gitlab_data:
gitlab_runner_config_data:
Run Code Online (Sandbox Code Playgroud)
跑步者配置(config.toml)是:
concurrent = 1
[[runners]]
name = "docker"
url = <public gitlab url>/ci
token = <gitlab token>
tls-ca-file = "/etc/gitlab-runner/certs/ca.crt"
executor = "docker"
[runners.docker]
image = "docker-bash"
volumes = …Run Code Online (Sandbox Code Playgroud) 让我详细解释一下我的问题,请不要停止阅读... =)
我想知道如何在 gitlab 持续集成中为失败的构建生成工件,以查看构建生成的 html 报告。
我试过这样:
artifacts:
when: on_failure
paths:
- SmokeTestResults/
- package.json
Run Code Online (Sandbox Code Playgroud)
但不幸的是它不起作用。我正在使用 Gitlab 8.11.4 社区版。
我有一个ASP.NET MVC应用程序.我正在尝试使用Gitlab和Cake.net实现CI和CD.
为了更容易测试,我在我的机器上安装了Gitlab CI多跑步者.我将'shell'注册为执行人.
我试图从.gitlab-ci.yml执行Cake.net build.ps1文件,但它不执行脚本.当它到达build.ps1行时,它只打开带有记事本的文件然后它表示构建成功.
我错过了什么?为什么不执行脚本?
这是代码:
.gitlab-ci.yml
stages:
- build
build:
stage: build
script:
- build.ps1
only:
- develop
Run Code Online (Sandbox Code Playgroud)
Gitlab CI多跑者配置.toml
concurrent = 1
check_interval = 0
[[runners]]
name = "Development runner"
url = "https://gitlab.com/ci"
token = "***"
executor = "shell"
shell = "powershell"
Run Code Online (Sandbox Code Playgroud)
build.cake
#tool "nuget:?package=xunit.runner.console"
var target = Argument("target", "Default");
var configuration = Argument("configuration", "Release");
var version = Argument("releaseNumber", "");
var solution = "src/Pentrugatit.sln";
var binFolder = "src/Presentation/Nop.Web/bin/";
var pluginsFolder = "src/Presentation/Nop.Web/Plugins/";
Task("Clean")
.Does(() => { …Run Code Online (Sandbox Code Playgroud) 最近我的跑步者已经停止了,我不知道为什么?
我刚刚nodejs在服务器上升级,它确实发生了.
在这个问题之后,我尝试更新gitlab到最新版本并检查跑步者状态,但问题仍然存在,并且灰色图标标题显示:
Runner离线,最后一次联系是大约22小时前.
我该怎么办?
当我尝试时Retry stuck jobs,看到这个错误:
这项工作陷入困境,因为你没有在线任何活跃的跑步者,他们分配了这些标签:'我的标签'.
任何帮助表示赞赏!
我有一个Gitlab CI构建需要很长时间(10分钟+)来运行,每次我需要实验/进行更改时等待整个过程非常烦人.看起来肯定有一种方法可以在构建过程中访问某种shell并以交互方式运行命令,而不是将它们全部放在部署脚本中.
我知道可以在本地运行Gitlab CI 测试,但我似乎无法找到一种方法来访问正在运行的部署,即使在搜索文档之后也是如此.
我运气不好还是有办法手动控制这个冗长的构建?
我有一个 GitLab CI docker runner 来在我推送时执行我的自动化测试。我的一项测试需要 /etc/hosts 中的自定义条目。我不知道如何进入该文件。
这基本上是我的.gitlab-ci.yml文件的样子:
before_script:
- cat /etc/hosts # for debugging
- ... # install app dependencies
specs:
script:
- rspec # <- a test in here fails without the /etc/hosts entry
Run Code Online (Sandbox Code Playgroud)
我的所有测试都通过了,除了需要/etc/hosts该条目的测试。
假设我正在尝试将主机名myhost.local解析为 IPv4 地址XX.XX.XX.XX......
我尝试extra_hosts在 runner 配置上使用,但它似乎没有任何效果(从这里得到想法):
/etc/gitlab-runner/config.toml:
concurrent = 1
check_interval = 0
[[runners]]
name = "shell"
url = "https://mygitlabinstance.com/"
token = "THETOKEN"
executor = "shell"
[runners.cache]
[[runners]]
name …Run Code Online (Sandbox Code Playgroud) 考虑以下gilab-ci.yml脚本:
stages:
- build_for_ui_automation
- independent_job
variables:
LC_ALL: "en_US.UTF-8"
LANG: "en_US.UTF-8"
before_script:
- gem install bundler
- bundle install
build_for_ui_automation:
dependencies: []
stage: build_for_ui_automation
artifacts:
paths:
- fastlane/screenshots
- fastlane/logs
- fastlane/test_output
- fastlane/report.xml
script:
- bundle exec fastlane ui_automation
tags:
- ios
only:
- schedules
allow_failure: false
# This should be added and trigerred independently from "build_for_ui_automation"
independent_job:
dependencies: []
stage: independent_job
artifacts:
paths:
- fastlane/screenshots
- fastlane/logs
- fastlane/test_output
- fastlane/report.xml
script:
- bundle exec fastlane …Run Code Online (Sandbox Code Playgroud) gitlab-ci-runner ×10
gitlab-ci ×9
gitlab ×8
docker ×2
.net ×1
cakebuild ×1
gitlab-ce ×1
powershell ×1