无法使用Jenkins CloudFoundryPlugin将docker映像推送到Cloud Foundry

无法使用Jenkins CloudFoundryPlugin将docker映像推送到Cloud Foundry,docker,jenkins,jenkins-plugins,cloud-foundry,Docker,Jenkins,Jenkins Plugins,Cloud Foundry,我正在尝试使用CloudFoundry插件将docker注册表映像推送到CloudFoundry。应用程序在转移步骤中失败 我在manifest.yml文件中添加了注册表url和用户名,并在cf文档中提到的环境变量中提供了密码 Jenkins文件片段: stage ('Dev_Deployment') { steps{ sh 'export CF_DOCKER_PASSWORD=$USER_CREDENTIALS_PSW'

我正在尝试使用CloudFoundry插件将docker注册表映像推送到CloudFoundry。应用程序在转移步骤中失败

我在manifest.yml文件中添加了注册表url和用户名,并在cf文档中提到的环境变量中提供了密码

Jenkins文件片段:

stage ('Dev_Deployment') {
            steps{
                sh 'export CF_DOCKER_PASSWORD=$USER_CREDENTIALS_PSW'
                pushToCloudFoundry(
                  target: 'https://api.sys.dev.example.io',
                  credentialsId: 'pcfcreds',
                  organization: 'pcforg',
                  cloudSpace: 'pcfspace',
                  manifestChoice: [manifestFile: 'manifest.yml']
                )
              }
          }
manifest.yml代码:

---
applications:
- name: App-1
  memory: 1G
  instances: 1
  host: App-1
  disk_quota: 1G
  docker:
    image: registry-dev.apps.dev.example.io/app-1
    username: user1
我希望docker映像作为应用程序部署在PCF中

但我在应用程序转移中遇到了错误

java.lang.IllegalStateException:应用程序SpringDemo-3在转移期间失败

实际上,它并不认为它是码头工人的部署。相反,它将其视为正常的应用程序部署,并搜索构建包

2019-07-08T19:23:14.80+0530[STG/0]错误所有构建包均未检测到兼容的应用程序

是否有任何示例管道将安全注册表中的docker映像推送到CloudFoundry?

我已经查看了(直到版本2.3.1),但我没有找到任何可以将docker映像推送到CloudFoundry的功能

因此,我发现下面的代码片段是一个解决方法,其中CF CLI用于推送docker映像,而不是使用Cloud Foundry插件

stage ('Dev_Deployment') {
    steps{
        sh 'pwd'
        sh 'which cf'
        sh 'cf --version'
        sh 'cf login -a $CF_API_ENDPOINT -u $CF_CREDENTIALS_USER -p $CF_CREDENTIALS_PASSWORD'
        sh 'cf t -o $CF_ORG -s $CF_SPACE'
        sh 'CF_DOCKER_PASSWORD=$DOCKER_CREDENTIALS_PASSWORD cf push'
    }
}
我已经浏览了(直到版本2.3.1),我没有发现任何可以将docker映像推送到Cloud Foundry的功能

因此,我发现下面的代码片段是一个解决方法,其中CF CLI用于推送docker映像,而不是使用Cloud Foundry插件

stage ('Dev_Deployment') {
    steps{
        sh 'pwd'
        sh 'which cf'
        sh 'cf --version'
        sh 'cf login -a $CF_API_ENDPOINT -u $CF_CREDENTIALS_USER -p $CF_CREDENTIALS_PASSWORD'
        sh 'cf t -o $CF_ORG -s $CF_SPACE'
        sh 'CF_DOCKER_PASSWORD=$DOCKER_CREDENTIALS_PASSWORD cf push'
    }
}