Sök…


Anmärkningar

Att publicera ett släppspår är faktiskt ganska enkelt om du förstår a) att kommandot public-release kräver en .json-fil som en parameter, och b) hur den filen ser ut. Det är definitivt det största hinderet för att komma igång, för det är i stort sett inte dokumenterat någonstans.

Tänk bara på att varje paket i utgåvan måste publiceras och på Atmosphere. .Meteor / version-filen för en app är en särskilt bra plats för att hitta alla nödvändiga paket och versioner som borde gå in i utgåvan.

Efter det handlar det om att ta reda på vad du är villig att stödja, vad du vill inkludera osv. Här är ett delvis Venn-diagram över vad den kliniska utgåvan för närvarande arbetar med; och borde ge dig en allmän uppfattning om hur vi gör beslutsprocessen om vad som ingår.

För mer diskussion, se ämnet på Meteorforum:
https://forums.meteor.com/t/custom-meteor-release/13736/6

Grundläggande användning

Tanken är att en distro-underhållare vill köra något som följande kommando:

meteor publish-release clinical.meteor.rc6.json

Vilket gör det möjligt för användare av distro att köra detta:

meteor run --release clinical:[email protected]

Släpp manifest

En release-manifest liknar en NPM- package.json fil, package.json det är det primära problemet är att ange en lista med Atmosphere-paket och tillhandahålla lite metadata om den listan med paket. Grundformatet ser ut så här:

{
  "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",
    ...
  }
}

Anpassa Meteorverktyget

Om du behöver utöka meteorverktyget eller kommandoraden måste du skapa och publicera ditt eget meteorverktygspaket. Ronens dokumentation är den bästa där för denna process:

http://practicalmeteor.com/using-meteor-publish-release-to-extend-the-meteor-command-line-tool/1

Det är lätt att få ett meteor helloworld-kommando att fungera, men efter det kände jag att det var lättare att bara skapa en separat nod-app för att testa kommandon. Vilket är hur StarryNight kom till. Det är något av en iscenesatt mark och skrapplatta för kommandon innan du försöker sätta dem i en version av meteorverktyget.

Extrahera ett frisläppningsmanifest från .meteor / versioner

StarryNight innehåller ett litet verktyg som analyserar en applikations .meteor/versions fil och omvandlar den till ett release-manifest.

npm install -g starrynight
cd myapp
starrynight generate-release-json

Om du inte vill använda StarryNight, kopierar du helt enkelt innehållet i din .meteor/versions fil till packages i din manifestfil. Se till att konvertera till JSON-syntax och lägga till kolon och citat.

Visar release-manifestet för en specifik release

meteor show --ejson [email protected]

Publicera en utgåva från kassan

meteor publish-release --from-checkout

Hämta de senaste åtagandena för varje paket i en utgåva

När du bygger ett anpassat utgivningsspår är det vanligt att hålla paket i katalogen /packages som git-undermoduler. Följande kommando låter dig hämta alla de senaste åtagandena för undermodulerna i din /packages samtidigt.

git submodule foreach git pull origin master


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow