2012-10-04 53 views
8

我正在嘗試向Travis-CI添加祕密環境變量。 In the docs(「安全環境變量」),我發現下面的行做到這一點:將祕密環境變量添加到Travis CI

gem install travis 
travis encrypt -r travis-ci/travis-core MY_SECRET_ENV=super_secret 

如果我理解這一點正確,我必須用我自己的存儲庫的名稱替換travis-ci/travis-core,因爲加密只應適用於我庫。因此,存儲庫中必須有一個公鑰。是否有特殊的travis命令來添加此密鑰?這是如何工作的?或者這只是我的SSH公鑰?

當我運行下面的命令:

travis encrypt -r my_username/my_repo MY_SECRET_ENV=super_secret 

我得到以下錯誤:

There was an error while fetching public key, please check if you entered correct slug 
+2

剛剛發現[這個對travis-cli的請求](https://github.com/travis-ci/travis-cli/pull/2),看起來像這是一個已知的問題,並且很快就會被修復。 – Odi

+0

'travis encrypt'現在需要-r在存儲庫名稱前面。 (目前它不適用於我) – eckes

+0

Thx,我更新了問題。我剛剛更新了寶石(現在使用1.1.3版本),它的功能就像一個魅力。另請參閱[我對同一主題的另一個問題的回答](http://stackoverflow.com/a/12778315/549755)。 – Odi

回答

9

這是一個已知的問題。它已經有一個pull request on GitHub來修復它。 問題是獲取存儲庫公鑰的請求不起作用,因爲他們將API更改爲SSL。如果您不想等待合併請求,您可以簡單地使用change the source to use https instead of http

+1

我跳過驗證的SSL證書的補丁,否則它不適用於我 –

+0

我怎樣才能禁用SSL驗證(我不是一個紅寶石開發人員只有一個紅寶石用戶這種特殊情況)? – FunThomas424242

+0

你有沒有試過最新版本的Travis寶石?它應該現在工作:) – Odi