1

この質問をする前に、Jenkins パイプラインのドキュメントと、さらに重要な問題 JENKINS-38442 を調べてみました。

次のようなパイプラインを作成したいと思います。 変更されたスクリーンショット

基本的には、次のステージ自体ではなく、別のステージで並列ステージをマージしたいと考えています。これは可能ですか?

これまでのところ、私ができる最善のことはこれだけです:元のスクリーンショット

以下は、上記のパイプラインを生成したパイプライン コードです。

node {
   def staticTests = [:]
   staticTests["unit tests"] = {stage('unit'){ }}
   staticTests["static analysis"] = {stage('static'){ }}

   def tests = [:]
   tests["functional"] = {stage('functional'){}}
   tests["performance"] = {stage('performance'){}}
   tests["security"] = {stage('security'){}}

   stage('prepare'){}
   stage('tests'){parallel(staticTests)}
   stage('build'){}
   stage('int'){}
   stage('regression'){}
   stage('qa'){}
   stage('tests'){ parallel(tests) }
   stage('prod'){}
}

上に貼り付けた変更後の​​スクリーンショットで必要なパイプラインを作成するには、どのような変更を加えるとよいでしょうか? これは、Jenkins パイプラインを使用して今日でも可能ですか? 事前に助けてくれてありがとう!

4

1 に答える 1

1

まあ、あなたは書くことができます

node {
  stage('prepare') {}
  parallel main: {
    stage('unit tests') {}
    stage('build') {}
    stage('int') {}
    stage('regression') {}
    stage('qa') {}
    parallel functional: {}, performance: {}, security: {}
  }, 'static analysis': {}
  stage('prod') {}
}

これはあなたが要求した方法で実行されます (私の理解が正しければ) が、JENKINS-38442 に記載されているように、Blue Ocean は現在、適切な詳細レベルで表示できません。

于 2016-12-14T21:23:59.257 に答える