我试图在用户触发作业期间接受“ .xlsx”文件输入,然后将其传递给python脚本,该脚本将读取xlsx文件的内容并根据需要进行处理。我面临的问题是我的python函数无法找到该文件。下面是我的管道的框架。
pipeline {
agent {
label 'docker'
}
options {
skipDefaultCheckout true
}
stages {
stage('Run container') {
agent {
docker {
image 'python:3.6'
label 'docker'
args '-u root:root'
}
}
steps{
script {
stage('Checkout from git'){
}
stage('Get file and create report') {
withCredentials([
usernamePassword(credentialsId: 'credentials-id', usernameVariable: 'Username', passwordVariable: 'Password')
]) {
sh '''
python3 path-to-file/generate-excel-reports.py --excel_file excel_input_file.xlsx
'''
}
}
}
}
post {
always {
sh "rm -rf *"
cleanWs()
}
}
}
}
}
我已按照以下屏幕截图配置了file参数 FileParamConfigOnJenkins python文件引发以下错误: “ FileNotFoundError:[错误2]没有这样的文件或目录:'excel_input_file.xlsx'”
还对Jenkins Pipeline上的fileExists步骤进行了快速检查,但也失败了。有人可以帮我理解为什么当我从桌面上使用选定的文件触发作业时,为什么在管道和python脚本中无法使用xlsx文件。就我阅读文档和所有其他文章而言,“文件参数”将输入文件放置在jenkins工作区中。