mirror of
https://github.com/firstBitMarksistskaya/jenkins-lib.git
synced 2024-11-24 08:52:14 +02:00
Рефакторинг конфигурации библиотеки
This commit is contained in:
parent
7b786d85d9
commit
c72ac6d893
@ -1,6 +1,8 @@
|
||||
package ru.pulsar.jenkins.library.configuration
|
||||
|
||||
import com.cloudbees.groovy.cps.NonCPS
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
|
||||
import com.fasterxml.jackson.annotation.JsonProperty
|
||||
import com.fasterxml.jackson.annotation.JsonPropertyDescription
|
||||
|
||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||
@ -8,18 +10,20 @@ class JobConfiguration implements Serializable {
|
||||
@JsonPropertyDescription("Версия платформы 1С:Предприятие в формате 8.3.хх.хххх.")
|
||||
String v8version
|
||||
|
||||
@JsonPropertyDescription("Имя настроенной утилиты sonar-scanner.")
|
||||
String sonarScannerToolName
|
||||
|
||||
@JsonPropertyDescription("Идентификаторы сохраненных секретов")
|
||||
Secrets secrets;
|
||||
|
||||
@JsonProperty("sonarqube")
|
||||
@JsonPropertyDescription("Настройки анализа SonarQube")
|
||||
SonarQubeOptions sonarQubeOptions;
|
||||
|
||||
@Override
|
||||
@NonCPS
|
||||
String toString() {
|
||||
return "JobConfiguration{" +
|
||||
"v8version='" + v8version + '\'' +
|
||||
", sonarScannerToolName='" + sonarScannerToolName + '\'' +
|
||||
", secrets=" + secrets.toString() +
|
||||
", secrets=" + secrets +
|
||||
", sonarQubeOptions=" + sonarQubeOptions +
|
||||
'}';
|
||||
}
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
package ru.pulsar.jenkins.library.configuration
|
||||
|
||||
import com.cloudbees.groovy.cps.NonCPS
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
|
||||
import com.fasterxml.jackson.annotation.JsonPropertyDescription
|
||||
|
||||
@ -12,8 +13,8 @@ class Secrets implements Serializable {
|
||||
@JsonPropertyDescription("Данные авторизации в хранилище конфигурации")
|
||||
String storage
|
||||
|
||||
|
||||
@Override
|
||||
@NonCPS
|
||||
String toString() {
|
||||
return "Secrets{" +
|
||||
"storagePath='" + storagePath + '\'' +
|
||||
|
@ -0,0 +1,36 @@
|
||||
package ru.pulsar.jenkins.library.configuration
|
||||
|
||||
import com.cloudbees.groovy.cps.NonCPS
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
|
||||
import com.fasterxml.jackson.annotation.JsonPropertyDescription
|
||||
|
||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||
class SonarQubeOptions implements Serializable {
|
||||
|
||||
@JsonPropertyDescription("Анализ SonarQube включен")
|
||||
boolean enabled
|
||||
|
||||
@JsonPropertyDescription(
|
||||
"Имя настроенного SonarQube-сервера (SonarQube installations).\nЕсли настроен только один сервер, то может быть оставлено пустым."
|
||||
)
|
||||
String sonarQubeInstallation;
|
||||
|
||||
@JsonPropertyDescription("Использовать sonar-scanner, доступный в PATH")
|
||||
boolean useSonarScannerFromPath
|
||||
|
||||
@JsonPropertyDescription(
|
||||
"Имя настроенной утилиты sonar-scanner.\nПрименяется, если useSonarScannerFromPath установлено в false."
|
||||
)
|
||||
String sonarScannerToolName
|
||||
|
||||
@Override
|
||||
@NonCPS
|
||||
String toString() {
|
||||
return "SonarQubeOptions{" +
|
||||
"enabled=" + enabled +
|
||||
", useSonarScannerFromPath=" + useSonarScannerFromPath +
|
||||
", sonarScannerToolName='" + sonarScannerToolName + '\'' +
|
||||
", sonarQubeInstallation='" + sonarQubeInstallation + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
@ -31,7 +31,7 @@ class ConfigurationReaderTest {
|
||||
|
||||
// then
|
||||
assertThat(jobConfiguration.getV8version()).isEqualTo("8.3.14.1944");
|
||||
assertThat(jobConfiguration.getSonarScannerToolName()).isEqualTo("sonar-scanner");
|
||||
assertThat(jobConfiguration.getSonarQubeOptions().getSonarScannerToolName()).isEqualTo("sonar-scanner");
|
||||
assertThat(jobConfiguration.getSecrets())
|
||||
.hasFieldOrPropertyWithValue("storage", "1234")
|
||||
.hasFieldOrPropertyWithValue("storagePath", "UNKNOWN_ID")
|
||||
|
Loading…
Reference in New Issue
Block a user