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



我们正在使用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"
                        }
                 ]
                }"""

如何也复制文件夹?

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

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

使用此链接了解更多信息。

最新更新