2017-02-27 8 views
0

使用:詹金斯packagecloud插件 - 上傳一個包恩.deb文件的失敗,如果它已經存在

詹金斯:2.7.2

PackageCloud插件:1.11

上傳的神器使用Jenkins的PackageCloud PackageCloud Plugin

我的Jenkins工作創建了一個.deb包wfcli_5.0.10-2_amd64.deb,並且使用這個插件,我成功地將工件上傳到了我創建的私有PackageCloud存儲庫。

如果我重新運行作業,它會創建相同的包.deb文件名,並嘗試將工件上載到PackageCloud並給我以下消息並將構建標記爲失敗。

19:07:07 2017-02-27T19:07:07.812+0000 [org.jenkinsci.plugins.packagecloud.ArtifactPublisher] wfcli_5.0.10-2_amd64.deb: Sent 118303133 bytes 
19:07:07 2017-02-27T19:07:07.812+0000 [org.jenkinsci.plugins.packagecloud.ArtifactPublisher] wfcli_5.0.10-2_amd64.deb: Sent 118303135 bytes 
19:07:16 2017-02-27T19:07:16.081+0000 [org.jenkinsci.plugins.packagecloud.ArtifactPublisher] ERROR HTTP/1.1 422 Unprocessable Entity: 
19:07:16 {"filename":["has already been taken"]} 
19:07:16 2017-02-27T19:07:16.081+0000 [org.jenkinsci.plugins.packagecloud.ArtifactPublisher] Done 
19:07:16 Build step 'Push to packagecloud.io' changed build result to FAILURE 
19:07:16 Finished: FAILURE 

我該如何解決這個問題。如果在這個插件中有一個選項來忽略這個錯誤並且不會將構建標記爲失敗/覆蓋具有新時間戳的包文件,那將會很好。如果我正在構建的那個已經存在於PackageCloud中,我不想首先從PackageCloud檢查/刪除這個工件。我也無法爲包創建唯一的文件名,因爲如果我有超過1個包的同一個版本,那麼apt-get將不會喜歡它,因爲它遵循命名標準。

相關帖子:Jenkins PackageCloud upload - Missing artifact - fingerprint - No such file or directory

回答

0

詹金斯/ packagecloud插件這裏筆者 -

感謝這個反饋!我們的後端不支持任何類型的包的覆蓋,但我們的command line client有一個--skip-errors標誌,它將忽略任何錯誤並繼續上傳所有作爲參數給定的有效包。

我已經創建了一個內部票證來將此功能添加到jenkins插件。但是,在更新之前,我建議現在使用帶有--skip-errors標誌的命令行客戶端。

+0

謝謝,當然我會使用cmd行直到我們得到它。很高興有這個複選框/等。 –