mirror of
https://github.com/firstBitMarksistskaya/jenkins-lib.git
synced 2024-12-03 09:59:00 +02:00
Форматирование.
Убрал лишний перенос строки. Добавил функционал для скачивания по локальному пути.
This commit is contained in:
parent
9f81e09faa
commit
3d51a22f3c
49
README.md
49
README.md
@ -128,21 +128,6 @@ pipeline1C()
|
||||
* Если информационная база нужна для запуска в режиме "Предприятие" (например, для шагов `bdd` или `smoke`), то будет запущен шаг "Миграция ИБ".
|
||||
* После загрузки конфигурации в ИБ будет выполняться запуск ИБ с целью запуска обработчиков обновления из БСП (`initInfobase` -> `runMigration`).
|
||||
* Если в настройках шага инициализации не заполнен массив дополнительных шагов миграции (`initInfobase` -> `additionalInitializationSteps`), но в каталоге `tools` присутствуют файлы с именами, удовлетворяющими шаблону `vrunner.init*.json`, то автоматически выполняется запуск `vrunner vanessa` с передачей найденных файлов в качестве значения настроек (параметр `--settings`) в порядке лексикографической сортировки имен файлов.
|
||||
* Загрузка расширений в информационную базу
|
||||
* Если у вас есть расширения которые необходимо загрузить в базу для проведения тестов и проверок, это можно сделать на этапе подготовки базы.
|
||||
* При загрузке из исходников расширения должны быть в том же формате(edt или конфигуратора) что и основная конфигурация.
|
||||
* Для загрузки расширений необходимо описать каждое из них в массиве (`initInfobase` -> `extensions`)
|
||||
* Для каждого из расширений необходимо указать:
|
||||
* Имя (`extensions` -> `name`)
|
||||
* Способ получения (`extensions` -> `initMethod`)
|
||||
|
||||
Сейчас поддерживаются 2 варианта:
|
||||
* Из исходников(`fromSource`);
|
||||
* Скачать cfe-файл из интернета (`fromInternet`)
|
||||
* Путь до расширения (`extensions` -> `path`)
|
||||
|
||||
* В случае загрузки из исходников - необходимо указать путь к исходникам расширения
|
||||
* В случае загрузки из интернета - Укажите url по которому будет скачан cfe(Прим.: https://github.com/bia-technologies/yaxunit/releases/download/23.05/YAXUNIT-23.05.cfe)
|
||||
* BDD:
|
||||
* Если в конфигурационном файле проекта не заполнена настройка `bdd` -> `vrunnerSteps`, то автоматически выполняется запуск `vrunner vanessa --settings tools/vrunner.json`.
|
||||
* Дымовые тесты:
|
||||
@ -180,3 +165,37 @@ pipeline1C()
|
||||
* Прямые получатели уведомлений не заполнены (`notifications` -> `email` -> `*options` -> `directRecipients`).
|
||||
* Telegram:
|
||||
* Уведомления о результатах сборки по умолчанию рассылаются всегда (`notifications` -> `telegram` -> `onAlways`, `onFailure`, `onUnstable`, `onSuccess`).
|
||||
|
||||
## Конфигурирование загрузки расширений
|
||||
|
||||
Если у вас есть расширения которые необходимо загрузить в базу для проведения тестов и проверок, это можно сделать на этапе подготовки базы.
|
||||
* При загрузке из исходников расширения должны быть в том же формате(edt или конфигуратора) что и основная конфигурация.
|
||||
* Для загрузки расширений необходимо описать каждое из них в массиве (`initInfobase` -> `extensions`)
|
||||
|
||||
Для загрузки расширений в информационную базу необходимо выполнить следующие шаги:
|
||||
|
||||
1. Укажите имя расширения(`extensions` -> `name`).
|
||||
1. Определите метод загрузки для каждого расширения(`extensions` -> `initMethod`). Поддерживаются два метода загрузки:
|
||||
- `fromSource` - загрузка из исходников;
|
||||
- `fromFile` - загрузка cfe-файла.
|
||||
1. Укажите путь до расширения или URL для скачивания cfe-файла(`extensions` -> `path`).
|
||||
- В случае загрузки из исходников - необходимо указать путь к исходникам расширения
|
||||
- В случае загрузки cfe - Укажите путь по которому будет скачан cfe. На данный момент можно указывать как локальный путь, так и url для скачивания cfe(Прим.: https://github.com/bia-technologies/yaxunit/releases/download/23.05/YAXUNIT-23.05.cfe)
|
||||
|
||||
Пример конфигурации для загрузки расширений:
|
||||
```json
|
||||
"initInfobase": {
|
||||
"extensions": [
|
||||
{
|
||||
"name": "ИмяРасширения1",
|
||||
"initMethod": "fromSource",
|
||||
"path": "путь/до/исходников/расширения"
|
||||
},
|
||||
{
|
||||
"name": "ИмяРасширения2",
|
||||
"initMethod": "fromFile",
|
||||
"path": "https://example.com/path/to/extension.cfe"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
@ -179,12 +179,12 @@
|
||||
},
|
||||
"initMethod": {
|
||||
"type": "string",
|
||||
"description": "\n Способ инициализации расширения.\n Поддерживается два варианта:\n * fromSource - инициализация расширения из исходников;\n * fromInternet - скачивание скомпилированного cfe по ссылке.",
|
||||
"enum": ["fromSource", "fromInternet"]
|
||||
"description": "\n Способ инициализации расширения.\n Поддерживается два варианта:\n * fromSource - инициализация расширения из исходников;\n * fromFile - использование скомпилированного cfe.",
|
||||
"enum": ["fromSource", "fromFile"]
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"description": "Хранит в себе путь к расширению.\n * В случае если выбран initMethod <fromSource> - указывается путь к исходникам расширения.\n * В случае если выбран initMethod <fromInternet> - указывается ссылка на cfe-файл"
|
||||
"description": "Хранит в себе путь к расширению.\n * В случае если выбран initMethod <fromSource> - указывается путь к исходникам расширения.\n * В случае если выбран initMethod <fromFile> - указывается путь к cfe-файлу"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ enum InitExtensionMethod {
|
||||
@JsonProperty("fromSource")
|
||||
SOURCE,
|
||||
|
||||
@JsonProperty("fromInternet")
|
||||
INTERNET
|
||||
@JsonProperty("fromFile")
|
||||
FILE
|
||||
|
||||
}
|
@ -37,8 +37,7 @@ class GetExtensions implements Serializable {
|
||||
String sourceDirName = ""
|
||||
if (config.sourceFormat == SourceFormat.EDT) {
|
||||
sourceDirName = "$env.WORKSPACE/$EdtToDesignerFormatTransformation.EXTENSION_DIR"
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
sourceDirName = "$env.WORKSPACE"
|
||||
}
|
||||
extractConvertedExtensions(sourceDirName, steps)
|
||||
@ -48,9 +47,11 @@ class GetExtensions implements Serializable {
|
||||
Logger.println("Сборка расширения ${it.name} из исходников")
|
||||
String srcDir = getSrcDir(it, sourceDirName)
|
||||
buildExtension(it, srcDir, vrunnerPath, steps)
|
||||
} else {
|
||||
} elseif (it.initMethod == InitExtensionMethod.FILE){
|
||||
Logger.println("Загрузка расширения ${it.name} из интернета по ссылке ${it.path}")
|
||||
loadExtension(it, env)
|
||||
} else {
|
||||
Logger.println("Неизвестный метод инициализации расширения ${it.name}")
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -70,7 +71,15 @@ class GetExtensions implements Serializable {
|
||||
private void loadExtension(Extension extension, def env) {
|
||||
String pathToExtension = "$env.WORKSPACE/${EXTENSIONS_OUT_DIR}/${extension.name}.cfe"
|
||||
FilePath localPathToExtension = FileUtils.getFilePath(pathToExtension)
|
||||
localPathToExtension.copyFrom(new URL(extension.path))
|
||||
|
||||
if (extension.path.startsWith("http")) {
|
||||
// If the path is a URL, download the file
|
||||
localPathToExtension.copyFrom(new URL(extension.path))
|
||||
} else {
|
||||
// If the path is a local file, copy the file
|
||||
FilePath localFilePath = FileUtils.getFilePath(extension.path)
|
||||
localPathToExtension.copyFrom(localFilePath.toURI().toURL())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user