Orbit

Uw Project Implementeren

Once a repository is connected, Orbit deploys on every push to your production branch: it clones the commit, installs dependencies, runs your build, packages the output and starts serving it. This…

Wanneer een repository is verbonden, implementeert Orbit bij elke push naar uw productiebranch: het klont de commit, installeert afhankelijkheden, voert uw build uit, verpakt de output en begint deze te serveren. Deze gids behandelt de volledige implementatiecyclus, hoe u er handmatig een triggert, en de besturingselementen die bepalen wanneer een implementatie live mag gaan.

Hoe automatische implementaties werken

Elke push naar de branch ingesteld als Production branch in Settings, vervolgens Git, triggert een implementatie. Orbit doet dan:

  1. Ontvangt de push event van GitHub, GitLab of Bitbucket.
  2. Zet een implementatie in de wachtrij en wijst deze een build slot toe.
  3. Klont uw repository op die exacte commit.
  4. Herstelt uw gecachte node_modules als build cache beschikbaar is in uw plan.
  5. Voert uw installatieopdracht uit (npm ci, yarn install of pnpm install, gedetecteerd uit uw lockfile).
  6. Voert uw build-opdracht uit.
  7. Verpakt de output directory in een implementatie-artefact en uploadt deze.
  8. Schakelt de omgeving over om het nieuwe artefact te serveren.

De implementatiedetailpagina toont deze als benoemde Build phases: Clone, Cache restore, Install, Cache save, Build, Upload, Done. De meeste projecten zijn klaar in een tot drie minuten.

Orbit projectoverzicht met de meest recente build

Implementatiestatussen

StatusBetekenis
QueuedWachten op een build slot. De implementatiepagina toont uw positie in de wachtrij
Awaiting approvalIn de wacht gezet omdat Require approval for production aan staat. Iemand moet dit goedkeuren
BuildingAfhankelijkheden installeren en uw build-opdracht uitvoeren
DeployingBuild voltooid, het nieuwe artefact wordt voor het verkeer geplaatst
Succeeded (weergegeven als Live)Servering van verkeer. De implementatie draagt een CURRENT badge
FailedDe build of de implementatiestap gaf een fout. Open het log om te zien waar
CancelledGestopt voor voltooiing, door u of door een nieuwere push naar dezelfde branch
Rolled backVervangen door een rollback naar een eerdere build

Een build volgen die in uitvoering is

Het project Overview toont de huidige build met een live-streaming log in het Latest build paneel. Klik Full details om de implementatiedetailpagina te openen, die een build-voortgangsbalk, een geschatte resterende tijd, de wachtrijpositie en de build-tijdlijn opgedeeld per fase toevoegt.

Als uw plan meer dan één gelijktijdige build toestaat en ze zijn allemaal bezet, vertelt de pagina u dat duidelijk: het toont hoeveel van uw gelijktijdige build slots in gebruik zijn en start uw implementatie automatisch wanneer er een vrijkomt. U kunt alle builds in vlucht zien in al uw projecten op Orbit, vervolgens Queue.

Handmatig een implementatie triggeren

Er zijn vier manieren om zonder een nieuwe commit te pushen een implementatie uit te voeren.

De meest recente commit opnieuw implementeren

  1. Open het project.
  2. Open het tabblad Deployments.
  3. Klik op de implementatie die u wilt, om de detailpagina te openen.
  4. Klik Retry build. Gebruik More retry options, vervolgens Retry with cleared cache, als u vermoedt dat een stale gecachte afhankelijkheid het probleem is.

Nu implementeren

De Deploy now knop op het tabblad Deployments zet een frisse build van de huidige head van uw productiebranch in de wachtrij.

Een implementatie plannen

Een implementatie kan worden gepland voor een toekomstig moment. Orbit maakt een snapshot van de commit op het moment dat u deze plant, dus de build die later wordt uitgevoerd is de code die u heeft goedgekeurd, niet wat inmiddels is geland.

Implementatiehaakjes

Een implementatiehhaak is een geheime URL die een build in de wachtrij plaatst wanneer iets er een POST-verzoek naar verzendt. Gebruik deze om opnieuw op te bouwen vanuit een headless CMS, een cron taak of een CI pipeline. Stel deze in op het tabblad Hooks van het project. Zie Triggering Deployments Via Deploy Hooks.

Build-instellingen

Orbit detecteert verstandige standaardwaarden voor de meeste projecten. Overschrijf een ervan in Settings, vervolgens Build settings:

VeldPlaceholder wanneer leegVoorbeelden
Install commandnpm ci (auto-detected)npm ci, yarn install --frozen-lockfile, pnpm install
Build commandnpm run build (auto-detected)npm run build, next build, vite build, astro build
Output directorydist (auto-detected)dist, .next, out, build, .output
Root directory/ (monorepo subdirectory)apps/web
Node.js versionPlatform default18, 20, 22

