您是否提供了完整的 yaml?Do you want to continue? [Y/n] Abort
因为由于无人机在非交互模式下运行并且无法阻止并等待用户提示继续,因此示例 yaml 失败并显示错误消息。它不会因问题中指定的错误消息而失败。
因此,您需要-y
像这样运行命令:
pipeline:
build:
image: python:3.5.1-slim
commands:
- apt-get update
- apt-get install -y git-core
- which git
这导致我的日志中出现以下输出:
+ which git
/usr/bin/git
请注意,当无人机运行您的构建时,它会将命令转换为简单的 shell 脚本,启动容器,并执行 shell 脚本作为入口点。所以你的 yaml 会变成这样:
#!/bin/sh
set -e
apt-get update
apt-get install -y git-core
which get
这意味着您应该能够直接从 Docker 中的命令行测试您的命令,以查明看起来是图像还是命令问题:
$ docker run -t -i python:3.5.1-slim
# apt-get update && apt-get -y install git-core
# which git
很抱歉,这并不能完全回答问题,但我无法使用问题中提供的示例 yaml 重复相同的错误消息。如果您可以在问题中提供更多澄清,我可以回到这个答案并编辑回应