使用 Windows Runner 上传工件
Upload artifacts with the Windows Runner
我们使用来自 Gitlab-ci 的官方cial 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? 这是怎么回事?
目前不支持从 windows shell cmd
和 powershell
上传工件。经过一段时间的挖掘,我发现根据 gitlab-ci-multi-runner\shells\bash.go bash
确实支持它。
对我来说可行的解决方案是:
- 安装 Bash(已包含在 Git-SCM 中)
- 将 bash 目录 (
C:\Program Files (x86)\Git\bin
) 添加到您的 PATH
- 如果您在
cmd
中键入 bash
,请确保 bash 启动
找到你的 config.toml 和 modify/add:
executor = "shell"
shell = "bash"
重新启动您的 git-运行ner 服务
- 确保您的构建脚本符合 bash-syntax
(例如 运行 windows 来自 bash 和 cmd.exe /c "dir"
的命令)
我们使用来自 Gitlab-ci 的官方cial 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? 这是怎么回事?
目前不支持从 windows shell cmd
和 powershell
上传工件。经过一段时间的挖掘,我发现根据 gitlab-ci-multi-runner\shells\bash.go bash
确实支持它。
对我来说可行的解决方案是:
- 安装 Bash(已包含在 Git-SCM 中)
- 将 bash 目录 (
C:\Program Files (x86)\Git\bin
) 添加到您的PATH
- 如果您在
cmd
中键入 找到你的 config.toml 和 modify/add:
executor = "shell" shell = "bash"
重新启动您的 git-运行ner 服务
- 确保您的构建脚本符合 bash-syntax
(例如 运行 windows 来自 bash 和cmd.exe /c "dir"
的命令)
bash
,请确保 bash 启动