我放在一起詹金斯管道作業,將採取文件參數。我可以觸發這個工作並將它指向一個文件,但是我無法找到文件結束的地方(在普通的自由式工作中它將在工作區中)。詹金斯管道作業與文件參數
上傳的文件去哪了?或者文件參數目前不適用於管道?
我放在一起詹金斯管道作業,將採取文件參數。我可以觸發這個工作並將它指向一個文件,但是我無法找到文件結束的地方(在普通的自由式工作中它將在工作區中)。詹金斯管道作業與文件參數
上傳的文件去哪了?或者文件參數目前不適用於管道?
目前存在管道和文件參數 (https://issues.jenkins-ci.org/browse/JENKINS-27413)的問題。
解決它通過以下方式:
node {
deleteDir()
stage("upload") {
def inputFile = input message: 'Upload file', parameters: [file(name: 'data.zip')]
new hudson.FilePath(new File("$workspace/data.zip")).copyFrom(inputFile)
inputFile.delete()
}
stage("checkout") {
echo fileExists('data.zip').toString()
}
}
我知道,因爲管道被中斷的上傳的,但它的工作原理該解決方案是不是漂亮。
此外,該「的copyfrom」是必要的,因爲輸入存儲在作業目錄中,而不是在工作區中的「data.zip」(不知道爲什麼)
我試着使用@提供的解決方案Christoph Forster,但輸入文件並未被複制到工作區的任何位置。 所以我用的解決方法,因爲在 https://bitbucket.org/janvrany/jenkins-27413-workaround-library/src/6b7dada8ea37?at=default
庫提供了一個新的庫提供 - unstashParam - 即保存文件構建參數轉換成一個工作區。適用於文本和yaml文件。
couldn不能可靠地使用此解決方法 - 隨機文件不會複製到工作區。 –
'java.nio.file.NoSuchFileException:詹金斯/工作區/工作/ data.zip' –