Поиск…
замечания
Публикация выпуска трека на самом деле довольно проста, если вы понимаете, a) что команда publish-release требует файла .json в качестве параметра и b) как выглядит этот файл. Это определенно самый большой барьер в начале работы, потому что он практически не документирован нигде.
Просто имейте в виду, что каждый пакет в выпуске должен быть опубликован и в Atmosphere. Файл .meteor / versions приложения является особенно хорошим местом для поиска всех необходимых пакетов и версий, которые должны войти в релиз.
После этого нужно выяснить, что вы готовы поддержать, что хотите включить и т. Д. Вот частичная диаграмма Венна о том, что сейчас работает в клинической версии; и должен дать вам общее представление о том, как мы собираемся принять процесс принятия решений о включении.
Для более подробной информации см. Раздел на форумах Meteor:
https://forums.meteor.com/t/custom-meteor-release/13736/6
Основное использование
Идея состоит в том, что разработчик дистрибутивов хочет запустить что-то вроде следующей команды:
meteor publish-release clinical.meteor.rc6.json
Затем это позволит пользователям дистрибутива запускать это:
meteor run --release clinical:[email protected]
Выпуск манифеста
Выпуск релиза аналогичен файлу NPM package.json
, поскольку основной проблемой является список пакетов Atmosphere и предоставление нескольких метаданных об этом списке пакетов. Основной формат выглядит следующим образом:
{
"track":"distroname:METEOR",
"version":"x.y.z",
"recommended": false,
"tool": "distroname:[email protected]",
"description": "Description of the Distro",
"packages": {
"accounts-base":"1.2.0",
"accounts-password":"1.1.1",
...
}
}
Настройка инструмента Метеор
Если вам необходимо расширить инструмент метеоритов или командную строку, вам нужно будет создать и опубликовать собственный пакет метеорных инструментов. Документация Ронена лучше всего подходит для этого процесса:
http://practicalmeteor.com/using-meteor-publish-release-to-extend-the-meteor-command-line-tool/1
Легко получить команду meteor helloworld, но после этого я почувствовал, что проще просто создать отдельное приложение для тестирования команд. Именно так появился StarryNight. Это что-то вроде промежуточной площадки и блокнот для команд, прежде чем пытаться вставить их в версию метеорного инструмента.
Извлечение манифеста выпуска из .meteor / версий
StarryNight содержит небольшую утилиту, которая анализирует файл .meteor/versions
и преобразует его в манифест Release.
npm install -g starrynight
cd myapp
starrynight generate-release-json
Если вы не хотите использовать StarryNight, просто скопируйте содержимое вашего .meteor/versions
в поле packages
вашего файла манифеста. Обязательно конвертируйте в синтаксис JSON и добавьте двоеточия и кавычки.
Отображение манифеста выпуска для определенного выпуска
meteor show --ejson [email protected]
Публикация выпуска с Checkout
meteor publish-release --from-checkout
Получение последних коммитов для каждого пакета в выпуске
При создании пользовательской дорожки выпуска обычно хранятся пакеты в каталоге /packages
виде подмодулей git. Следующая команда позволяет вам одновременно получать все последние коммиты для подмодулей в каталоге /packages
.
git submodule foreach git pull origin master