【问题标题】:Using python to loop through the creation of tickets in jira在jira中使用python循环创建票证
【发布时间】:2020-03-14 22:53:25
【问题描述】:

我正在研究使用 JIRA 模块通过 python 在 Jira 中批量创建票证。我将用户输入插入到字典中,然后在我的 JIRA 项目中创建票证。这一切都很好,并且可以按照我的意愿创建票证。但是,当我尝试循环创建票证直到我指定一个点时,我的问题就出现了?

我基本上希望它接受用户输入,创建票证,然后询问我是否要创建另一个票证。如果我指定字母“Y”,它会提示用户再次填写输入框并创建另一个票证,依此类推,直到我另行指定。

我目前拥有的代码是:

decision = input("Do you want to create a ticket? ")
project = "My project"

if decision == 'Y':
    issue_dict = {
        'project': {'key':project},
        'summary': input("Please provide a summary "),
        'description' : input("please describe the issue "),
        'issuetype':{'name': 'Story'},
        'assignee': {"name": input("Who is this assigned to ")}
    }

    ticket_id = jira.create_issue(fields=issue_dict)

    print("Created, ticket reference: ", ticket_id)

    decision = input("Do you want to create another ticket? ")

else:
    print("No more tickets")

我使用此代码得到的错误是:

NameError:名称“jira”未定义

第 14 行:

ticket_id = jira.create_issue(fields=issue_dict)

任何帮助将不胜感激,如果这是一个愚蠢的错误,我深表歉意,我对 python 循环的经验很少!

谢谢:)

编辑:我不明白如何让代码通过一次后从顶部运行,对不起!

【问题讨论】:

  • 循环在哪里?
  • 这就是我卡住的地方,抱歉我忘了把它放进去。我不明白如何让它循环回到开始再次接收输入?

标签: python jira jira-rest-api python-jira


【解决方案1】:

使用这个:

from jira.client import JIRA
jira_options = {'server': 'MY_jira.com'}
jira = JIRA(options=jira_options, basic_auth=(USERNAME, PASSWORD))

def ask_what_to_do():
    decision = input("Do you want to create a ticket? \n")
    if decision == 'Y':
        issue_dict = {
            'project': {'key':project},
            'summary': input("Please provide a summary "),
            'description' : input("please describe the issue "),
            'issuetype':{'name': 'Story'},
            'assignee': {"name": input("Who is this assigned to ")}
        }

        ticket_id = jira.create_issue(fields=issue_dict)

        print("Created, ticket reference: ", ticket_id)

        ask_what_to_do()
    else:
        print("No more tickets \n")

【讨论】:

  • 谢谢!它似乎可以解决,但在尝试创建票证时我仍然得到“名称'jira'未定义”?
  • 您是否在脚本中导入了正确的 jira 库?
  • 这就是我正在检查的内容,我会告诉你:)
  • 是的,是因为我的安装错误,所以现在一切都修复了,而且效果很好。谢谢!
【解决方案2】:

显然,为了不出现导入错误,您必须从某个地方导入 jira

decision = "Y"
while decision == 'Y':
   issue_dict = {
        'project': {'key':project},
        'summary': input("Please provide a summary "),
        'description' : input("please describe the issue "),
        'issuetype':{'name': 'Story'},
        'assignee': {"name": input("Who is this assigned to ")}
    }

   ticket_id = jira.create_issue(fields=issue_dict)

   print("Created, ticket reference: ", ticket_id)

   decision = input("Do you want to create another ticket? ")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-15
    • 1970-01-01
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多