Suche…
Bemerkungen
Das Veröffentlichen eines Release-Tracks ist ziemlich einfach, wenn Sie wissen, a) dass der Befehl zum Publizieren und Freigeben eine .json-Datei als Parameter erfordert und b) wie diese Datei aussieht. Das ist definitiv die größte Hürde beim Einstieg, weil es so ziemlich nirgends dokumentiert ist.
Denken Sie daran, dass jedes Paket in der Veröffentlichung veröffentlicht werden muss und auf Atmosphere. Die .meteor / versions-Datei einer App ist ein besonders guter Ort, um alle erforderlichen Pakete und Versionen zu finden, die in das Release aufgenommen werden sollen.
Danach geht es darum, herauszufinden, was Sie unterstützen möchten, was Sie mit einbeziehen möchten usw. Hier ist ein partielles Venn-Diagramm, woran die klinische Veröffentlichung derzeit arbeitet; und sollte Ihnen eine allgemeine Vorstellung davon vermitteln, wie wir über den Entscheidungsfindungsprozess der Inhalte vorgehen.
Weitere Informationen finden Sie im Thema in den Meteor-Foren:
https://forums.meteor.com/t/custom-meteor-release/13736/6
Grundlegende Verwendung
Die Idee ist, dass ein Distributor der Distribution so etwas wie den folgenden Befehl ausführen möchte:
meteor publish-release clinical.meteor.rc6.json
Dadurch können Benutzer der Distribution Folgendes ausführen:
meteor run --release clinical:[email protected]
Manifest freigeben
Ein package.json
ähnelt einer NPM-Datei package.json
, da es in erster package.json
, eine Liste von Atmosphere-Paketen anzugeben und einige Metadaten zu dieser package.json
. Das Basisformat sieht folgendermaßen aus:
{
"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",
...
}
}
Anpassen des Meteor-Tools
Wenn Sie das Meteor-Tool oder die Befehlszeile erweitern müssen, müssen Sie ein eigenes Meteor-Tool-Paket erstellen und veröffentlichen. Ronens Dokumentation ist die beste für diesen Prozess:
http://practicalmeteor.com/using-meteor-publish-release-to-extend-the-meteor-command-line-tool/1
Es ist leicht, einen Meteor helloworld-Befehl zum Laufen zu bringen, aber danach fand ich es einfacher, eine separate Knoten-App zu erstellen, um Befehle auszuprobieren. So entstand StarryNight. Es ist so etwas wie ein Staging Ground und ein Scratchpad für Befehle, bevor versucht wird, sie in eine Version des Meteor-Tools zu integrieren.
Auslösen eines Veröffentlichungsmanifests aus .meteor / versions
StarryNight enthält ein kleines Dienstprogramm, das die .meteor/versions
Datei einer Anwendung .meteor/versions
und in ein Veröffentlichungsmanifest konvertiert.
npm install -g starrynight
cd myapp
starrynight generate-release-json
Wenn Sie StarryNight nicht nutzen wollen, einfach den Inhalt Ihrer kopieren .meteor/versions
Datei in den packages
Feld Ihrer Manifest - Datei. Stellen Sie sicher, dass Sie in die JSON-Syntax konvertieren und Doppelpunkte und Anführungszeichen hinzufügen.
Anzeigen des Release-Manifests für eine bestimmte Version
meteor show --ejson [email protected]
Veröffentlichen einer Veröffentlichung aus der Kasse
meteor publish-release --from-checkout
Abrufen der neuesten Commits für jedes Paket in einem Release
Beim Erstellen einer benutzerdefinierten Release-Spur werden Pakete im Verzeichnis /packages
normalerweise als git-Submodule gespeichert. Mit dem folgenden Befehl können Sie alle neuesten Commits für die Submodule in Ihrem /packages
Verzeichnis gleichzeitig abrufen.
git submodule foreach git pull origin master