我有一个(.drone.yml)测试文件,我想从它构建一个坞映像。根据文件,我必须用无人机来建造它。
我尝试了本教程( https://www.digitalocean.com/community/tutorials/how-to-perform-continuous-integration-testing-with-drone-io-on-coreos-and-docker )和其他几个教程,但都失败了。
有人能告诉我一个简单的方法来构建.drone.yml吗?谢谢
发布于 2016-08-20 23:58:13
请注意,这个答案适用于无人机0.5版
在成功完成构建时,可以使用Docker插件构建和发布Docker映像。将Docker插件作为步骤添加到.drone.yml文件的构建管道部分:
pipeline:
build:
image: golang
commands:
- go build
- go test
publish:
image: plugins/docker
repo: foo/bar在许多情况下,您将希望将此步骤的执行限制在某些分支上。这可以通过添加运行时条件来完成:
publish:
image: plugins/docker
repo: foo/bar
when:
branch: master为了让无人机发布,您需要向您的码头注册中心提供无人机凭据。这些凭据可以直接在yaml文件中声明,但通常不建议将这些值存储在yaml中的纯文本中:
publish:
image: plugins/docker
repo: foo/bar
username: johnsmith
password: pa55word
when:
branch: master您也可以使用内置的秘密存储提供凭据。秘密可以在每个存储库的基础上使用无人机命令行实用工具添加到秘密存储中:
export DRONE_SERVER=http://drone.server.address.com
export DRONE_TOKEN=...
drone secret add \
octocat/hello-world DOCKER_USERNAME johnsmith
drone secret add \
octocat/hello-world DOCKER_PASSWORD pa55word
drone sign octocat/hello-world然后在rutnime的yaml中插入秘密:
publish:
image: plugins/docker
repo: foo/bar
username: ${DOCKER_USERNAME}
password: ${DOCKER_PASSWORD}
when:
branch: masterhttps://stackoverflow.com/questions/38814244
复制相似问题