2017-11-14 12 views
0

特定のフォルダーの特定のブランチにgerritが変更されている場合、Teamcityはビルドをトリガーします。私は同じことを達成することができません、あなたが経験したすべてのユーザーからの提案は、そこに大いに感謝します。Git VCSトリガーの特定のフォルダにTeamcityトリガーを設定するには

以下は、私がビルドが支店devの&ステージングの両方のトリガーになりたいように私の構造がどのように見えるかで、すぎず、他のどのfoderの新しい/フォルダ/ My_Content下の任意の変更、ファイルの内容

- Branch dev 
    --Repo 
    * New/Folder/My_Content 
    * Folder 2 
    * Folder 3 
    * File1.txt 
    * File1.html 
    * File1.log 

- Branch Staging 
    --Repo 
    * New/Folder/My_Content 
    * Folder 2 
    * Folder 3 
    * File1.txt 
    * File1.html 
    * File1.log 

は、これは私が必要なものから離れて、すべてのフォルダに、

VCS root name: my_root 

set on branches 

+:refs/(changes/*) 
+:refs/heads/dev 
+:refs/heads/Staging 

VCS Trigger rules: 
+:root=my_root:New/Folder/My_Content/** 
Branch filter: 
+:changes/* 

常にトリガーがすべての上に構築上記のルールを試してきたものです。

私が持っていた2番目の質問は、VCSトリガールールでパラメータを使用できますか? 次のようなものです。

VCS Trigger rules: 
+:root=my_root:New/Folder/%my_var%/** 
Branch filter: 
+:changes/* 

答えて

1

あなたはちょうどあなたが引き金とはあなたがトリガするために必要なファイルのパスを指定したい支店devStagingため2 VCS​​のルーツを追加する必要があります。以下のように 詳細設定:バージョン管理設定]タブで

  • 、別途2つのVCSのルーツ追加:

    まずVCSのルート名は<repo URL>+:refs/heads/devで、デフォルトのブランチはrefs/heads/devです。

    第2のVCSルート名は<repo URL>+:refs/heads/Staging、デフォルトブランチはrefs/heads/Stagingです。

    enter image description here

    VCSのチェックアウトモードでは、あなたがAlways checkout files on agentを選択し、はデフォルト枝にビルドを許可]を選択することができます以下は

    は、例えば、VCSルート構成です。 トリガータブ
    enter image description here

  • は、+:New/Folder/My_Content/**としてトリガルールを設定します。

    enter image description here

+0

詳細な情報をお寄せいただきありがとうございますが、私はこれを試してみるよ、 しかし、枝の両方がで監視されるように、私は実際には、単一のVCSルートに枝の両方を使用しようとしています同じ時間ですが、変更が検出されたときにトリガに基づいて1つのブランチだけがチェックアウトされます。 – Jose

関連する問題