|
205 | 205 | СкачатьИУстановитьПакет(ОписаниеПакета.ИмяПакета, ОписаниеПакета.МинимальнаяВерсия); |
206 | 206 | КонецПроцедуры |
207 | 207 |
|
| 208 | +// Функция по имени пакета определяет имя архива в хабе |
| 209 | +// https://github.com/oscript-library/opm/issues/50 |
| 210 | +// Имена файлов в хабе регистрозависимы, однако имена пакетов по обыкновению регистронезависимы |
| 211 | +Функция ОпределитьИмяАрхива(Знач ИмяПакета) |
| 212 | + |
| 213 | +КэшПакетовВХабе = Новый КэшПакетовХаба(); |
| 214 | +ПакетыХаба = КэшПакетовВХабе.ПолучитьПакетыХаба(); |
| 215 | + |
| 216 | +Если ПакетыХаба.Получить(ИмяПакета) = Неопределено Тогда |
| 217 | + |
| 218 | +Для Каждого мПакет Из ПакетыХаба Цикл |
| 219 | + |
| 220 | +// Проводим регистронезависимое сравнение имён |
| 221 | +Если нрег(мПакет.Ключ) = нрег(ИмяПакета) Тогда |
| 222 | + |
| 223 | +// и возвращаем ровно то имя, которое хранится в хабе (с учётом регистра) |
| 224 | +Возврат мПакет.Ключ; |
| 225 | + |
| 226 | +КонецЕсли; |
| 227 | + |
| 228 | +КонецЦикла; |
| 229 | + |
| 230 | +КонецЕсли; |
| 231 | + |
| 232 | +Возврат ИмяПакета; |
| 233 | + |
| 234 | +КонецФункции |
| 235 | + |
208 | 236 | Процедура СкачатьИУстановитьПакет(Знач ИмяПакета, Знач ВерсияПакета) |
209 | 237 |
|
| 238 | +ИмяАрхива = ОпределитьИмяАрхива(ИмяПакета); |
210 | 239 | Если ВерсияПакета <> Неопределено Тогда |
211 | | -ФайлПакета = ИмяПакета + "-" + ВерсияПакета + ".ospx"; |
| 240 | +ФайлПакета = ИмяАрхива + "-" + ВерсияПакета + ".ospx"; |
212 | 241 | Иначе |
213 | | -ФайлПакета = ИмяПакета + ".ospx"; |
| 242 | +ФайлПакета = ИмяАрхива + ".ospx"; |
214 | 243 | КонецЕсли; |
215 | 244 |
|
216 | 245 | Лог.Информация("Скачиваю файл: " + ФайлПакета); |
217 | 246 |
|
218 | | -Ответ = Зеркала.ПолучитьРесурс(ИмяПакета + "/" + ФайлПакета); |
| 247 | +Ответ = Зеркала.ПолучитьРесурс(ИмяАрхива + "/" + ФайлПакета); |
219 | 248 | Если Не Ответ = Неопределено Тогда |
220 | 249 | Лог.Отладка("Файл получен"); |
221 | 250 | ВремФайл = ОбъединитьПути(КаталогВременныхФайлов(), ФайлПакета); |
|
0 commit comments