#qs #python #partial
В общем, придумал тут кое что ...
У нас есть мега-скрипт в приложении...
В котором load, drop , store и так далее, например там 2к строк ...
Внутри скрипта создаем "блоки", например так:
//$$SCRIPTPART|stage1|Первый блок кода скрипта
//$$
тут наши процедуры ...
//$$SCRIPTPART|stage2|Второй блок кода скрипта
//$$
тут наши процедуры 2...
//$$SCRIPTPART|stageN|N блок кода скрипта
//$$
тут наши процедуры N...
Далее, запоминаем GUID этого приложения и пихаем в python-скрипт, который:
1. Забирает весь код приложения
2. Создает словарь отдельных блоков скрипта
3. Запускает цикл по всем блокам
3.1. Создает приложение с именем которое было в изначальном приложении + "#тут_наш_тэг" (например stage1, stage2, stageN)
3.2. Сохраняет приложение
4. Публикует в нужный стрим
5. Создает цепочку тасков на релоад в правильной последовательности.
Параметры которые можно передавать в скрипт:
- AppID [GUID] - Уникальный идентификатор нашего приложения
-publish [GUID стрима] = публикует все этапы в нужный стрим
- replace - в случае, если уже есть приложения в стримах - перезаписывает их
- reload - после сохранения делает последовательный релоад всех этапов
- remove - удаляет все этапы в заданном стриме. Приоритетный параметр, который работает только если есть App GUID + Stream GUID, отключает все остальные параметры
- createtasks - создает в QMC нужные таски, и создает для них последовательность выполнения исходя из кода скрипта
- tagapps - задаёт тэги для приложений
- tagtasks - задает тэги для тасков
Нужно кому то такое ? :)
В общем, придумал тут кое что ...
У нас есть мега-скрипт в приложении...
В котором load, drop , store и так далее, например там 2к строк ...
Внутри скрипта создаем "блоки", например так:
//$$SCRIPTPART|stage1|Первый блок кода скрипта
//$$
тут наши процедуры ...
//$$SCRIPTPART|stage2|Второй блок кода скрипта
//$$
тут наши процедуры 2...
//$$SCRIPTPART|stageN|N блок кода скрипта
//$$
тут наши процедуры N...
Далее, запоминаем GUID этого приложения и пихаем в python-скрипт, который:
1. Забирает весь код приложения
2. Создает словарь отдельных блоков скрипта
3. Запускает цикл по всем блокам
3.1. Создает приложение с именем которое было в изначальном приложении + "#тут_наш_тэг" (например stage1, stage2, stageN)
3.2. Сохраняет приложение
4. Публикует в нужный стрим
5. Создает цепочку тасков на релоад в правильной последовательности.
Параметры которые можно передавать в скрипт:
- AppID [GUID] - Уникальный идентификатор нашего приложения
-publish [GUID стрима] = публикует все этапы в нужный стрим
- replace - в случае, если уже есть приложения в стримах - перезаписывает их
- reload - после сохранения делает последовательный релоад всех этапов
- remove - удаляет все этапы в заданном стриме. Приоритетный параметр, который работает только если есть App GUID + Stream GUID, отключает все остальные параметры
- createtasks - создает в QMC нужные таски, и создает для них последовательность выполнения исходя из кода скрипта
- tagapps - задаёт тэги для приложений
- tagtasks - задает тэги для тасков
Нужно кому то такое ? :)