插件:发布者超过 ftp 为什么 ftp 发布者不知道管道环境中定义的全局变量

Plugin : Publisher over ftp Why Global Variable defined in pipeline environment do not known by ftpPublisher

全部!

我在管道代码 ftp 上遇到 Plugin Publisher 问题。我在管道代码之上的 "environment {APP_NAME='123'}" 中设置了 APP_NAME。但是变量 "APP_NAME" 不被 ftpPublisher 知道。

与 BUILD_NUMBER JOB_NAME 等变量相同 ftpPublisher。

有人可以帮助我吗?非常非常感谢!!!

我的 jenkins ver 是 2.164.2,发布在 ftp ver 是 1.15。



pipeline {

    environment {
       APP_NAME='123'
    }

   ......

   stages {

        stage('1. git pull') {

            steps {

                git(

                    branch: 'release',

                    credentialsId: '*****',

                    url : '*********',

                    changelog: true

                )

                sh "ls -lat"

            }

        }

        stage('2. build') {

            steps {

                sh 'cnpm install'

                sh 'bower install --allow-root'

                sh 'gulp goluk:pro'

                sh 'mkdir -p $APP_NAME target'

                sh 'cp -rf dist/* $APP_NAME/'

                sh 'tar jcvf $APP_NAME.tar.bz2 $APP_NAME/'

                sh 'ls -lh'

                sh 'mv $APP_NAME.tar.bz2 target/$APP_NAME.tar.bz2'

                sh 'rm -rf $APP_NAME'

            }

        }

        stage('3. send to ftp') {

            steps {

                sh 'printenv'

                ftpPublisher( 
                  masterNodeName: 'master' , 
                  paramPublish: [parameterName: ''],
                  alwaysPublishFromMaster: false, 
                  continueOnError: false, 
                  failOnError: false, 
                  publishers: [
                    [ configName: 'ftpServer_250', 
                      transfers: [
                        [ asciiMode: false, 
                          cleanRemote: false, 
                          excludes: '', 
                          flatten: false, 
                          makeEmptyDirs: true, 
                          noDefaultExcludes: false, 
                          patternSeparator: '[, ]+', 
                          remoteDirectory: '${APP_NAME}/$BUILD_NUMBER($BUILD_ID)', 
                          remoteDirectorySDF: false, 
                          removePrefix: '', 
                          sourceFiles: 'target/*.tar.bz2'
                        ]
                      ], 
                      usePromotionTimestamp: false, 
                      useWorkspaceInPromotion: false, 
                      verbose: true
                    ]
                   ]
                 )
            }

        }

    }

} 

改为remoteDirectory: "${APP_NAME}/$BUILD_NUMBER($BUILD_ID)"