как использовать команду curl с подстановочным знаком для развертывания артефакта в артефакте jfrog - PullRequest
0 голосов
/ 28 мая 2018

Как использовать команду curl с символом подстановки для развертывания артефакта в репозитории Jfrog Artifactory.
Я пытаюсь использовать нижеприведенный скрипт конвейера Jenkins и получаю сообщение об ошибке.

    stage 'Deploy Aritfacts to Artifactory'

    withCredentials([usernameColonPassword(credentialsId: '<enter credentials ID>', variable: 'password')])     {
            sh "    curl -k -u $password -T ${WORKSPACE}/soureCode/integration/dan-0.0.1-SNAPSHOT.zip "https://<enter artifactory URL>/maven-prereleases-local/com/dan/     "

Когда вы запускаете сборку, она фактически генерирует артефакт dan-0.0.1-SNAPSHOT.zip, я пытаюсь использовать подстановочный знак для версии артефакта вместо использования версии с жестким кодом.но получил ошибку, как показано ниже

 curl: Can't open '/bld/workspace/demoPipeline/soureCode/integration/dan-*-SNAPSHOT.zip'!
    curl: try 'curl --help' or 'curl --manual' for more information
Finished: FAILURE                                        

Ответы [ 2 ]

0 голосов
/ 28 мая 2018

Вам разрешено использовать плагин Jenkins Artifactory?Это даст вам доступ к jfrog cli, позволяющему использовать uploadSpec's

def server = Artifactory.server 'artifactory'
def uploadSpec = """{
                      "files": [
                          {
                           "pattern": "${WORKSPACE}/soureCode/integration/dan-*-SNAPSHOT.zip",
                           "target": "maven-prereleases-local/com/dan/"
                          }
                      ]
                    }"""
server.upload(uploadSpec)
0 голосов
/ 28 мая 2018

К сожалению, curl не поддерживает подстановочный знак '*', поэтому вы можете найти файл / местоположение файла и затем передать его в свою команду curl

примерно так

curl -k -u $password -T $localFilePath $targetFolder/$fileName
...