2017-10-06 55 views
0

我有泊塢窗配置任務,我需要在泊塢窗容器中使用竹變量的bash腳本來執行。如何了很多竹子變量傳遞給碼頭工人集裝箱?

有沒有辦法通過所有竹變量泊塢窗容器?

我有很多的竹子計劃在他們所以把所有的變量在容器環境變量很多不同的變量,是不是一種選擇。

當然,我可以將它們放到文件中的一個任務,從搬運工任務解析文件中的變量,但我希望能找到一個簡單的解決方案。

謝謝!

+0

如果我的回答能解決您的問題,請接受它。所以未來的訪客可以認出它。 – lifeisfoo

回答

0

可以使用env_file option using compose

web: 
    env_file: 
    - your-variables.env 

或使用docker run --env-file=your-variables.env ...

的ENV文件是一個簡單的鍵值文本文件:

0

什麼版本的竹子您使用的是?

有竹變量的一個問題是在竹子的某些版本泊塢窗容器,而是固定在竹6.1.0:

Unable to use variables in Container name field in Run docker task

解決方法:

  • 創建在Docker任務之前運行的腳本任務。
  • 運行命令,如

    echo "export sourcepath=$ini_source_path" > scriptname.sh 
    chmod +x scriptname.sh 
    

的泊塢任務將是映射$ {bamboo.working.directory}將多克爾\數據量。

所以剛創建的scriptname.sh腳本在Docker容器中可用。腳本將被執行,並將正確設置變量。

在這個崗位更多信息: How to send bamboo variables from Bamboo script to docker container?

0

我認爲唯一的辦法就是你提到那些已經 - 轉儲ENV變量早些時候在流動專用任務文件。也就是說,如果你做到這一點,像這樣:

#!/bin/bash 
env | grep ^bamboo_ > my_env_file 

注意嚴格的正則表達式防止傾銷變量,如PATH。

然後在碼頭工人的任務,在「其他參數」中添加以下

--env-file=my_env_file