Курс "Имплементация инженерных практик" по ссылке
Библиотека предназначена для быстрого создания сборочных линий CI/CD для прикладных решений на платформе 1С:Предприятие.
Возможности:
- Экспорт истории хранилища 1С в Git
- Проверочный контур, состоящий из шагов:
- Подготовка окружения
- Синтаксическая проверка платформой 1С
- Статический анализ проекта в SonarQube
- Дымовое тестирование
- Модульное тестирование
- Поведенческое тестирование
- Публикация отчетов
Allure
иjUnit
- Сборка поставки конфигурации
- Отправка уведомлений
- На электронную почту
- В Slack
- Каталог
vars
- основной каталог с методами библиотеки. - Каталог
examples/template
- шаблон нового проекта.
Подключить библиотеку по инструкции Using libraries.
В поле Name
установить значение usher2
.
Рассмотрим примеры из шаблона проекта examples/template
.
Запуск экспорта истории хранилища 1С (Jenkinsfile_gitsync
):
@Library('usher2') _
repoSyncPipeline('tools/pipeline/gitsync.json')
Запуск проверочного контура (Jenkinsfile
):
@Library('usher2') _
buildPipeline('tools/pipeline/ci.json')
Для каждого pipeline нужно создать конфигурационный файл.
Пример запуска "Экспорт истории хранилища 1С":
{
"$schema": "https://gitlab.silverbulleters.org/products/avtoinfrastruktura/vanessa-usher2/-/raw/develop/resources/schema.json",
"agent": "gitsync",
"v8Version": "8.3",
"notification": {
"mode": "EMAIL",
"email": "[email protected]"
},
"defaultInfobase": {
"connectionString": "/F./build/ib",
"auth": ""
},
"stages": {
"gitsync": true
}
}
Пример запуска проверочного контура:
{
"agent": "slave",
"v8Version": "8.3.15",
"notification": {
"mode": "EMAIL",
"email": "[email protected]"
},
"defaultInfobase": {
"connectionString": "/F./build/ib"
},
"stages": {
"prepareBase": true,
"syntaxCheck": true,
"sonarqube": true,
"smoke": true,
"tdd": true,
"bdd": true,
"build": true
},
"prepareBase": {
"sourcePath": "./src/cf"
},
"sonarqube": {
"agent": "sonarqube",
"toolId": "sonar-scanner",
"serverId": "SonarQube",
"debug": false
}
}
Параметры по умолчанию можно изучить здесь example.json.
- Сделать Fork проекта
- Клонировать Fork на свою машину
- Создать Issue на странице проекта (или взять в работу ранее созданный)
- Внести необходимые изменения в Fork
- Сделать коммит, указав в начале #<НомерIssue>
- Создать PullRequest и подождать его принятия
- Profit!
Лицензию читать здесь LICENSE.md