如果Jira Issue密钥不在提交消息中,则限制Subversion / Teamforge提交

时间:2019-04-10 12:07:32

标签: svn jira subversion-edge teamforge

当提交消息中未提供JIRA颁发密钥时,我想限制子版本提交。我尝试了所有解决方法,但仍然无法正常工作。我需要放置一个预先提交的钩子来解决问题。

我尝试将脚本放入“ pre-commit”以及“ pre-commit.tmpl”中。放入tmpl时没有任何反应,但放入pr​​e-commit时却在第一行中引发错误。

    if  firstline.find(":")==-1:
        sys.stderr.write(stdErrMsg)
        sys.exit(1)
    prefix= firstline.split(":")[0]

    if prefix.strip()=="":
        sys.stderr.write(stdErrMsg)
        sys.exit(1)

    jiraIDpattern = re.compile(r"(\A[A-Z]{2,}-\d+)")
    IDs=prefix.split(",")
    invalidMessage=0
    for rawID in IDs:
        ID=rawID.strip()
        result=jiraIDpattern.match(ID)
        if not result:
            sys.stderr.write("\n '"+ID+"' is not a valid JIRA issue ID")
            invalidMessage=1

    if invalidMessage:
        sys.exit(1)

0 个答案:

没有答案