2016-12-06 401 views
1

當運行我的Jenkins版本時,我需要在這種情況下更新帶有版本號的文件的內容。我遇到了一個名爲text-file-operations的插件,而不是寫一個全新的文件,我認爲更新會更好。用Jenkins和Groovy寫入文件

在這個例子中我有位於其只需要與我剛纔在這個過程中創建的變量更新版本號項目的根podspec文件。

spec.version    = '13.4.0' 

我只是需要將其轉換成

spec.version    = "${VERSION_NUMBER}" 

有沒有辦法做到這一點?

+0

所以文件與上次指定的內容已經存在?或者是你想要寫入文件的東西,來自環境變量的值? – MaTePe

+0

該文件已經存在,我想用環境變量 – Richlewis

回答

2

這是你想要的嗎?

Groovy + how to append text in file (new line)

f = new File('<filename>') 
f.append("spec.version    = ${VERSION_NUMBER}\n") 
+0

的值寫入該文件,這幾乎是我所需要的,似乎有問題找到文件和訪問它的權限..這會替換文本或只是附加到文件的結尾? – Richlewis

+0

它會追加它。這是另一個問題,權限和訪問,是的,運行腳本的實例(以及該用戶)必須能夠訪問該文件。 – MaTePe

+0

好的,謝謝,我可以用'spec.version = $ {VERSION_NUMBER} \ n'替換'spec.version ='原始值'' – Richlewis