Для чего это нужно?
Хочу все с автоматизировать.... все все и ничего не делать руками
- Скачать релиз платформы по любую платформу
- Скачать релиз конфигурации
- Скачать релиз edt
Как это сейчас работает?
Сейчас для скачивания релизов существует несколько способов:
1. Зайти на сайт https://releases.1c.ru/ и скачать релиз. Недостаток - много кликов мышки
2. Скрипты на bat/sh. Недостаток - специфичны для каждой платформы (windows, linux, macos). Порождает зоопарк..
3. Решения от 1С встроенные в конфигурации. не подходит для использования в автоматизированных процессах
Будет вот так
Решили упорядочить данный зоопарк решений и сделать единое приложения для загрузки файлов с https://releases.1c.ru/
Разработано приложение на golang для обеспечения единого интерфейса и название ему `oneget`
Адрес проекта https://github.com/v8platform/oneget
Как использовать
В приложении сейчас реализована одна команда get
Команда get описание использования
Команда получения релизов проектов с сайта 1С https://releases.1c.ru/
Быстрый запуск:
export ONEC_USERNAME=user export ONEC_PASSWORD=password oneget get --path ./tmp/dist/ platform@8.3.18.1334 # or oneget --user user --pwd password get --path ./tmp/dist/ platform83@8.3.18.1334
Описание формата аргумента RELEASE
Шаблон формата platform83[:filter.[filter]...]@8.3.18.1334[:filter] Где,
platform83- имя проекта (обязательный)[:filter.[filter]...]- набор фильтров файлов@- разделитель между проектов и версией релиза8.3.18.1334[:filter]- описание версии релиза
Минимальный использование указание только имени проекта. Например, platform83 - будет трактоваться как platform83@latest
Имя проекта - подсмотреть можно в адресе, ссылки имеют вид например https://releases.1c.ru/project/EnterpriseERP20
Синонимы проектов для быстрого доступа:
platform->platform83edt->DevelopmentTools10ring->EnterpriseLicenseToolsexecutor->Executorpg->AddCompPostgre
Набор фильтров
Список предопределенных фильтров для проектов:
- По ОС:
win,windows- фильтр по MS Windowsmac- фильтр по OS Xdeb- фильтр по DEB-based Linux-системrpm- фильтр по RPM-based Linux-систем
- По разрядности OS:
x32- фильтр по 32-bit (по умолчанию, если не указан фильтр разрядности)x64- фильтр по 64-bit
Важно! Для OSX флаг разрядности игнорируется
Пример использования:
export ONEC_USERNAME=user export ONEC_PASSWORD=password # Т.к. не указана разрядность OS будет скачены дистрибутивы для x32 # скачать файлы с фильтрацией по Windows oneget get platform:win # скачать файлы с фильтрацией по OSX oneget get platform:mac # скачать файлы с фильтрацией по DEB-based Linux-систем oneget get platform:deb # скачать файлы с фильтрацией по RPM-based Linux-систем oneget get platform:rpm
Пример для x64:
export ONEC_USERNAME=user export ONEC_PASSWORD=password # Там где не указана разрядность OS будет скачены дистрибутивы для x32 # скачать файлы с фильтрацией по Windows oneget get platform:win.x64 # скачать файлы с фильтрацией по OSX # Важно для OSX флаг разрядности игнорируется oneget get platform:mac # скачать файлы с фильтрацией по DEB-based Linux-систем oneget get platform:deb.x64 # скачать файлы с фильтрацией по RPM-based Linux-систем двух разрядностей сразу oneget get platform:rpm.x64 platform:rpm.x32
Специальные фильтры для проектов
Для проекта platform (platform83)
thin-client,thin- фильтр для файлов тонкого клиента 1С. Предприятиеclient- фильтр для файлов клиента 1С. Предприятиеserver- фильтр для файлов сервера 1С. Предприятиеfull- фильтр для файлов "Технологическая платформа" (только для Windows)
Важно! Для OSX фильтр
serverигнорируется
Важно! Фильтр
fullигнорируется для всех других фильтров кромеwin
Пример использования:
export ONEC_USERNAME=user export ONEC_PASSWORD=password # Там где не указана разрядность OS будет скачены дистрибутивы для x32 # скачать файлы сервера для Windows oneget get platform:win.server.x64 # скачать файлы клиента для OSX # Важно для OSX флаг разрядности игнорируется oneget get platform:mac.client # скачать файлы тонкого клиента для DEB-based Linux-систем oneget get platform:deb.thin.x64 # скачать файлы сервера для RPM-based Linux-систем oneget get platform:rpm.server.x64
Для проекта edt (DevelopmentTools10)
jdk- фильтр для файлов Bellsoft JDKonline- фильтр для файлов онлайн установщика 1С:EDT
Важно. Для проекта
edtигнорируются фильтры разрядности
Пример использования:
export ONEC_USERNAME=user export ONEC_PASSWORD=password # скачать файлы 1C:EDT для Windows oneget get edt:win # скачать файлы 1C:EDT для OSX oneget get edt:mac # скачать файлы 1C:EDT для Linux и Bellsoft JDK для DEB-based Linux-систем oneget get edt:deb # скачать файлы 1C:EDT для Linux и Bellsoft JDK для RPM-based Linux-систем oneget get edt:rpm # скачать файлы онлайн установщика 1C:EDT для Windows oneget get edt:win.online
Описание формата версии релиза
В версии релиза может быть указан номер версии или специальные фильтры версии.
Если версия релиза пустая, то подставляется фильтр "latest" ("edt" -> "edt@latest")
Специальные фильтры версии релиза:
latest- выбирает наиболее старшую версию релизаlatest:regexp- фильтрует список версию поregexp, и берет наиболее старшуюfrom:date- фильтрует список версий по дате, у которых дата релиза большеdateгде,date- формате 02.06.21from-v:version- фильтрует список версий, которые старше версии релизаversionгде,version- формате номер версииregexp- фильтрует список по регулярному выражению указанному вregexp
Пример использования:
export ONEC_USERNAME=user export ONEC_PASSWORD=password # скачать файлы последней версию релиза 1C:EDT для Windows oneget get edt:win@latest # or / или # oneget get edt:win # скачать файлы Платформы 1С. Предприятие для всех систем # всех версии релизов, выпущенные начиная с даты 2020.01.01 oneget platform@from:01.01.21 # скачать файлы Платформы 1С. Предприятие для DEB-based Linux-систем # всех версии релизов, у которых версия старше чем 8.3.18.1363 oneget platform:deb.x64@from-v:8.3.18.1363 # скачать файлы сервера Платформы 1С. Предприятие для DEB-based Linux-систем # последней выпущенной версии 8.3.16 oneget platform:deb.server.x64@latest:8.3.16 # скачать файлы Платформы 1С. Предприятие для OSX # всех версии релизов 8.3.16.x oneget platform:mac@8.3.16
Вступайте в нашу телеграмм-группу Инфостарт