工作区去定义了所有工作流步骤共享的容器空间和目录。默认的工作区的目录和仓库 URL 相匹配,如下面的例子所示:
/drone/src/github.com/octocat/hello-world
可以使用 Yaml 文件的 workspace
区块来自定义工作区。
+workspace:
+ base: /go
+ path: src/github.com/octocat/hello-world
pipeline:
build:
image: golang:latest
commands:
- go get
- go test
base 属性定义了所有工作流步骤共享的基础容器空间。基础容器空间保证了代码、依赖和编译的二进制文件能够在各步骤间持久化和共享。
workspace:
+ base: /go
path: src/github.com/octocat/hello-world
pipeline:
deps:
image: golang:latest
commands:
- go get
- go test
build:
image: node:latest
commands:
- go build
上面的步骤将和下面的 docker 命令类似:
docker volume create my-named-volume
docker run --volume=my-named-volume:/go golang:latest
docker run --volume=my-named-volume:/go node:latest
path 属性定义了构建的工作目录。这是代码被克隆到的目录,也将是每一个构建步骤的默认工作目录。这个路径必须是基于 base 路径的相对路径。
workspace:
base: /go
+ path: src/github.com/octocat/hello-world
git clone https://github.com/octocat/hello-world \
/go/src/github.com/octocat/hello-world
遇到了问题?
我们非常乐意帮助您解决遇到的问题。 您可以先搜索对应文档,查看一些常见的问题。 您还可以地在 discourse 和其他开发者一起交流。