Jenkins では、特定のジョブの監視リストに複数のユーザーを追加できるようにしたいと考えています。これにより、これらのユーザーは自分でジョブに移動して監視ジョブをクリックする必要がなくなります。
import jenkins.model.*;
import hudson.model.*;
import hudson.plugins.emailext.watching.*;
def build = Thread.currentThread().getCurrentExecutable()
def buildEnvVars = new HashMap()
buildEnvVars.putAll(build.getEnvVars())
def JOB_NAME = buildEnvVars["JOB_NAME"]
println JOB_NAME
instance = Jenkins.instance.getItemByFullName(JOB_NAME)
EmailExtWatchAction watch = new EmailExtWatchAction(instance)
User user = User.get("build")
prop = watch.getJobProperty()
prop.addWatcher(user)
instance.save()
println """
IS_WATCHING=${watch.isWatching()}
EMAIL_TRIGGERS=${watch.getTriggers()}
WATCHERS = ${prop.getWatchers()}
"""
上記のコードで、私がやろうとしているのは、システム groovy スクリプトが実行されている現在のジョブのウォッチ リストにユーザー「build」を追加することです。しかし、何も起こっていません。UserProperty と関係があると思います。おそらく、EmailTrigger を userProperty に追加する必要がありますか?
誰かがこれについて何か洞察を持っているなら、それは素晴らしいことです。