jenkins apiを使用して Jenkins ビルドのカスタム原因を設定しようとしています。
jenkins apiにはinvoke()
、パラメーターを受け取る新しいビルドを呼び出すためのメソッドがありますcause
。
# this is a jenkinsapi.Job method
invoke(self, securitytoken=None, block=False,
build_params=None, cause=None, files=None, delay=5):
cause
パラメータは次のように処理されます。
if cause:
build_params['cause'] = cause
カスタム原因を定義するときに使用する形式を見つけようとしています。jenkinsapi.Build
これを行うために、まずメソッドを使用してビルドの原因を抽出し、どのように見えるかを確認しましたget_causes()
。
これにより、期待どおりの辞書のリストが生成されます (原因は 1 つだけ)。例:
[{'shortDescription': 'description of cause',
'userId': 'userid',
'userName': 'username'}]
この知識cause
で、同じ形式の辞書のリストとして指定しながらビルドを呼び出してみましたが、これは機能せず、この新しいビルドから原因を収集すると、通常のデフォルトの原因しかありませんでした。
それで、私の質問は、カスタム原因を作成するために何をする必要があるのですか?