【问题标题】:JIRA Python Setting LabelsJIRA Python 设置标签
【发布时间】:2017-07-13 15:51:31
【问题描述】:

我正在尝试使用 jira-python API 在 Python 中为 JIRA 票证设置标签字段。

使用 issue = jira.issue(jira_ticket) 创建的有效 JIRA 问题对象,我尝试了以下方法:

  • issue.update(labels='AAA'): 给出not on the appropriate screen 错误,如下所示。
  • issue.update(fields={'labels':'AAA'}): 也会给出not on the appropriate screen 错误,如下所示。

  • issue.fields.labels.append(u'AAA'):不会产生错误,但不会更新字段。我猜它会更新问题对象,但不会推送回 JIRA 服务器。

我似乎总是收到错误:

jira.exceptions.JIRAError: JiraError HTTP 400 url: https://someserver/rest/api/2/issue/nnnnnn
text: Field 'labels' cannot be set. It is not on the appropriate screen, or unknown.

这和这篇文章Python - JIRA - Modify Labels的错误是一样的,但是出于不同的原因——也就是这里没有关闭标签,我可以用web界面设置它们:见Image: JIRA Labels Added in Web UIImage: updated JIRA issue with Labels

如果我转储出问题的原始字段,并使用上面的 Web UI 为其添加标签,那么我可以在 Python JIRA 问题对象中看到标签:

Field: 'labels', Value: ['StackOverflow', 'TAGTHATICANSEARCHFOR']

如果有人能指出我正确的方向,将不胜感激。

【问题讨论】:

    标签: python jira python-jira


    【解决方案1】:

    我尝试了很多方法,其中一个有效的方法是将标签作为数组传递:

    这样:

    issue.update(fields={"labels":['AAA']})
    

    【讨论】:

      【解决方案2】:

      从错误信息判断,“labels”字段不在您的目标问题的编辑屏幕上。

      请参阅 JIRA 文档以更深入地了解 JIRA 中的屏幕:https://confluence.atlassian.com/adminjiraserver071/defining-a-screen-802592587.html

      【讨论】:

      • 是的,看起来是这样;但是,鉴于我实际上可以使用 WebUI 在目标问题上对其进行编辑,这表明它应该是可行的?我也有足够的权限。
      【解决方案3】:

      在寻找答案之后,似乎存在一个持续存在的问题。

      看来我需要访问标签管理器来检查问题标签和修改标签:https://community.atlassian.com/t5/Answers-Developer-Questions/How-to-add-a-Label-with-Java-Rest-API/qaq-p/560837

      Atlassian 发布了一个问题 - 投票:https://ecosystem.atlassian.net/browse/JRJC-109

      希望这对找到这篇文章的人有所帮助。

      【讨论】:

        猜你喜欢
        • 2016-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-30
        • 2020-07-27
        • 1970-01-01
        相关资源
        最近更新 更多