Cmd 'конвейера Jenkins не распознается как внутренняя или внешняя команда, работающая с программой или командным файлом
Я использую приведенный ниже конвейерный скрипт в jenkins, чтобы запустить сборку, а ведомый - это windows-машина. когда я запускаю сборку без нашего скрипта, он работает нормально, когда я использую pipelinescript для запуска jenkins build, он выдает ниже ошибки 'gradle' не распознается как внутренняя или внешняя команда, работающая программа или командный файл. Я добавил GRADlE_HOME в глобальной конфигурации, но проблемы все еще существуют
node('windows_slave') {
stage('API') {
git checkout([$class: 'GitSCM', branch: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'xxxxxxxxx', url: 'ssh://xxxxx@xxxxxxxxx/opt/git/qa/xxx.git']]])
try {
// gradle clean QATest
bat returnStatus: true, script: 'gradle clean QATest --info --continue'
// sh 'gradle clean QATest'
// bat "\"${GRADLE_HOME}\"\\bin\\gradle QATest"
// if (isUnix()) {
// sh "'${GRADLE_HOME}/bin' -Dgradle clean QATesty"
// } else {
// bat(/"${GRADLE_HOME}\bin" -Dgradle clean QATest/)
// }
} catch (err) {
}
}
}
1 ответ
У меня есть исправление, дающее абсолютный путь в работающем сценарии конвейера, т.е. Gradle_Home/bin gradle clean