Розгортання застосунків
OpenFactory can turn supported Git repository into immutable app variant, boot replacement VM, health-check it, switch app route only after candidate healthy. Web services and static sites receive URL under https://<slug>.apps.openfactory.tech when public ingress path available.
Availability: deployment pipeline and public-route path validated end to end. Apps and deployment-history UI not finished, scheduled jobs rejected, WebSocket/SSE pass-through still needs dedicated production acceptance test. Treat returned URL as usable only after deployment status
liveand own request succeeds.
What a deployment does
- Resolves exact Git revision with account connected source credentials.
- Stages source without copying Git credentials or
.githistory into image. - Packages app through OBS when selected and supported, or uses image build hook.
- Builds and boots fresh app-specific variant.
- Writes runtime environment values after boot, starts service, runs health check.
- Switches gateway route and removes previous VM only after new candidate healthy.
Live VM is deployment artifact. OpenFactory does not install, build, edit source inside it.
Deploy a registered app
Register source once:
create_app(
name="my-shop",
git_url="https://github.com/example/my-shop",
branch="main",
deployment_type="web-service",
port=3000,
visibility="private"
)Then queue deployment:
deploy_app(app_id="<app-id>")deploy_app asynchronous by default. Keep returned app_id, deploy_id, build_id, poll:
get_app_deploy_status(app_id="<app-id>", deploy_id="<deploy-id>")Deployment continues if MCP client times out. Do not submit duplicate deployment merely because wait ended. Check existing deployment first.
Success and failure
Successful queue response not proof app live. Require all following:
- deployment status is
live; - health-check stage passed;
- returned URL serves expected revision; and
- authenticated check succeeds when visibility is
private.
On failure record failed stage, error, build_id, deploy_id. Because cutover health-gated, failed candidate should leave previous healthy route in place.
Build strategy
use_obs=true requires healthy, supported OBS path and fails closed if unavailable. use_obs=false selects image-build hook. Omitting argument lets service choose OBS for supported Node/static projects and fall back to hook.
Only public-prefix values may be baked into variant. Secrets and other runtime values belong in encrypted app environment and applied after boot.
Testing an app hosted elsewhere
You do not need deploy app through OpenFactory to test it. Any URL reachable from tester VM can be used with app scenario or autonomous walk.
Current limits
- Web services and static sites supported; scheduled jobs not.
- Management UI for app history pending, MCP status is source of truth.
- Preview availability depends on app gateway, wildcard ingress, DNS, candidate VM.
- Private previews owner-gated today; organization-member sharing not implemented.
- Checkpoint rollback not yet migrated to immutable deployment model. See Checkpoints and rollback.