web-dev-qa-db-ja.com

マルチブランチパイプラインを使用したタグ作成でジェンキンスビルドをトリガーする

my Jenkinsfile に、タグ名フィルターに一致するタグからビルドするためのステージがあります。

      stage('Build Release from Tag') {
        when {
          tag '*RELEASE'
        }

タグを検出するために、タグ検出とタグ名regexの一致を追加し、Branch sources > GitHubの下のパイプラインに追加する必要があります。

enter image description here

パイプラインは、フィルターに一致する、プッシュしたタグを検出します。そして、それをクリックしてビルドを実行すると、タグの条件に一致するビルドステージが実行されます。しかし、私は ブログ投稿の私の解釈に基づいて 、ブランチのビルドと同じようにビルドが自動的に開始されることを期待していました。

スキャンリポジトリログに次のような出力が表示されます。

    Checking tag TEST0.1.3.RELEASE
      ‘Jenkinsfile’ found
    Met criteria
Changes detected: TEST0.1.3.RELEASE (null → 4aea4ec43c1daf8290ea438ce0bf1a14a6afbc46)
No automatic builds for TEST0.1.3.RELEASE

repository eventsなどのReceived Push event for tag TEST.0.1.8.RELEASE in repository ryandawsonuk/activiti-build CREATED eventログにも出力が表示されるので、Jenkinsは作成中のタグを認識しています。 (私はすでに知っていると思いますが、UIでそれらを検出して表示するため、手動でビルドをトリガーしない限り、ビルドされません)。

私はJenkins-Xを使用していると言うべきです。私の知る限り、これはJenkinsの質問であり、Jenkins-Xに固有のことには関係ありませんが、何かを見落としている可能性があります。

タグの作成時にパイプラインが自動的にトリガーする必要がある場合(Jenkinsがそれをサポートしているようです ただし、100%確実ではありません )、ビルドを自動的にトリガーするために追加できる構成があると思いますか?

5
Ryan Dawson

私は https://issues.jenkins-ci.org/browse/JENKINS-47496 をさらに詳しく読む必要がありました。タグはデフォルトでは自動的に作成されません。 Basic Branch Build Strategies pluginをインストールして、パイプラインのタグの作成をアクティブにする必要があります。私はこれをしました、そして今、それはタグを自動的に構築します。

8
Ryan Dawson