1
0

add vrunnerSettings to initInfoBase

This commit is contained in:
Dima
2024-03-18 14:53:47 +03:00
parent a7523fb944
commit 76c18b429d
3 changed files with 22 additions and 10 deletions

View File

@@ -42,7 +42,8 @@
"initMethod": "fromStorage", "initMethod": "fromStorage",
"runMigration": true, "runMigration": true,
"additionalInitializationSteps": [], "additionalInitializationSteps": [],
"extensions": [] "extensions": [],
"vrunnerSettings": "./tools/vrunner.json"
}, },
"bdd": { "bdd": {
"vrunnerSteps": [ "vrunnerSteps": [

View File

@@ -14,7 +14,7 @@ class InitInfoBaseOptions implements Serializable {
* fromSource - инициализация информационной базы из исходников конфигурации; * fromSource - инициализация информационной базы из исходников конфигурации;
* defaultBranchFromStorage - инициализация основной ветки из хранилища конфигурации, остальных - из исходников конфигурации. * defaultBranchFromStorage - инициализация основной ветки из хранилища конфигурации, остальных - из исходников конфигурации.
По умолчанию содержит значение "fromStorage".""") По умолчанию содержит значение "fromStorage".""")
InitInfoBaseMethod initMethod = InitInfoBaseMethod.FROM_STORAGE; InitInfoBaseMethod initMethod = InitInfoBaseMethod.FROM_STORAGE
@JsonPropertyDescription("Запустить миграцию ИБ") @JsonPropertyDescription("Запустить миграцию ИБ")
Boolean runMigration = true Boolean runMigration = true
@@ -26,12 +26,17 @@ class InitInfoBaseOptions implements Serializable {
String[] additionalInitializationSteps String[] additionalInitializationSteps
@JsonPropertyDescription("Массив расширений для загрузки в конфигурацию.") @JsonPropertyDescription("Массив расширений для загрузки в конфигурацию.")
Extension[] extensions; Extension[] extensions
@JsonPropertyDescription("""Путь к конфигурационному файлу vanessa-runner.
По умолчанию содержит значение "./tools/vrunner.json".
""")
String vrunnerSettings
@JsonIgnoreProperties(ignoreUnknown = true) @JsonIgnoreProperties(ignoreUnknown = true)
static class Extension implements Serializable { static class Extension implements Serializable {
@JsonPropertyDescription("Имя расширения, используемое при его загрузке в конфигурацию.") @JsonPropertyDescription("Имя расширения, используемое при его загрузке в конфигурацию.")
String name = "extension"; String name = "extension"
@JsonPropertyDescription(""" @JsonPropertyDescription("""
Способ инициализации расширения. Способ инициализации расширения.
@@ -39,14 +44,14 @@ class InitInfoBaseOptions implements Serializable {
* fromSource - инициализация расширения из исходников; * fromSource - инициализация расширения из исходников;
* fromFile - скачивание скомпилированного cfe по ссылке. * fromFile - скачивание скомпилированного cfe по ссылке.
""") """)
InitExtensionMethod initMethod = InitExtensionMethod.SOURCE; InitExtensionMethod initMethod = InitExtensionMethod.SOURCE
@JsonPropertyDescription(""" @JsonPropertyDescription("""
Хранит в себе путь к расширению. Хранит в себе путь к расширению.
* В случае если выбран initMethod <fromSource> - указывается путь к исходникам расширения. * В случае если выбран initMethod <fromSource> - указывается путь к исходникам расширения.
* В случае если выбран initMethod <fromFile> - указывается путь к cfe-файлу * В случае если выбран initMethod <fromFile> - указывается путь к cfe-файлу
""") """)
String path = "src/cfe/extension"; String path = "src/cfe/extension"
} }
@Override @Override
@@ -57,6 +62,7 @@ class InitInfoBaseOptions implements Serializable {
", runMigration=" + runMigration + ", runMigration=" + runMigration +
", additionalInitializationSteps=" + additionalInitializationSteps + ", additionalInitializationSteps=" + additionalInitializationSteps +
", extensions=" + extensions + ", extensions=" + extensions +
'}'; ", vrunnerSettings=" + vrunnerSettings +
'}'
} }
} }

View File

@@ -11,7 +11,7 @@ import ru.pulsar.jenkins.library.utils.FileUtils
class LoadExtensions implements Serializable { class LoadExtensions implements Serializable {
private final JobConfiguration config; private final JobConfiguration config
LoadExtensions(JobConfiguration config) { LoadExtensions(JobConfiguration config) {
this.config = config this.config = config
@@ -22,10 +22,10 @@ class LoadExtensions implements Serializable {
Logger.printLocation() Logger.printLocation()
def env = steps.env(); def env = steps.env()
String cfeDir = "$env.WORKSPACE/$GetExtensions.EXTENSIONS_OUT_DIR" String cfeDir = "$env.WORKSPACE/$GetExtensions.EXTENSIONS_OUT_DIR"
String vrunnerPath = VRunner.getVRunnerPath(); String vrunnerPath = VRunner.getVRunnerPath()
config.initInfoBaseOptions.extensions.each { config.initInfoBaseOptions.extensions.each {
Logger.println("Установим расширение ${it.name}") Logger.println("Установим расширение ${it.name}")
@@ -47,6 +47,11 @@ class LoadExtensions implements Serializable {
loadCommand += executeParameter loadCommand += executeParameter
loadCommand += ' --ibconnection "/F./build/ib"' loadCommand += ' --ibconnection "/F./build/ib"'
String vrunnerSettings = config.initInfoBaseOptions.vrunnerSettings
if (steps.fileExists(vrunnerSettings)) {
loadCommand += " --settings $vrunnerSettings"
}
List<String> logosConfig = ["LOGOS_CONFIG=$config.logosConfig"] List<String> logosConfig = ["LOGOS_CONFIG=$config.logosConfig"]
steps.withEnv(logosConfig) { steps.withEnv(logosConfig) {
VRunner.exec(loadCommand) VRunner.exec(loadCommand)