App-implementering
OpenFactory kan gjøre om et støttet Git-repository til en immutable app variant,
starte en erstatnings-VM, kjøre health-check og bytte app-ruten først når kandidaten
er frisk. Web services og static sites får en URL under
https://<slug>.apps.openfactory.tech når public ingress path er tilgjengelig.
Tilgjengelighet: deployment pipeline og public-route path er validert end to end. UI for Apps og deployment-historikk er ikke ferdig, scheduled jobs avvises, og WebSocket/SSE pass-through trenger fortsatt et dedikert production acceptance test. Behandle en returnert URL som brukbar først når deployment status er
liveog din egen forespørsel lykkes.
Hva en deployment gjør
- Finner nøyaktig Git-revisjon med kontots connected source credentials.
- Stager source uten å kopiere Git credentials eller
.git-historikk inn i imaget. - Pakker appen via OBS når valgt og støttet, eller bruker image build hook.
- Bygger og starter en fersk app-spesifikk variant.
- Skriver runtime environment values etter boot, starter tjenesten og kjører health check.
- Bytter gateway-rute og fjerner forrige VM først når den nye kandidaten er frisk.
Live-VM-en er et deployment artifact. OpenFactory installerer, bygger eller redigerer ikke source inne i VM-en.
Implementer en registrert app
Registrer source én gang:
create_app(
name="my-shop",
git_url="https://github.com/example/my-shop",
branch="main",
deployment_type="web-service",
port=3000,
visibility="private"
)Kø deretter en deployment:
deploy_app(app_id="<app-id>")deploy_app er asynkron som standard. Behold returnerte app_id, deploy_id og
build_id, og poll:
get_app_deploy_status(app_id="<app-id>", deploy_id="<deploy-id>")Deployment fortsetter hvis en MCP-klient får timeout. Ikke send inn duplikat deployment bare fordi en ventetid endte. Sjekk eksisterende deployment først.
Suksess og feil
Et vellykket kø-svar beviser ikke at appen er live. Krev alt følgende:
- deployment status er
live; - health-check-trinnet bestod;
- den returnerte URL-en serverer forventet revisjon; og
- en autentisert sjekk lykkes når visibility er
private.
Ved feil, noter mislykket stage, error, build_id og deploy_id. Fordi cutover
er health-gated, skal en mislykket kandidat la forrige friske rute stå.
Build-strategi
use_obs=true krever en frisk, støttet OBS-sti og fails closed hvis stien mangler.
use_obs=false velger image-build hook. Utelater du argumentet, velger tjenesten OBS
for støttede Node/static-prosjekter og faller tilbake til hooken.
Kun public-prefix-verdier kan bakes inn i en variant. Secrets og andre runtime values hører hjemme i encrypted app environment og brukes etter boot.
Test en app hostet andre steder
Du trenger ikke å implementere en app via OpenFactory for å teste den. Enhver URL som nås fra tester VM kan brukes med et app scenario eller en autonomous walk.
Gjeldende begrensninger
- Web services og static sites støttes; scheduled jobs støttes ikke.
- Management-UI for app-historikk mangler; MCP-status er source of truth.
- Preview-tilgjengelighet avhenger av app gateway, wildcard ingress, DNS og kandidat-VM.
- Private previews er owner-gated i dag; deling med organization members er ikke implementert.
- Checkpoint rollback er ennå ikke migrert til denne immutable deployment-modellen. Se Checkpoints and rollback.