mirror of
https://github.com/BlizD/Tasks.git
synced 2025-04-25 12:14:40 +02:00
@d-hurricane скрипт для создания CF с текущей ветки и размещение в задаче #123
This commit is contained in:
parent
8c74c6de0b
commit
f95b83b2a2
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,4 +1,4 @@
|
|||||||
*.class
|
*.class
|
||||||
|
|
||||||
src/scripts/*.txt
|
src/scripts/*.txt
|
||||||
src/cf/ConfigDumpInfo.xml
|
src/cf/ConfigDumpInfo.xml
|
||||||
@ -13,3 +13,4 @@ src/cf/ConfigDumpInfo.xml
|
|||||||
|
|
||||||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
||||||
hs_err_pid*
|
hs_err_pid*
|
||||||
|
src/scripts/CF dev/params.json
|
||||||
|
106
src/scripts/CF dev/public-dev.os
Normal file
106
src/scripts/CF dev/public-dev.os
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
#Использовать v8runner
|
||||||
|
#Использовать yadisk
|
||||||
|
#Использовать 1connector
|
||||||
|
#Использовать configor
|
||||||
|
#Использовать logos
|
||||||
|
|
||||||
|
Лог = Логирование.ПолучитьЛог("oscript.app.public-dev");
|
||||||
|
Лог.УстановитьУровень(УровниЛога.Информация);
|
||||||
|
|
||||||
|
ФайлНастроек = ОбъединитьПути(ТекущийКаталог(), "params.json");
|
||||||
|
Если АргументыКоманднойСтроки.Количество() <> 0 Тогда
|
||||||
|
ФайлНастроек = АргументыКоманднойСтроки[0];
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
МенеджерПараметров = Новый МенеджерПараметров();
|
||||||
|
МенеджерПараметров.АвтоНастройка("config");
|
||||||
|
МенеджерПараметров.УстановитьФайлПараметров(ФайлНастроек);
|
||||||
|
МенеджерПараметров.Прочитать();
|
||||||
|
|
||||||
|
Если Не МенеджерПараметров.ЧтениеВыполнено() Тогда
|
||||||
|
Лог.Ошибка("Не удалось прочитать настройки.");
|
||||||
|
ЗавершитьРаботу(1);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Конфигуратор = Новый УправлениеКонфигуратором();
|
||||||
|
|
||||||
|
ВерсияПлатформы = МенеджерПараметров.Параметр("Конфигурация.Версия");
|
||||||
|
Лог.Отладка("Версия платформы: " + ВерсияПлатформы);
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ВерсияПлатформы) Тогда
|
||||||
|
Конфигуратор.ИспользоватьВерсиюПлатформы(ВерсияПлатформы);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
// Выгрузка конфигурации в файл.
|
||||||
|
|
||||||
|
КаталогИсходниковКонфигурации = МенеджерПараметров.Параметр("Конфигурация.КаталогПроекта");
|
||||||
|
КаталогИсходниковКонфигурации = ОбъединитьПути(КаталогИсходниковКонфигурации, "src", "cf");
|
||||||
|
Лог.Отладка("Каталог исходников: " + КаталогИсходниковКонфигурации);
|
||||||
|
|
||||||
|
Лог.Информация("Загрузка конфигурации из файлов");
|
||||||
|
Конфигуратор.ЗагрузитьКонфигурациюИзФайлов(КаталогИсходниковКонфигурации, , , Ложь);
|
||||||
|
|
||||||
|
ИмяФайлаКонфигурации = СтрШаблон("dev_Tasks%1.cf", Формат(ТекущаяДата(), "ДФ=ddMMyy_HHmm"));
|
||||||
|
Лог.Отладка("Имя файла конфигурации: " + ИмяФайлаКонфигурации);
|
||||||
|
|
||||||
|
Лог.Информация("Выгрузка конфигурации в файл");
|
||||||
|
ПутьКФайлуКонфигурации = ОбъединитьПути(Конфигуратор.ПутьКВременнойБазе(), ИмяФайлаКонфигурации);
|
||||||
|
Конфигуратор.ВыгрузитьКонфигурациюВФайл(ПутьКФайлуКонфигурации);
|
||||||
|
|
||||||
|
// Публикация файла на Яндекс.Диске.
|
||||||
|
|
||||||
|
ТокенАвторизации = МенеджерПараметров.Параметр("Яндекс.Токен");
|
||||||
|
КаталогНаЯндексДиске = МенеджерПараметров.Параметр("Яндекс.Каталог");
|
||||||
|
|
||||||
|
ЯндексДиск = Новый ЯндексДиск;
|
||||||
|
ЯндексДиск.УстановитьТокенАвторизации(ТокенАвторизации);
|
||||||
|
|
||||||
|
ПутьНаЯндексДиске = ИмяФайлаКонфигурации;
|
||||||
|
Если Не ПустаяСтрока(КаталогНаЯндексДиске) Тогда
|
||||||
|
ПутьНаЯндексДиске = КаталогНаЯндексДиске + "/" + ПутьНаЯндексДиске;
|
||||||
|
КонецЕсли;
|
||||||
|
Лог.Отладка("Путь на Я.Диске: " + ПутьНаЯндексДиске);
|
||||||
|
|
||||||
|
Лог.Информация("Загрузка файла на Я.Диск");
|
||||||
|
ЯндексДиск.ЗагрузитьНаДиск(ПутьКФайлуКонфигурации, ПутьНаЯндексДиске, Истина);
|
||||||
|
|
||||||
|
Лог.Информация("Публикация файла на Я.Диске");
|
||||||
|
СсылкаНаЯндексДиске = ЯндексДиск.Опубликовать(ПутьНаЯндексДиске);
|
||||||
|
|
||||||
|
// Отправка комментария на GitHub.
|
||||||
|
|
||||||
|
ТокенАвторизации = МенеджерПараметров.Параметр("GitHub.Токен");
|
||||||
|
ПолноеИмяРепозитория = МенеджерПараметров.Параметр("GitHub.Репозиторий");
|
||||||
|
НомерЗадачи = МенеджерПараметров.Параметр("GitHub.НомерЗадачи");
|
||||||
|
|
||||||
|
UrlЗапроса = "https://api.github.com/repos/%1/issues/%2/comments";
|
||||||
|
UrlЗапроса = СтрШаблон(UrlЗапроса, ПолноеИмяРепозитория, НомерЗадачи);
|
||||||
|
Лог.Отладка("URL запроса: " + UrlЗапроса);
|
||||||
|
|
||||||
|
ЗаголовкиЗапроса = Новый Соответствие;
|
||||||
|
ЗаголовкиЗапроса.Вставить("Accept", "application/vnd.github.v3+json");
|
||||||
|
ЗаголовкиЗапроса.Вставить("User-Agent", "oscript-tasks");
|
||||||
|
ЗаголовкиЗапроса.Вставить("Authorization", СтрШаблон("token %1", ТокенАвторизации));
|
||||||
|
|
||||||
|
ПараметрыЗапроса = Новый Структура();
|
||||||
|
ПараметрыЗапроса.Вставить("Заголовки", ЗаголовкиЗапроса);
|
||||||
|
|
||||||
|
ТекстКомментария = СтрШаблон("[%1](%2)", ИмяФайлаКонфигурации, СсылкаНаЯндексДиске);
|
||||||
|
Лог.Отладка("Текст комментария: " + ТекстКомментария);
|
||||||
|
|
||||||
|
Тело = Новый Структура;
|
||||||
|
Тело.Вставить("body", ТекстКомментария);
|
||||||
|
|
||||||
|
Лог.Информация("Пост комментария на GitHub");
|
||||||
|
Ответ = КоннекторHTTP.Post(UrlЗапроса, , Тело, ПараметрыЗапроса);
|
||||||
|
|
||||||
|
Лог.Отладка("Код ответа: " + Ответ.КодСостояния);
|
||||||
|
Если Ответ.КодСостояния <> 201 Тогда
|
||||||
|
Лог.Ошибка(Ответ.Текст());
|
||||||
|
ЗавершитьРаботу(1);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
// Удаление временных файлов
|
||||||
|
|
||||||
|
Лог.Отладка("Удаление временной базы");
|
||||||
|
Конфигуратор.УдалитьВременнуюБазу();
|
Loading…
x
Reference in New Issue
Block a user