Openshift管路失败并出现错误:#已经在执行中(运行中)

时间:2018-08-31 09:33:15

标签: openshift jenkins-pipeline

我的openshift jenkins管道在推出时最后一步失败了。 Openshift中的手动构建工作正常。它正在创建豆荚并终止其他豆荚。像使用管道时那样的接缝,它无法终止先前运行的吊舱。

当我手动终止正在运行的吊舱,然后启动管道时,它运行正常。

但是类似的管道在我们的测试环境中仍然可以正常工作。

... previous stages

stage('PROD: Deploying image') {
              when {
                expression {
                  openshift.withCluster() {
                    openshift.withProject(PROD_PROJECTSPACE) {
                      return !openshift.selector('dc', "${APPLICATION_NAME}").exists()
                    }
                  }
                }
              }
              steps {
                script {
                  openshift.withCluster() {
                    openshift.withProject(PROD_PROJECTSPACE) {
                      openshift.newApp("${APPLICATION_NAME}:latest --allow-missing-imagestream-tags").narrow('svc').expose("--port=3013");
                      def dc = openshift.selector("dc", "${APPLICATION_NAME}");
                        while (dc.object().spec.replicas != dc.object().status.availableReplicas) {
                          sleep 10
                        }
                        openshift.set("triggers", "dc/${APPLICATION_NAME}", "--manual")
                      }
                    }
                }
              }
            }

Failing in this stage

stage('PROD: Rollout') {
              steps {
                script {
                  openshift.withCluster() {
                    openshift.withProject(PROD_PROJECTSPACE) {
                      openshift.selector("dc", "${APPLICATION_NAME}").rollout().latest();
                    }
                  }
                }
              }

这是错误

ERROR: rollout:latest returned an error;
{reference={}, err=error: #15 is already in progress (Running)., verb=rollout, cmd=oc --server=https://172.30.0.1:443 --certificate-authority=/var/run/secrets/kubernetes.io/serviceaccount/ca.crt --namespace=global-prod --token=XXXXX rollout latest deploymentconfig/global-events , out=, status=1}

Finished: FAILURE  

您能给我指点什么吗,任何帮助都会有所帮助

1 个答案:

答案 0 :(得分:0)

就像在您的评论中一样。这可以起作用,删除所有触发器:

oc set triggers dc/${APPLICATION_NAME} --remove-all