Laat een veld leeg om de auto-gedetecteerde waarde te behouden. Volledige details, inclusief per-framework waarden en de fouten die ervoor zorgen dat een eerste implementatie mislukt, vindt u in Configuring Your Build Command and Output Directory.

Het instellen van een Root directory doet meer dan alleen de werkdirectory veranderen. Pushes die alleen bestanden buiten dat pad wijzigen, worden automatisch overgeslagen, dus een monorepo bouwt niet opnieuw op elke commit.

Bepalen wanneer een implementatie is toegestaan

Orbit heeft verschillende onafhankelijke poorten. Ze bevinden zich allemaal in Settings.

Implementatievergrendelingen

Gebruik een vergrendeling om productie vast te zetten tijdens een incident, een onderhoudvenster of een code freeze.

  1. Open het project.
  2. Klik Lock deploys.
  3. Voeg een optionele reden toe.

Tijdens het vergrendelen worden push-geactiveerde implementaties stil overgeslagen en een banner leest Production deploys are locked met uw reden. Handmatige implementaties werken nog steeds, wat opzettelijk is: een vergrendeling stopt onbedoelde implementaties, niet de fix die u probeert uit te voeren. Klik Unlock deploys om het op te heffen.

Goedkeuring voor productie vereisen

Zet Require approval for production aan onder Deploy protection. Push-geactiveerde productie-implementaties pauzeren vervolgens op Awaiting approval totdat iemand de implementatie opent en Approve of Reject klikt. Panel-implementaties en implementatiehaakjes worden niet beïnvloed.

Staging-succes eerst vereisen

Require staging success before production houdt een push-geactiveerde productie-implementatie tegen totdat de staging-omgeving dezelfde commit met succes heeft geïmplementeerd. Iemand kan nog steeds handmatig goedkeuren om het wachten over te slaan.

CI vereiste controles

Gate-implementaties in uw eigen CI onder CI required checks. Op GitHub voert u door komma's gescheiden Actions jobnamen in en allemaal moeten slagen. Op GitLab wacht elke niet-lege waarde op de hele pipeline. Een CI-fout annuleert de Orbit-implementatie automatisch.

Implementatie-freeze schema

Deploy freeze schedule blokkeert push-geactiveerde implementaties buiten goedgekeurde vensters: een weekendblok, een toegestaan uurgebied, of beide. Alle tijden zijn UTC. Handmatige implementaties en implementatiehaakjes worden niet beïnvloed.

Elk bovenstaande poort behalve de implementatie-freeze blokkeert alleen push-geactiveerde implementaties. Implementatiehaakjes en handmatige panel-implementaties gaan rechtstreeks door. Als een haak-URL uitlekt, zullen geen van deze instellingen het stoppen om een build in de wachtrij te plaatsen. Behandel haak-URL's als credentials.

Builds overslaan die u niet nodig heeft

  • Ignored paths: door komma's gescheiden glob-patronen. Als elk bestand in een push overeenkomt, wordt de build overgeslagen. *.md,docs/** stopt documentatie-commits die implementaties triggeren.
  • Branch ignore patterns: pushes van overeenkomende branches worden volledig overgeslagen. dependabot/*,renovate/* is het veelvoorkomende geval.
  • Git tag deploys: implementeer naar productie wanneer een overeenkomende tag wordt gepusht, met behulp van een glob zoals v*.

Build-cache

Orbit cacht node_modules tussen builds op de Liftoff en Apex plannen. Wanneer een gecachte installatie wordt gebruikt, toont de implementatie een Cache hit badge en is de installatiefase dramatisch korter. Een cold build toont in plaats daarvan Cold build.

Als u een volledige herinstallatie wilt afdwingen, opent u Settings, vervolgens Clear build cache, en bevestigt u. De volgende implementatie voor elke omgeving voert een volledige installatie vanaf nul uit.

Als een build op een manier faalt die u niet kunt verklaren en de code is lokaal prima, voert u deze opnieuw uit met de cache gewist voordat u iets gaat wijzigen. Een stale gecachte afhankelijkheidsboom is een veelvoorkomende en zeer verwarrende oorzaak.

Wanneer een implementatie fout gaat

Orbit kan een slechte implementatie voor u opvangen in plaats van deze live te laten:

  • Auto-rollback on failure herstelt de laatste gezonde implementatie automatisch als een productie-implementatie mislukt.
  • Health check haalt een pad op dat u na elke productie-implementatie kiest. Een niet-2xx respons binnen 15 seconden herstelt de vorige gezonde implementatie.
  • Smoke tests voeren GET-verzoeken uit tegen maximaal 10 paden na elke geslaagde implementatie en registreren geslaagd of mislukt. In combinatie met auto-rollback, rolt een mislukte smoke test de implementatie terug.

Zie Rolling Back a Deployment om een implementatie zelf ongedaan te maken. Zie Troubleshooting Failed Builds om uit te zoeken waarom een build is mislukt.

Nog steeds hulp nodig?

Stuur ons een e-mail op support@kapsulehost.com of open een chat in KPanel.

KPanel openen
Uw Project Implementeren