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",
"runMigration": true,
"additionalInitializationSteps": [],
"extensions": []
"extensions": [],
"vrunnerSettings": "./tools/vrunner.json"
},
"bdd": {
"vrunnerSteps": [

View File

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

View File

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