使用 Windows Runner 上传工件
Posted
技术标签:
【中文标题】使用 Windows Runner 上传工件【英文标题】:Upload artifacts with the Windows Runner 【发布时间】:2016-03-07 00:09:26 【问题描述】:我们使用来自 Gitlab-ci 的官方 Windows runner。我们要上传工件。
我们在 yaml 文件中使用“artifact”关键字来定义需要上传的人工制品。当我们提交这是我们得到的消息:
gitlab-ci-multi-runner 0.7.2 (998cf5d)
WARNING: artifacts is not supported by selected executor and shell
Using Shell executor...
这是因为它使用了Windows machine? 这是怎么回事?
【问题讨论】:
他们显然正在努力:gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/52 【参考方案1】:目前不支持从 Windows shell cmd
和 powershell
上传工件。经过一段时间的挖掘,我发现根据gitlab-ci-multi-runner\shells\bash.gobash
确实支持它。
对我来说可行的解决方案是:
-
安装 Bash(已包含在 Git-SCM 中)
将 bash 目录 (
C:\Program Files (x86)\Git\bin
) 添加到您的 PATH
如果您在cmd
中键入bash
,请确保bash 启动
找到您的 config.toml 并修改/添加:
executor = "shell"
shell = "bash"
重启你的 git-runner 服务
确保您的构建脚本使用 bash 语法 (例如使用cmd.exe /c "dir"
从 bash 运行 windows 命令)
【讨论】:
这是一个关于如何使用当前版本上传人工制品的答案。 注意 Gitlab 文档 advise 使用来自 Cygwin 的 bash,而不是来自 Git for Windows。以上是关于使用 Windows Runner 上传工件的主要内容,如果未能解决你的问题,请参考以下文章