Skip to content

Commit

Permalink
Merge branch 'develop' into pr/Borisskin/523
Browse files Browse the repository at this point in the history
  • Loading branch information
Artur Ayukhanov committed Jun 29, 2024
2 parents aadd276 + eee2e20 commit 52b0457
Show file tree
Hide file tree
Showing 55 changed files with 3,011 additions and 1,056 deletions.
13 changes: 7 additions & 6 deletions .github/workflows/testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@ jobs:
# matrix:
# # os: [ubuntu-latest, windows-latest]
# oscript_version: ['1.4.0']

steps:
# Загрузка проекта
- name: Актуализация
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
# Disabling shallow clone is recommended for improving relevancy of reporting
fetch-depth: 0

# Установка OneScript конкретной версии
# - name: Установка OneScript
# uses: otymko/[email protected]
Expand All @@ -34,13 +34,14 @@ jobs:
- name: Установка зависимостей
shell: cmd
run: |
opm install --dev
opm install -l
call opm install --dev
call opm install -l
call opm u [email protected]
# run: |
# opm install opm
# opm install add
# opm install --dev

# Задача тестирования, в результате ожидается успешное выполнение
- name: Тестирование
run: oscript ./tasks/test.os
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -498,9 +498,9 @@ call vrunner <параметры запуска>
"-Server",
"-ExternalConnection",
"-ThickClientOrdinaryApplication"
// "-Extension" : "ИмяРасширения",
// "-AllExtensions" : true
]
// "-Extension" : "ИмяРасширения",
// "-AllExtensions" : true
}
}
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,18 @@
ПараметрыКоманднойСтроки);
ИспользоватьОсновныеРолиДляВсехПользователей = ЗначениеПараметраБулево("ИспользоватьОсновныеРолиДляВсехПользователей",
ПараметрыКоманднойСтроки, Истина);
ПроверитьПрименимость = ЗначениеПараметраБулево("ПроверитьПрименимость", ПараметрыКоманднойСтроки, Ложь);
ЗагружатьРасширениеПриНаличииПроблемПрименимости = ЗначениеПараметраБулево("ЗагружатьРасширениеПриНаличииПроблемПрименимости", ПараметрыКоманднойСтроки, Ложь);

ПараметрыРасширения = Новый Структура;
ПараметрыРасширения.Вставить("БезопасныйРежим", БезопасныйРежимРасширения);
ПараметрыРасширения.Вставить("ЗащитаОтОпасныхДействий", ЗащитаОтОпасныхДействийРасширения);
ПараметрыРасширения.Вставить("ИспользоватьОсновныеРолиДляВсехПользователей",
ИспользоватьОсновныеРолиДляВсехПользователей);
ИспользоватьОсновныеРолиДляВсехПользователей);
ПараметрыРасширения.Вставить("ПроверитьПрименимость",
ПроверитьПрименимость);
ПараметрыРасширения.Вставить("ЗагружатьРасширениеПриНаличииПроблемПрименимости",
ЗагружатьРасширениеПриНаличииПроблемПрименимости);

Исключение
ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
Expand All @@ -68,7 +74,6 @@
КонецПопытки;

Попытка

ЗагрузитьРасширения(ПутьРасширения, ИмяРасширения, Перезаписывать,
ПараметрыРасширения,
ЗавершитьРаботуСистемы, ОтключитьЛогикуНачалаРаботыСистемы);
Expand Down Expand Up @@ -108,6 +113,8 @@
|Если параметр Перезаписывать указан, если соответствующие расширение будет переустановлено.
| Если параметр Перезаписывать не указан, будет выдана ошибка, если расширение с таким именем уже установлено!.
|Если указано ЗавершитьРаботуСистемы=Ложь, работа 1С:Предприятия не будет завершена.
|Если параметр ПроверитьПрименимость указан, перед загрузкой расширения будет выполнена проверка на наличие проблем применимости расширения.
| Если, несмотря на наличие проблем применимости, нужно загрузить расширение - необходимо указать параметр ЗагружатьРасширениеПриНаличииПроблемПрименимости
|
|По умолчанию простой режим запуска Путь=Путь загружает расширение из файла, отключая безопасный режим и защиту от опасных действий.
|Для платформы 8.3.15 и выше по умолчанию расширение загружается с использованим основных ролей расширения для всех пользователей.
Expand Down Expand Up @@ -199,6 +206,9 @@

