我試圖使用gradle release-plugin詹金斯爲什麼改變我的gra and,以及如何防止?
插件開始通過檢查,如果我的工作副本是乾淨的,所以只有正確版本的東西得到釋放「釋放」我的項目。
這工作得很好,在我的本地機器上。但是當我在詹金斯的工作中嘗試同樣的事情時,這個構建無法抱怨工作場所中的各種東西發生了變化。我決定了很多東西只是內部使用詹金斯並把它添加到gitignore
:
caches/
native/
wrapper/
但它也認爲gradlew
的改變:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':checkCommitNeeded'.
> You have uncommitted files:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
M gradlew
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
爲什麼那個文件怎麼辦詹金斯變化我阻止?
我覺得對詹金斯的工作進行以下設置可能是相關的:
Checkout/merge to local branch (optional)
設置爲主控。如果沒有這個設置,發佈插件抱怨不是一個分支,目前檢查Clean after checkout
,但選中/取消選中它並沒有區別Make gradlew executable
檢查,並至少對我來說聽起來像一個可能的原因,但取消選中它使構建faile因爲gradlew是不可執行的
我不認爲gradlew將被改變,除非你運行類型Wrapper的gradle任務。 – 2013-04-07 06:16:15
我有點同意。但我不知道是什麼導致包裝運行。它肯定不是我明確調用的任務,也不是包裝作爲依賴(至少這會是一個強大的奇怪依賴) – 2013-04-07 07:01:15
我用jenkins gradle插件創建了一個bug:https:// issues .jenkins-ci.org /瀏覽/ JENKINS-17505 – 2013-04-07 07:14:52