如何通过Jenkins文件将文件夹中的所有内容部署到具有类似文件夹结构的Artifactory中

kse8i1jr  于 2023-04-20  发布在  Jenkins
关注(0)|答案(1)|浏览(239)

我们正在使用Artifactory来存储我们的文件。所有的文件和文件夹下的位置${WORKSPACE}/build/processed/webApps/epmapp/*应复制到下面提到的目标位置。
但只复制文件。

stage('Deploy Artifacts') 
        {
            def targetLocation="epmpbcs-release-local/Platform/PBCSVB/${BRANCH_NAME}/latest/"
            def targetLocationBuildNumber="epmpbcs-release/PBCSVB/${BRANCH_NAME}/${env.BUILD_NUMBER}/"
            stdout = sh(script: 'rm -fv ${WORKSPACE}/buildversion.txt',  returnStdout: true)
            println("Delete buildversion.txt stdout ################ " + stdout + " ####################")
 
            def buildversion = new File("${WORKSPACE}/buildversion.txt")
//            def w = buildversion.newWriter() 
            buildversion<<"PBCSVB Branch:${BRANCH_NAME}, Build Number:${BUILD_NUMBER}"
 
//
            def uploadSpec = """{
                "files": [
                        {
                          "pattern": "${WORKSPACE}/build/processed/webApps/epmapp/*",
                          "target" : "$targetLocation"
                        }
                 ]
                }"""

我怎样才能让文件夹也复制?

tgabmvqs

tgabmvqs1#

您不能同时上传文件和文件夹。这是上传工件的一部分的限制。您需要在上传工件之前添加一个任务。添加一个步骤,以创建.zip或.gzp格式的“epmapp”文件夹,然后上传。

def uploadSpec = """{
            "files": [
                    {
                      "pattern": "epmapp.zip",
                      "target" : "$targetLocation",
                      "recursive": "false"
                    }
             ]
            }"""

使用此link了解更多信息。

相关问题