API Sonar Qualitygate, основанный на серьезности [блокировщик / критический / основной], а не на типе [ошибки / уязвимости / запахи кода] - PullRequest
0 голосов
/ 30 сентября 2019

Я нажимаю на сонар api ( api / qualitygates / project_status? AnalysisId = xyz ) из конвейера на основе analysisId , чтобы получить статус проекта. Полученный ответ основан на Type[bugs/vulnerability/code-smells]

Возможно ли получить статус на основе Severity [blocker/critical/major]?

{
  "projectStatus": {
    "status": "ERROR",
    "conditions": [
      {
        "status": "OK",
        "metricKey": "bugs",
        "comparator": "GT",
        "errorThreshold": "0",
        "actualValue": "0"
      },
      {
        "status": "ERROR",
        "metricKey": "vulnerabilities",
        "comparator": "GT",
        "errorThreshold": "0",
        "actualValue": "31"
      },
      {
        "status": "ERROR",
        "metricKey": "code_smells",
        "comparator": "GT",
        "errorThreshold": "0",
        "actualValue": "72"
      }
    ],
    "periods": [

    ],
    "ignoredConditions": false
  }
}

1 Ответ

0 голосов
/ 04 октября 2019

Вот как я получил статус, может помочь кто-то, кто борется с этой проблемой.

Хитрость в том, чтобы использовать кратковременное имя-ветви вместо использования analysisId на следующих api-

http://sonardashboard.xxx.com/api/issues/search?componentRoots=<Project-key>&severities=<Type of severity>&branch=<short-lived branch name>

Примечание. Это приведет к проблемам со статусом - открыт и закрыт. Не могу отфильтровать, используя API на основе состояния.

...