python 检查 Jira 状态的脚本

python script to check Jira status

我需要一个 python 脚本,它将在特定时间间隔(1 分钟)内检查 Jira 状态,一旦 Jira 票证状态被批准,它将打破循环并继续下一步(命令:terraform apply) .你能帮忙写代码吗?

使用 curl 获取 Jira 状态:

curl -u username:password -X GET -H "Content-Type: application/json" 
     https://server-url/rest/api/2/issue/JRA-1?fields=status

您可以参考下面的程序解决这个问题

import time
import json, sys, requests, os

def getStatus():
    url = "https://server-url/rest/api/2/issue/JRA-1"
    headers = {
    "Accept": "application/json",
    "Authorization": "Basic base64encodethese(username:password)"
    }
    response = requests.request(
    "GET",
    url,
    headers=headers
    )
    jsonResponse = json.loads(response.text)
    return jsonResponse["status"]

def main():
    while(getStatus != "APPROVED"):
        time.sleep(50) 
    os.system("terraform apply")

每分钟检查一次 Jira 状态可能对服务器要求很高 - 主要是如果有其他类似的请求(关于其他问题的状态)发送到服务器。

或者,您可以与 Jira 管理员讨论调整工作流程。一旦问题转换为 APPROVED 状态,他们就可以 trigger/call terraform 任务(通过 webhooks)。只发送了一个电话。