Skip to Content
TestingPredlošci aplikacija i remiksi

Predlošci aplikacija i remiksi

Dostupnost

Tijek rada manifesta predloška i zapisa aplikacije je implementiran. Može navesti manifeste koje kurira operator, stvoriti novi zapis aplikacije iz jednog, postaviti ne-tajne vrijednosti okruženja kad je spremište okruženja konfigurirano te stvoriti čist zapis remiksa iz prihvatljive aplikacije.

Instanciranje ne deploy-a aplikacije. Deklarirane baze podataka, bucketi i servisi autentikacije ne provisioniraju se automatski. Neki deklarirani servisi sami su stub-only, pa deklaracija u manifestu ne dokazuje da ovisnost postoji.

Pregled manifesta

GET /api/apps/templates?category=web&q=next GET /api/apps/templates/{template_id}

Galerija ima pristup public-read. Manifest opisuje source Git URL, branch, zadane runtime postavke, shemu varijabli okruženja i deklarirane servise. Prije instanciranja pregledajte repozitorij, trenutnu reviziju, licencu, stanje održavanja i naredbe runtime. Manifest su metapodaci operatora, ne sigurnosna preporuka.

Dva ugrađena seed manifesta osiguravaju da API nije prazan. Njihovi vanjski repozitoriji mogu se promijeniti ili nestati, a za svaki seed još nema automatiziranog smoke testa.

Instanciranje

POST /api/apps/templates/{template_id}/instantiate Content-Type: application/json { "name": "My app", "env": { "NEXT_PUBLIC_APP_NAME": "My app" } }

Poziv stvara privatni zapis aplikacije i vraća app_id, informacije o izvoru, tip runtime i deklarirane servise. Prihvaćaju se samo ključevi deklarirani u manifestu. Secret fields ovim pozivom se ne postavljaju.

Nakon instanciranja:

  1. pregledajte source i postavke runtime nove aplikacije;
  2. dodajte secrete putem Tajne i varijable okruženja;
  3. osigurajte stvarne vanjske ovisnosti sami, osim ako servis nije izričito prijavljen kao ready;
  4. pozovite endpoint za deploy; i
  5. pratite deploy kroz build, health check i activation.

Remix

POST /api/apps/{source_app_id}/remix Content-Type: application/json { "name": "My private remix" }

Vlasnici mogu remiksirati vlastitu aplikaciju. Drugi korisnik može remiksirati samo aplikaciju koja je istodobno public i označena kao remixable. Nova aplikacija je private.

Remix prenosi source URL, branch, deployment type, port i lineage. Namjerno ne kopira vrijednosti okruženja, secrete, reference na bazu ili bucket, veze autentikacije, checkpointe, stanje IDE-a ni podatke. Također ne fork-a ni ne pin-a udaljeni Git repozitorij. Ako vlasnik izvora kasnije promijeni ili ukloni repozitorij, novi deploy može biti drugačiji ili neuspjeti.

Za trajni remix fork-ajte izvor u repozitorij koji kontrolirate, pregledajte i pin-ajte reviziju, ažurirajte source nove aplikacije i zatim deploy-ajte.

Kontrolni popis objave predloška

Prije nego predložak predstavite kao upotrebljiv:

  • potvrdite repozitorij i licencu;
  • pin-ajte ili zabilježite testiranu reviziju;
  • provjerite install, build, run, port i ponašanje health;
  • testirajte obavezna polja okruženja bez otkrivanja secret-a;
  • provjerite da je svaki deklarirani servis stvarno dostupan; i
  • instancirajte, deploy-ajte, izvedite smoke test i uklonite u čistom okruženju.