通过 Yaml Pipelines 将标签传递给项目 Sonarqube

Posted

技术标签:

【中文标题】通过 Yaml Pipelines 将标签传递给项目 Sonarqube【英文标题】:pass a Tag to a project Sonarqube via Yaml Pipelines 【发布时间】:2021-11-26 01:08:42 【问题描述】:

我想通过 azure Devops 自动标记我的 sonarqube 项目。

我试过了,但没有成功,管道运行但没有标记项目。

- task: CmdLine@2
  displayName: Add Tag Sonarqube
  inputs:
    script: 'curl -X POST urlsonarqube/api/project_tags/set?project=NameProject&tags=NameTags'

是否缺少任何令牌?

Sonarqube 社区版 8.2 版

【问题讨论】:

【参考方案1】:

经过大量研究,我们找到了正确的解决方案。

 - task: CmdLine@2
        inputs:
          script: 'curl -u tokenSonarqube: -X POST ''https://urlsonarqube/api/project_tags/set?project=ProjectName&tags=Tag1,Tag2,Tag3'''

标签数量没有限制

【讨论】:

【参考方案2】:

根据文档,此方法需要 POST 方法 https://sonarqube.inria.fr/sonarqube/web_api/api/project_tags

Yout 命令使用 GET 方法。 尝试使用'curl -X POST urlsonarqube/api/project_tags/set?project=NameProject&tags=NameTags'

【讨论】:

我曾经这样使用它,在一些测试中,我只是忘记在问题中提及它,它没有给出错误,它给了一切顺利的绿灯,但它没有'不在 sonarqube 中创建标签。 您确定您的身份验证正确并拥有该项目的 qdministrator 权限吗? docs.sonarqube.org/latest/extend/web-api 是的,我已通过身份验证并进行了更改,我尝试在 curl -u 令牌调用中使用管理员令牌,但仍然无济于事。

以上是关于通过 Yaml Pipelines 将标签传递给项目 Sonarqube的主要内容,如果未能解决你的问题,请参考以下文章

从 Azure Pipelines 创建 git 标签的最佳方法是啥?

将标签推送到外部 git 不会触发 Azure Pipelines CI

如何在 Azure Pipelines YAML 构建定义中接收修订

Azure Pipelines Stages (YAML) 上的手动触发器

如何在 Azure Pipelines Yaml 上循环多个 Azure 订阅?

Azure DevOps Pipelines - 仅在上一次运行成功时运行 YAML 管道