cURL не принимает второй аргумент в трубопроводе Jenkins - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть следующий пользовательский этап как часть одного развертывания.Это прекрасно работает, когда я выполняю как конвейерный скрипт в конвейерном задании.

Однако, когда я помещаю это в разделяемую библиотеку, он не принимает URL-адрес и завершается с ошибкой URL-адреса не найден.

 stage("Publish"){
     withCredentials([[$class:'UsernamePasswordMultiBinding', credentialsId: "credentials",
                 usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {

     def nexus_url = "https://myrepo.com/repository/kube-charts/charts/${env.APPNAME}/${env.PACKAGENM}"
     echo "url is ${nexus_url}"

     sh """
         cd ${env.APPNAME} ;
         curl -v -u ${USERNAME}:${PASSWORD} --upload-file index.yaml https://myrepo.com/repository/kube-charts/charts/${env.APPNAME}/index.yaml ;
         curl -v -u ${USERNAME}:${PASSWORD} --upload-file ${env.PACKAGENM}${nexus_url}
         """
     }
}

Также работает первый локон.Это второй завиток, где у меня есть аргументы, который завершается с ошибкой URL-адрес не найден.

Ошибка:

 + curl -v -u ****:**** --upload-file mypackage-1.3.tgz
   curl: no URL specified!
   curl: try 'curl --help' or 'curl --manual' for more information

1 Ответ

0 голосов
/ 26 сентября 2018

Вам не хватает пробела между $ {env.PACKAGENM} и $ {nexus_url}.Просто добавьте пробел, и он будет работать для вас.

...