2017-06-14 1 views
0

GerritがトリガされたJenkinsジョブでは、変更が古くなったときに失敗したいと思っています。「Rebase your changes first。」というトリガとエラーのジョブの開始時にコードを追加することによって、ジェンキンスでジェリットのリベースが必要であることを検出するにはどうすればよいですか?

あなたはWhat environment variables are passed go Jenkins when using the Gerrit Trigger Plugin?

答えて

0

でヘリット・プラグインによってこの壊れ試み定義されたジェンキンス変数のリストを見つけることができます。

#!/bin/bash 
set -exo pipefail 
# fast-fail if gerrit change is not rebased 
if [ -z ${GERRIT_PROJECT+x} ]; then 
    pushd $GERRIT_PROJECT 
    MERGE_BASE=$(git merge-base HEAD origin/$GERRIT_BRANCH) 
    git rebase 
    [ "$MERGE_BASE" == "$(git merge-base HEAD origin/$GERRIT_BRANCH)" ] || { 
     echo "FATAL: Please rebase $GERRIT_CHANGE_URL change request before testing it." 
     exit 101 
    } 
    popd 
fi 

はどういうわけか、これはパイプラインを使用して、いくつかの仕事に取り組んだが、他人に失敗した、私は疑いをチェックアウト方法が異なるためです。それで、それをやるための信頼できる方法を探しています。

関連する問題