2017-08-02 100 views
1

我有一個現有的自由式詹金斯工作,我想通過管道運行。作業完成後,我想使用androidApkUpload將APK上傳到Google Play商店。問題是androidApkUpload步驟找不到我的APK。我認爲這是因爲我的管道工作在不同的工作區文件夾下,但我不確定。我嘗試了不同的路徑apkFilesPattern,但似乎沒有任何工作。我發現了一個錯誤:Jenkins管道與androidApkUpload找不到APK

No APK files matching the pattern: '../android-job/app/build/outputs/apk/*.apk

,或者如果我嘗試別的例如像一個絕對的文件路徑:

No APK files matching the pattern: '/jenkins/workspace/android-job/app/build/outputs/apk/*.apk

我試過的好幾個不同的組合文件模式,並沒有真正的工作,包括這個例子**/*.apk

我簡單的管道的一個例子:

//build 'android-app' 
node('android') { 
step([$class: 'ApkPublisher', apkFilesPattern: '**/*.apk', googleCredentialsId: 'google-play-upload', recentChangeList: [[language: 'en-GB', text: 'Test']], trackName: 'beta']) 
} 

構建需要很長時間,因此我現在已經取消註釋,但APK存在於該作業的工作區文件夾中。

有沒有人試過類似的設置?

+0

它看起來也是如此。如果操作系統是Windows,您可以嘗試使用一次反斜槓嗎? – atasoyh

+0

這是Linux。無論如何,通過將我的自由式構建遷移到管道中,找到了解決方法 – vkislicins

回答

0

我有完全相同的問題生成與吞嚥apks。我認爲apk安裝的確切路徑,它沒有工作,也沒有一般的例子(可能是因爲$ WORKSPACE下有幾個apks?誰知道) - 在這個thread之後,我找到了解決方案,我終於把

apkFilesPattern: '**/apk/android-release.apk'

但我guesss ** /編譯/ *。APK也應該工作。