Скрипт автоустановки компонентов в MODX
Появилась нужда в скрипте автоустановки компонентов в MODX, который одинаково корректно можно вызывать и из веба, и из консоли. Так как все свои сервера отныне я настраиваю придерживаясь данной инструкции почти полностью, то за работу данного скрипта, запущенного из консоли сервера, настроенного по иному методу я не отвечаю.
2) Добавляет репозитории, которых не нашёл,
3) Качает и устанавливает/обновляет компоненты, которые указаны в списке.
Естественно и репозитории, и компоненты Вы можете указать свои.
Вот ссылка на скрипт — gist.github.com/gvozdb/84671636d763007bcc78
Что может скрипт:
1) Сверяет репозитории из своего списка со списком в вашем MODX,2) Добавляет репозитории, которых не нашёл,
3) Качает и устанавливает/обновляет компоненты, которые указаны в списке.
Естественно и репозитории, и компоненты Вы можете указать свои.
Вот ссылка на скрипт — gist.github.com/gvozdb/84671636d763007bcc78
Поблагодарить автора
Отправить деньги
Комментарии: 23
Полезный скрипт.
Кроме установки расширений, менять бы еще системные настройки сразу.
Кроме установки расширений, менять бы еще системные настройки сразу.
Этот материал я помню, и многое так и делаю. Но то что я имел ввиду, это буквально: пакет, компонент, выгружающий в файл всю конфигурацию. Что бы потом из этого файла можно было оперативно установить те же пакеты, с теми же настройками.
Такого готового решения нет сейчас, как я понимаю.
Устанавливаться все должно из репозитариев, соответственно, последние по дате версии.
Такого готового решения нет сейчас, как я понимаю.
Устанавливаться все должно из репозитариев, соответственно, последние по дате версии.
есть, Gitify :)
Возможно ли через Gitify устанавливать пакеты как из репозиториев (последние версии) так и свои пакеты, не опубликованные ни в каких репозиториях?
Пакеты из репозиториев устанавливать можно. В конфиге можно прописать даже ключи для установки купленных пакетов в modstore.pro и modmore.com. В интерактивном режиме пока нет возможности указать, в каком репозитории искать пакет. Так же пока нет возможности устанавливать локальные пакеты. Об этом просили и это в планах, но пока не хватает времени довести этот механизм до ума.
круто. т.е. можно создать пользователя, группу для него, ограничить ему права для контекста mgr, настроить формы, установить системные настройки, пакеты, создать необходимые ресурсы и шаблоны, группы ресурсов и это все из командной строки двумя строчками сразу же при установке MODX?
Формально да, но я бы так не стал делать. Gigify нужен скорее для синхронизации N установок MODX. Например, есть девелоперская версия и есть продакшен версия. Вот им можно отдельные объекты синхронизировать. Что касается задачи настроить права и тд и тп, то я бы рекомендовал это делать через создание пакета для MODX (по сути как обычное дополнение), в котором прописывать все эти правила. Я так делаю, создаю такой пакет с именем theme-sitename. В нем у меня прописаны все переопределения системных настроек, дополнительные файлы, тема сайта (css, js, шрифты и тд).
подскажите, возможно ли на modhost.pro запустить gitify? или для этого обязательно брать отдельный VPS?
ssh на modhost есть, так что да, можно. Лично пробовал, работает.
Кстати, алгоритм для своего скрипта с пакетами я взял оттуда.
С настройками в ближайшее время должен понадобиться скрипт — напишу.
Мысли вслух: Вообще, вместо сборок для быстрого старта, хорошо бы выгружать удачную конфигурацию в xml и так же из этого файла разворачивать полностью укомплектованную версию. В идеале пакет, для импорта и экспорта конфигураций сборок.
Этот пакет называется Vapor!
Александр, я пользуюсь Vapor, давно. Он создает сборки. А я говорю о клонировании конфигурации в файл. Со сведениями обо всех установленных расширений и настройках. Без самих файлов пакетов и т.п.
Соответственно, без контента.
Vapor архивирует и устанавливает, а в случае импорта\экспорта конфигураций установка всех расширений должна вестись из репозитариев, как у Павла вданном топике.
Соответственно, без контента.
Vapor архивирует и устанавливает, а в случае импорта\экспорта конфигураций установка всех расширений должна вестись из репозитариев, как у Павла вданном топике.
Идея хорошая, но только не понятно, где это может пригодиться. Если для тиражирования, то там все не предусмотришь, а только основное. Если только содрать конфиг с уже работающего сайта.
Если не ошибаюсь, то в ThemePackagerComponent можно системные настройки забекапить. Но там вроде нет бекапа наборов параметров.
Если не ошибаюсь, то в ThemePackagerComponent можно системные настройки забекапить. Но там вроде нет бекапа наборов параметров.
Если только содрать конфиг с уже работающего сайта.Я именно об этом. Для экономии времени и т.п. Грубо, Ace, Translit и т.п., наберется NN расширений, которые кроме установки требуют системных настроек. Экономия времени. Оптимизация рабочего процесса.
ThemePackagerComponent посмотрите, там точно можно системные настройки содрать. Возможно и Packman умеет. Второй может еще ресурсы сохранить.
Спасибо, я все это знаю и это ни как не похоже на то о чем я написал.
Сейчас посмотрел ThemePackagerComponent, он как раз может сохранить ресурсы. По-моему это как раз то, что надо.
В предполагаемом компоненте-пакете «волшебные кнопки»: 1. экспортировать конфигурацию и данные об установленных расширениях,
2. Импортировать конфигурацию и данные об установленных расширениях,
3. Переустановить все в соответствии с загруженным файлом конфигурации.
Ни о каких ресурсах я не говорю, я так и написал выше «без контента».
2. Импортировать конфигурацию и данные об установленных расширениях,
3. Переустановить все в соответствии с загруженным файлом конфигурации.
Ни о каких ресурсах я не говорю, я так и написал выше «без контента».
Владимир, я помню, что вам не нужны ресурсы.
Собственно разница в том, что компонент сохранит сами пакеты. А вы, как я понял хотите, чтобы он их скачал из репозитория. Вроде не существенное отличие.
Собственно разница в том, что компонент сохранит сами пакеты. А вы, как я понял хотите, чтобы он их скачал из репозитория. Вроде не существенное отличие.
Вроде не существенное отличие.Существенное, версии расширений последние будут из репозитариев, не потребуется их обновлять\удалять.
Принципиально, копии существующих расширений и просто запись о том что установлено.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.