Files
Juan DenisandClaude Opus 4.8 44a73d7796 refactor(cloud): extract cloud-provision backend + add upgrade re-acquisition
Plan 47 Phase 2. The cloud-provider blueprint + service move out of core into
builtin-extensions/serverkit-cloud-provision/backend/ (entry_point, url_prefix
unchanged). Core no longer registers /api/v1/cloud or imports the service; the
CloudProvider/CloudServer models stay core (G2). The one-time legacy cloud-secret
encryption is dropped from core boot (already run on any panel reaching this
version; the extension encrypts on write).

Also adds run_backend_acquisition() — a one-shot migration that re-acquires the
now-extracted backend on upgraded panels that installed a converted builtin
frontend-only (whose API used to come from core). Without it, ftp/cloud/etc would
lose their API on upgrade. Wired into create_app after run_auto_install.

Tests: test_cloud_provision_extraction.py (7, incl. relocated secret-at-rest +
backend-acquisition migration); secret-encryption cloud block moved out of core.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 22:22:18 -04:00

40 lines
1.2 KiB
JSON

{
"name": "serverkit-cloud-provision",
"display_name": "Cloud Provisioning",
"version": "1.0.0",
"description": "Provision new servers from connected cloud providers, as the Cloud Servers tab in the Servers group.",
"author": "ServerKit",
"license": "MIT",
"category": "deployment",
"homepage": "https://github.com/jhd3197/ServerKit",
"permissions": ["network"],
"entry_point": "cloud_provisioning:cloud_provisioning_bp",
"url_prefix": "/api/v1/cloud",
"icon": "<path d=\"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z\"/>",
"contributions": {
"tabs": [
{
"group": "servers",
"to": "/cloud",
"label": "Cloud Servers",
"order": 4,
"icon": "<path d=\"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z\"/>"
}
],
"routes": [
{ "path": "cloud", "component": "CloudProvisionPage", "group": "servers" }
],
"page_titles": {
"/cloud": "Cloud Provisioning"
},
"command_palette": [
{
"label": "Cloud Provision",
"path": "/cloud",
"category": "Pages",
"keywords": "vps deploy provision digitalocean hetzner"
}
]
}
}