ОписаниеЗащиты = Новый("ОписаниеЗащитыОтОпасныхДействий");
ОписаниеЗащиты.ПредупреждатьОбОпасныхДействиях = ПараметрыРасширения.ЗащитаОтОпасныхДействий;

ПроверитьПрименимость = ПараметрыРасширения.ПроверитьПрименимость;
ЗагружатьРасширениеПриНаличииПроблемПрименимости = ПараметрыРасширения.ЗагружатьРасширениеПриНаличииПроблемПрименимости;

Расширение = РасширенияКонфигурации.Создать();
Расширение.БезопасныйРежим = ПараметрыРасширения.БезопасныйРежим;
Expand All @@ -208,7 +218,17 @@
Расширение.ИспользоватьОсновныеРолиДляВсехПользователей =
ПараметрыРасширения.ИспользоватьОсновныеРолиДляВсехПользователей;
КонецЕсли;


Если ПроверитьПрименимость и не ПовторнаяУстановка Тогда
МассивПроблемПрименимости = Расширение.ПроверитьВозможностьПрименения(ДвоичныеДанныеРасширения, Истина);
ВывестиДанныеОПроблемахПрименимости(МассивПроблемПрименимости, Имя);
Если МассивПроблемПрименимости.Количество() > 0 И НЕ ЗагружатьРасширениеПриНаличииПроблемПрименимости Тогда
ЛогСервер("Расширение не удалось установить. Обнаружены ошибки применимости!
| Если вы хотите загрузить расширение не смотря на ошибки применимости, то используйте параметр <ЗагружатьРасширениеПриНаличииПроблемПрименимости;>");
ВызватьИсключение "Установка не удалась";
КонецЕсли;
КонецЕсли;

Попытка
Расширение.Записать(ДвоичныеДанныеРасширения);
Исключение
Expand Down Expand Up @@ -331,6 +351,26 @@

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

&НаСервере
Процедура ВывестиДанныеОПроблемахПрименимости(МассивПроблемПрименимости, ИмяНовогоРасширения)
СтрокаОшибокПрименимости = "";
Шаблон = "В расширении <%1> обнаружена проблема с важностью <%2>:
|%3";

Для Каждого Проблема Из МассивПроблемПрименимости Цикл
СтрокаОшибокПрименимости = СтрокаОшибокПрименимости+Символы.ПС+СтрШаблон(Шаблон,
?(ЗначениеЗаполнено(Проблема.Расширение.Имя), Проблема.Расширение.Имя, ИмяНовогоРасширения),
Строка(Проблема.Важность),
Проблема.Описание);
КонецЦикла;

Если НЕ СтрокаОшибокПрименимости = "" Тогда
ЛогСервер("При проверке применимости расширения обнаружены следующие проблемы:
|
|" + СтрокаОшибокПрименимости, "Информация");
КонецЕсли;
КонецПроцедуры

#КонецОбласти

#Область БиблиотекаЗапускаВанессаРаннер
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@
Функция СоздатьПервогоАдминистратораПриНеобходимости(Имя)

Если ПользователиИнформационнойБазы.ПолучитьПользователей().Количество() > 0 Тогда
Лог("Уже существуют пользователь. Пользователь-администратор не создан!");
Лог("Уже существуют пользователи. Пользователь-администратор не создан!");
Возврат Ложь;
КонецЕсли;

Expand All @@ -251,7 +251,7 @@
Администратор.АутентификацияСтандартная = Истина;
Администратор.ПоказыватьВСпискеВыбора = Истина;
Администратор.ПолноеИмя = Имя;

СнятьЗащитуОтОпасныхДействий(Администратор);

ДобавитьРольПользователю(Администратор, "ПолныеПрава");
Expand All @@ -268,7 +268,7 @@

КонецФункции

&НаСервере
&НаСервереБезКонтекста
Процедура Лог(Знач Комментарий, Знач Уровень = "Ошибка")

Если Не ЗначениеЗаполнено(Уровень) Тогда
Expand All @@ -294,7 +294,7 @@
Процедура СнятьЗащитуОтОпасныхДействий(ПользовательИБ)

Попытка

ОписаниеЗащиты = Новый ОписаниеЗащитыОтОпасныхДействий;
ОписаниеЗащиты.ПредупреждатьОбОпасныхДействиях = Ложь;

Expand All @@ -308,16 +308,16 @@

&НаСервереБезКонтекста
Процедура ДобавитьРольПользователю(ПользовательИБ, ИмяРоли)

Если Метаданные.Роли.Найти(ИмяРоли) <> Неопределено Тогда
ПользовательИБ.Роли.Добавить(Метаданные.Роли[ИмяРоли]);
КонецЕсли;

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

&НаСервере
&НаСервереБезКонтекста
Функция КлючЖР()
Возврат "VanessaRunner.СозданиеПользователей";
КонецФункции

#КонецОбласти
#КонецОбласти
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,10 @@
И Я добавляю параметр "--command" для команды "oscript"
И Я добавляю параметр "СоздатьАдминистратора;Имя=Администратор;ЗавершитьРаботуСистемы" для команды "oscript"
И Я добавляю параметр "--execute СоздатьПользователей.epf" для команды "oscript"
# И Я добавляю параметр "--execute $runnerRoot\epf\СоздатьПользователей.epf" для команды "oscript"
И Я добавляю параметр " --ibconnection /Fbuild/ib" для команды "oscript"
И Я добавляю параметр "--language ru" для команды "oscript"
Когда Я выполняю команду "oscript"

# И Я сообщаю вывод команды "oscript"

Тогда Вывод команды "oscript" содержит
| ИНФОРМАЦИЯ - Выполняю команду/действие в режиме 1С:Предприятие |
| Информация: Пользователь-администратор с именем Администратор создан! |
Expand All @@ -60,10 +57,9 @@
Тогда Вывод команды "oscript" содержит
| ИНФОРМАЦИЯ - Выполняю команду/действие в режиме 1С:Предприятие |
| Пользователь ИБ не идентифицирован |
| ИНФОРМАЦИЯ - Выполнение команды/действия в режиме 1С:Предприятие завершено. |
Тогда Вывод команды "oscript" не содержит
| Ошибка: Неудача при обработке параметров запуска |
И Код возврата команды "oscript" равен 0
И Код возврата команды "oscript" равен 1

Сценарий: Неудача создания первого пользователя-администратора, если пользователи существуют

Expand All @@ -80,8 +76,7 @@

Тогда Вывод команды "oscript" содержит
| ИНФОРМАЦИЯ - Выполняю команду/действие в режиме 1С:Предприятие |
| Ошибка: Уже существуют пользователь. Пользователь-администратор не создан! |
| ИНФОРМАЦИЯ - Выполнение команды/действия в режиме 1С:Предприятие завершено. |
| Ошибка: Уже существуют пользователи. Пользователь-администратор не создан! |
Тогда Вывод команды "oscript" не содержит
| Ошибка: Неудача при обработке параметров запуска |
И Код возврата команды "oscript" равен 0
И Код возврата команды "oscript" равен 1
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,9 @@

И Я установил рабочий каталог как текущий каталог

Сценарий: Проверка репозитория git
Сценарий: Инициализация рабочей базы по умолчанию в ./build/ib
Тогда В рабочем каталоге существует каталог ".git"

Сценарий: Инициализация рабочей базы по умолчанию в ./build/ib
Когда Я сохраняю каталог проекта в контекст
# Тогда Я показываю каталог проекта
# И Я показываю рабочий каталог
Expand Down Expand Up @@ -104,7 +103,6 @@

Сценарий: Разрядность x64 - Инициализация рабочей базы по умолчанию в ./build/ib
Когда Я сохраняю каталог проекта в контекст
# Допустим я включаю отладку лога с именем "oscript.app.vanessa-runner"

Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os init-dev --src ./cf --nocacheuse --language ru --locale ru --bitness x64"
И Я сообщаю вывод команды "oscript"
Expand Down
Loading

0 comments on commit 52b0457

Please sign in to comment.