Интернет-агентство Александра Лырмина
Сайты на Битрикс от профессионала
с 15-ти летним опытом

Автомодуль

Создай и размести свой модуль в маркетплейс 1С-Битрикс за 10 секунд

Автомодуль - это незаменимый инструмент разработчика 1С-Битрикс, который экономит десятки часов рутинных действий при создании своих модулей.

Приложение позволяет создать и размещестить в marketplace.1c-bitrix.ru, свой модуль из консоли без необходимости загружать файлы вручную и использовать веб-интерфейс.

Чтобы создать и разместить модуль вам потребуется выполнить 3 команды в консоли:

  1. Загрузить Автомодуль
  2. Создать модуль, например bxdev.news: python automodule.py -a n bxdev.news
  3. Упаковать созданный модуль в архив: python automodule.py -a m bxdev.news
  4. python automodule.py -a M -u mylogin -p mypass bxdev.news -l (mylogin/mypass - логин и пароль на сайте 1c-bitrix.ru)

Открывайте список ваших решений.

Как это выглядит в консоли

Создание модуля 1С-Битрикс через консоль

Модуль на финальной стадии тестирования, если у вас есть желание его протестировать, пишите в телеграм @lyrmin.


Приложение создания модуля и взаимодействия с маркетплейс 1С-Битрикс

Примеры команд


Параметры приложения:

module
ID модуля, пример: lyrmin.test (обязательный параметр)
-h, --help
Выводит справку о командах приложения
-a {n,m,u,M,U}, --action {n,m,u,M,U}
Выберите действие: n - Создание нового модуля. m - Создание архива модуля .last_version.zip. u - Создание архива обновления модуля X.X.X.zip. M - Загрузка архива модуля .last_version.zip в marketplace.1c-bitrix.ru. U - Загрузка архива обновления X.X.X.zip в marketplace.1c-bitrix.ru.
-v VERSION, --version VERSION
Версия обновления
-d DESCRIPTIONRU, --descriptionru DESCRIPTIONRU
Текст для файла описания архива обновления description.ru. EOL = #
-D DESCRIPTIONEN, --descriptionen DESCRIPTIONEN
Текст для файла описания архива обновления description.en. EOL = #
-u USER, --user USER
Ваш аккаунт на 1c-bitrix.ru
-p PASSWORD, --password PASSWORD
Ваш аккаунт на 1c-bitrix.ru
-f, --force
Принудительное удаление, замена файлов, создание модуля в маркетплейс при отсутствии.
-l, --log
Сохранение лог файлов и страниц обработки: module-auth.html, module-result.html, result-error.html при загрузке архивов в маркетплейс

Возможности:

  1. Создаёт свой модуль со своими неймспейсами, структурой и локализацией используя готовую основу модуля.
  2. Создаёт и загружает модуль в маретплейс 1С-Битрикс через консоль, без использования веб интерфейса. Конвертирует архивируемые файлы в cp1251
  3. Регулярная загрузка архива .last_version.zip модуля в процессе его создания
  4. Создание архива новой версии модуля X.X.X.zip и его загрузка в маркетплейс. Конвертирует архивируемые файлы в cp1251

Содержит полностью готовый код модуля, для того чтобы начать сразу писать свой функционал и не тратить время на рутинные действия по созданию основы для модуля.

Требования

  1. Python 2.7

Готовая основа модуля

Это уже готовый модуль, который подготавливается под ваш id модуля.

В модуле уже решены важные моменты которые встают перед разработчиком при необходимости разработать модуль, особенно для новичков.

Описание возможностей и функционала

  1. Страница установки и удаления модуля

    Работает в автономном автоматическом режиме.

    Это обозначает что она выводит необходимые параметры для установки (выбора) пользователем автоматически, если параметру установить флаг вывода при установке.

    Автоматическое копирование файлов в ядро Битрикс и публичную часть сайта.

    При удалении модуля автоматически появятся список сохранения только тех сущностей модуля (БД, файлы, события, почтовые шаблоны) которые в модуле есть

    Вы можете удалить любой тип сущности если не планируете его использование и вернуть при необходимости без вреда для модуля. Например, вы не хотите в своём модуле использовать почтовые шаблоны и страницу с настройками модуля. Вы их удаляете и модуль продолжает работать без них. Все сущности отделены друг от друга. Находятся в разных директориях и файлах.

  2. Страница настроек

    Позволяет очень быстро составить перечень необходимых настроек на странице используя всего один метод класса Options::addOption

    Пример добавления текстового поля: Options::addOption('TEXT_FIELD_NAME', 'DEFAULT_TAB', 'TEXT', 'Текстовое поле', ['SIZE' => '30'], ['LANG' => 'Y']);

    Пример добавления текстового поля: Options::addOption('FILE_FIELD_NAME', 'DEFAULT_TAB', 'FILE', 'Файл', [], ['LANG' => 'Y']);

  3. Почтовые уведомления и шаблоны

  4. События

  5. Хранилища данных (БД)

  6. Компоненты

  7. Примеры распределения файлов