0
我知道我可以將它寫入掛載的主機文件系統,該文件系統將在多個構建容器之間共享。但是我怎樣才能在像docker-plugin這樣的無人機插件容器中使用該文件呢?如何將值從一個構建容器傳輸到drone.io中的另一個CI管道
或者,有沒有其他方法可以在構建步驟之間傳遞任意數據?也許通過環境變量?
這是無人駕駛0.5
我知道我可以將它寫入掛載的主機文件系統,該文件系統將在多個構建容器之間共享。但是我怎樣才能在像docker-plugin這樣的無人機插件容器中使用該文件呢?如何將值從一個構建容器傳輸到drone.io中的另一個CI管道
或者,有沒有其他方法可以在構建步驟之間傳遞任意數據?也許通過環境變量?
這是無人駕駛0.5
只可能通過在文件系統共享的構建步驟之間的信息。環境變量不是一個選項,因爲沒有乾淨的方法可以在兄弟進程之間共享環境變量。
插件負責決定如何接受配置參數。通常參數作爲環境變量傳遞給插件,在yaml配置文件中定義。一些插件,特別是docker插件[1],能夠從文件中讀取參數。例如,docker插件將從倉庫的根目錄中的.tags
文件中讀取碼頭標籤,該文件可以在運行中生成。
pipeline:
build:
image: golang
commands:
- go build
- echo ${DRONE_COMMIT:0:8} > .tags
publish:
image: plugins/docker
repo: octocat/hello-world
並非所有插件都提供從文件讀取參數的選項。由插件作者決定是否包含此功能。如果插件沒有這種功能,或者它不是插件作者計劃實現的功能,那麼您總是可以分叉並調整插件以滿足您的確切需求。
不錯!這正是我所期待的 –