2017-03-10 12 views
1

新しい宣言パイプライン構文を試しています。宣言パイプラインを中止する方法

たとえば、パラメータに無効な値がある場合など、パイプラインのすべてのステージとステップを中止するにはどうしたらよいでしょうか。

私はwhen句をすべての段階に追加できますが、これは私にとって最適ではありません。そうするより良い方法はありますか?

答えて

4

errorステップを使用すると、これはwhen指示文で正常に動作します。

与えられたパラメータ値が許容できない場合たとえば、あなたはアップフロントのチェックを行うと、ビルドを中止することができ - ランニングから後段の防止:

pipeline { 
    agent any 
    parameters { 
    string(name: 'targetEnv', 
      defaultValue: 'dev', 
      description: 'Must be "dev", "qa", or "staging"') 
    } 
    stages { 
    stage('Validate parameters') { 
     when { 
     expression { 
      // Only run this stage if the targetEnv is invalid 
      !['dev', 'qa', 'staging'].contains(params.targetEnv) 
     } 
     } 
     steps { 
     // Abort the build, skipping subsequent stages 
     error("Invalid target environment: ${params.targetEnv}") 
     } 
    } 
    stage('Checkout') { 
     steps { 
     echo 'Checking out source code...' 
     } 
    } 
    stage('Build') { 
     steps { 
     echo 'Building...' 
     } 
    } 
    } 
} 
+0

感謝。私は 'エラー'のステップについては知らなかった –

+0

ありがとう、しかし、次のステージに進むのをやめて結果 '成功' – Deepaklal

関連する問題