Как использовать оператор объединения в веб-сервисах SonarQube?
Я хотел бы выбрать из всех проблем, которые у меня есть, все проблемы блокирования и все проблемы уязвимости, которые являются Blocker, Critical или Major. Как я могу сделать это в одном запросе для SonarQube 6.4? Если я сделаю
http://localhost:9000/api/issues/search
severities=BLOCKER,CRITICAL,MAJOR&type=vulnerability&additionalFields=comments
У меня будут только проблемы с уязвимостью.
И если я сделаю два запроса, один для проблем с блокировщиком и один для уязвимостей, у меня будут блокирующие уязвимости, которые являются избыточными.
2 ответа
api/issues/search
не позволяет комбинировать фильтры. Это будет "И" все условия вместе.
Я предположил, что вы спрашиваете о том, как запросить эти проблемы:
CODE_SMELL | BUG | VULNERABILITY
BLOCKER | YES | YES | YES
CRITICAL | no | no | YES
MAJOR | no | no | YES
MINOR | no | no | YES
INFO | no | no | YES
Поэтому я предлагаю:
api/issues/search?severities=BLOCKER&types=CODE_SMELL,BUG
(для получения всех проблем с БЛОКЕРОМ CODE_SMELL и BUG)
CODE_SMELL | BUG | VULNERABILITY
BLOCKER | YES | YES | no
CRITICAL | no | no | no
MAJOR | no | no | no
MINOR | no | no | no
INFO | no | no | no
api/issues/search?types=VULNERABILITY
(чтобы получить все вопросы УЯЗВИМОСТИ)
CODE_SMELL | BUG | VULNERABILITY
BLOCKER | no | no | YES
CRITICAL | no | no | YES
MAJOR | no | no | YES
MINOR | no | no | YES
INFO | no | no | YES
Таким образом, у вас не будет повторяющихся проблем, но вам придется сделать два запроса.
Есть три типа проблем
- BUG
- CODE_SMELL
- УЯЗВИМОСТЕЙ
Все эти типы проблем могут иметь любой уровень серьезности. Так что, если вы хотите, чтобы все проблемы (любого типа) были связаны с блокировкой, критической и серьезной серьезностью, в вашем запросе должны быть эти параметры.
серьезности = БЛОКЕР, КРИТИЧЕСКИЕ, ОСНОВНЫЕ & типы =CODE_SMELL, ошибка, уязвимость & extraFields = комментарии