Skip to content

Commit

Permalink
Merge branch 'release/23.12'
Browse files Browse the repository at this point in the history
  • Loading branch information
theshadowco committed Dec 22, 2023
2 parents 6704188 + fe9dfb5 commit e7eeef7
Show file tree
Hide file tree
Showing 137 changed files with 7,888 additions and 192 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,6 @@ bdd-log.xml
exec.log
.vscode/
/tests.xml
/oscript_modules
/reports/
/coverage/
17 changes: 17 additions & 0 deletions COPYRIGHT
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// Copyright 2014-2023 BIA-Technologies Limited Liability Company
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
//©///////////////////////////////////////////////////////////////////////////©//
2 changes: 2 additions & 0 deletions Jenkinsfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
@Library(['jenkins-lib-core', 'jenkins-lib-oscript']) _
opmPipeline()
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@

В комплекте присутствуют следующие сценарии обработки файлов:

- `ВставкаКопирайтов` - добавляет текст копирайта в файлы модулей. [См. подробнее](/docs/ВставкаКопирайтов.md)
- `ДобавлениеПробеловПередКлючевымиСловами` - добавляет отсутствующие пробелы перед ключевыми словами в файлах модулей. На данный момент обрабатывается только ключевое слово `Экспорт`.
- `ЗапретИспользованияПерейти` - проверяет модуль на использование методов `Перейти`.
- `ИсправлениеНеКаноническогоНаписания` - исправляет неканоничное написание ключевых слов в модулях.
Expand Down Expand Up @@ -67,7 +68,7 @@ precommit4onec может читать настройки своей работ

Также можно настроить различное поведение для различных каталогов репозитория, для работы с подкаталогами (проектами) используется ключ `-child-path`.
Настройки проектов полностью переопределяют базовые настройки. Например если в основной настройке указаны `ОтключенныеСценарии`,
а для проекта `configuration\` они не заполнены, то для каталога `configuration` будут выполнены все сценарии.
а для проекта `configuration\` они не заполнены, то для каталога `configuration\` будут выполнены все сценарии.

Конфигурирование дает возможности:

Expand Down
11 changes: 11 additions & 0 deletions build-configuration.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"sonarqube" : true,
"test" : true,
"coverage" : true,
"build" : true,
"publish" : {
"enable" : true,
"stableBranch" : "release/.*",
"develop" : true
}
}
27 changes: 27 additions & 0 deletions docs/ВставкаКопирайтов.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Сценарий `ВставкаКопирайтов`

Добавляет текст копирайта в файлы модулей при его отсутствии или несоответствии эталону.

Эталонный текст копирайта должен находиться в файле в каталоге репозитория. Относительный путь и имя файла задаются в настройке "ПутьКФайлуКопирайта" конфигурационного файла `v8config.json`. Значение по-умолчанию: "COPYRIGHT".
Если этот файл неактуален (год в тексте не соответствует текущему), сценарий исправит его.

Чтобы модуль не обрабатывался, он должен содержать исключаемый тег, определяемый в настройке "ИсключаемыеТеги". По-умолчанию игнорируются модули, содержащие тег "// IMPORT".

Если в каталоге репозитория имеется файл ParentConfigurations.bin с данными о настройках поддержки, модули, относящиеся к объектам основной поставки, не будут обрабатываться. Это позволит избежать ложного срабатыватывания механизма сравнения конфигураций на дважды измененные объекты. В конфигурационный файл `v8config.json` добавлена настройка "ИгнорироватьМодулиОбъектовПоставки", по-умолчанию установленная в значение `true`. Переключение в значение `false` позволит обрабатывать все файлы.

Пример заполнения конфигурационного файла:
```JSON
{
"Precommt4onecСценарии": {
"НастройкиСценариев": {
"ВставкаКопирайтов": {
"ИгнорироватьМодулиОбъектовПоставки": true,
"ПутьКФайлуКопирайта": "COPYRIGHT",
"ИсключаемыеТеги": [
"// IMPORT"
]
}
}
}
}
```
2 changes: 1 addition & 1 deletion features/step_definitions/precommitonec_feature.os
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@
КаталогРепозитория = БДД.ПолучитьИзКонтекста(ИмяРепозитория);
ПолноеИмяФайла = ОбъединитьПути(КаталогРепозитория, ИмяКаталога, ИмяФайла);
Файл = Новый Файл(ПолноеИмяФайла);
Ожидаем.Что(Файл.Существует(), Истина).ЭтоИстина();
Ожидаем.Что(Файл.Существует(), СтрШаблон("Файл '%1' не существует.", ПолноеИмяФайла)).ЭтоИстина();

КонецПроцедуры

Expand Down
Loading

0 comments on commit e7eeef7

Please sign in to comment.