From e0f349a4758717e1f4516f94a581575b7c45dd89 Mon Sep 17 00:00:00 2001 From: Dima Date: Fri, 30 Aug 2024 17:09:49 +0300 Subject: [PATCH] fix defaults and doc --- README.md | 17 ++++++++++++----- resources/globalConfiguration.json | 2 +- resources/schema.json | 2 +- .../ResultsTransformOptions.groovy | 4 ++-- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 2cd1883..61aa22f 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ 1. Запуск BDD сценариев с сохранением результатов в формате Allure. 1. Запуск юнит-тестов с помощью фреймворка YAXUnit с сохранением результатов в формате jUnit и Allure. 1. Запуск синтаксического контроля средствами конфигуратора и сохранение результатов в виде отчета jUnit. -1. Запуск валидации проекта средствами EDT и конвертация отчета в форматах BSL LS или Generic Issue. +1. Валидация проекта средствами EDT и трансформация отчета EDT в формат BSL LS с помощью `edt-ripper` или Generic Issue с помощью `stebi`. 1. Запуск статического анализа для SonarQube. 1. Публикация результатов junit и Allure в интерфейс Jenkins. @@ -150,7 +150,9 @@ pipeline1C() * Если в репозитории существует файл `./tools/syntax-check-exception-file.txt`, то команде запуска синтаксического контроля конфигурации данный файл будет передаваться как файл с исключениями сообщений об ошибках (параметр `--exception-file`) (`syntaxCheck` -> `exceptionFile`). * Конфигурационный файл по умолчанию уже содержит ряд "режимов проверки" для синтаксического контроля конфигурации (`syntaxCheck` -> `checkModes`). * Трансформация результатов валидации EDT: - * При использовании stebi по умолчанию из результатов анализа исключаются замечания, сработавшие на модулях с включенным запретом редактирования (желтый куб с замком) (параметры `resultsTransform` -> `removeSupport` и `resultsTransform` -> `supportLevel`). + * Используется `stebi` (параметр `resultsTransform` -> `transformer`) + * Формат файла - `generic issues` для SonarQube 10.3+ (параметр `resultsTransform` -> `genericIssueFormat`) + * `stebi` исключает из результатов анализа замечания, сработавшие на модулях с включенным запретом редактирования (желтый куб с замком) (параметры `resultsTransform` -> `removeSupport` и `resultsTransform` -> `supportLevel`). * Анализ SonarQube: * Предполагается наличие единственной настройки `SonarQube installation` (`sonarqube` -> `sonarQubeInstallation`). * Используется `sonar-scanner` из переменной окружения `PATH` (`sonarqube` -> `useSonarScannerFromPath`). @@ -174,9 +176,9 @@ pipeline1C() ## Настройка загрузки расширений -Если у вас есть расширения которые необходимо загрузить в базу для проведения тестов и проверок, это можно сделать на этапе подготовки базы. +Если у вас есть расширения, которые необходимо загрузить в базу для проведения тестов и проверок, это можно сделать на этапе подготовки базы. -* При загрузке из исходников расширения должны быть в том же формате(edt или конфигуратора) что и основная конфигурация. +* При загрузке из исходников расширения должны быть в том же формате (edt или конфигуратора), что и основная конфигурация. * Для загрузки расширений необходимо описать каждое из них в массиве (`initInfobase` -> `extensions`). Для загрузки расширений в информационную базу необходимо выполнить следующие шаги: @@ -234,4 +236,9 @@ pipeline1C() * Добавить расширение `YAXUnit` и дополнительные расширения с тестами можно в `jobConfiguration.json` -> `initInfobase` -> `extensions`. Они будут загружены при инициализации ИБ. * Если ваши тесты размещены в отдельных расширениях, скопируйте файл `./resources/yaxunit.json` из текущей библиотеки в свой репозиторий (`./tools/yaxunit.json`) и перечислите в нем имена ваших расширений. - * Если используется собственный файл `tools/yaxunit.json`, то значение параметра reportPath в нем должно быть равно `./build/out/yaxunit/junit.xml` + * Если используется собственный файл `tools/yaxunit.json`, то значение параметра `reportPath` в нем должно быть равно `./build/out/yaxunit/junit.xml` + +## Настройка трансформации результата валидации EDT + + * При использовании SonarQube версии <10.3 и `stebi` формат отчета должен быть `Generic_Issue` (параметр `resultsTransform` -> `genericIssueFormat`) + * Трансформацию результатов может выполнять `edt-ripper` (параметр `resultsTransform` -> `transformer`). В этом случае замечания будут загружены в SonarQube в формате BSL LS, что позволяет полноценно управлять ими в SonarQube. diff --git a/resources/globalConfiguration.json b/resources/globalConfiguration.json index 6486af0..aa1af97 100644 --- a/resources/globalConfiguration.json +++ b/resources/globalConfiguration.json @@ -93,7 +93,7 @@ }, "resultsTransform": { "transformer": "stebi", - "genericIssueFormat": "Generic_Issue", + "genericIssueFormat": "Generic_Issue_10_3", "removeSupport": true, "supportLevel": 0 }, diff --git a/resources/schema.json b/resources/schema.json index f612008..324f444 100644 --- a/resources/schema.json +++ b/resources/schema.json @@ -359,7 +359,7 @@ }, "genericIssueFormat" : { "type" : "string", - "description" : "Формат отчета generic issue. Только для stebi.\n Для SonarQube 10.3+ необходимо использовать Generic_Issue_10_3.\n По умолчанию Generic_Issue\n ", + "description" : "Формат отчета generic issue. Только для stebi.\n Для SonarQube 10.3+ необходимо использовать Generic_Issue_10_3.\n По умолчанию Generic_Issue_10_3\n ", "enum" : [ "Generic_Issue", "Generic_Issue_10_3" ] } } diff --git a/src/ru/pulsar/jenkins/library/configuration/ResultsTransformOptions.groovy b/src/ru/pulsar/jenkins/library/configuration/ResultsTransformOptions.groovy index 2f4dcb7..86f474e 100644 --- a/src/ru/pulsar/jenkins/library/configuration/ResultsTransformOptions.groovy +++ b/src/ru/pulsar/jenkins/library/configuration/ResultsTransformOptions.groovy @@ -26,9 +26,9 @@ class ResultsTransformOptions implements Serializable { @JsonPropertyDescription("""Формат отчета generic issue. Только для stebi. Для SonarQube 10.3+ необходимо использовать Generic_Issue_10_3. - По умолчанию Generic_Issue + По умолчанию Generic_Issue_10_3 """) - GenericIssueFormat genericIssueFormat = GenericIssueFormat.GENERIC_ISSUE + GenericIssueFormat genericIssueFormat = GenericIssueFormat.GENERIC_ISSUE_10_3 @Override @NonCPS