magogi/prod/: mgf-cloud-web-0.1.1 metadata and description

Simple index

Magogi Foundation cloud console — a local single-user web GUI over mgf-cloud (Infomaniak Public Cloud first). FastAPI + Jinja, brand-styled. Sibling of mgf-cloud under the mgf.* namespace.

author Bassam Alsanie, mgf-cloud-web contributors
classifiers
  • Development Status :: 3 - Alpha
  • Intended Audience :: Developers
  • Intended Audience :: System Administrators
  • License :: OSI Approved :: Apache Software License
  • Operating System :: MacOS
  • Operating System :: POSIX :: Linux
  • Programming Language :: Python :: 3
  • Programming Language :: Python :: 3.11
  • Programming Language :: Python :: 3.12
  • Programming Language :: Python :: 3.13
  • Topic :: System :: Systems Administration
  • Typing :: Typed
description_content_type text/markdown
keywords cloud, console, dashboard, fastapi, infomaniak, openstack
license Apache-2.0
license_file
  • LICENSE
  • NOTICE
project_urls
  • Homepage, https://codeberg.org/magogi-admin/mgf-cloud-web
  • Issues, https://codeberg.org/magogi-admin/mgf-cloud-web/issues
  • Changelog, https://codeberg.org/magogi-admin/mgf-cloud-web/src/branch/main/CHANGELOG.md
requires_dist
  • fastapi>=0.110
  • jinja2<4,>=3.1
  • mgf-brand-web<0.6,>=0.5
  • mgf-cloud[infomaniak]<0.2,>=0.1.3
  • mgf-common<1.0,>=0.47
  • mgf-fastapi<0.7,>=0.6
  • python-multipart>=0.0.9
  • uvicorn>=0.30
  • httpx>=0.27; extra == 'dev'
  • import-linter>=2.0; extra == 'dev'
  • mgf-standard<0.2,>=0.1.6; extra == 'dev'
  • mgf-test-supervisor<0.2,>=0.1.3; extra == 'dev'
  • mypy>=1.10; extra == 'dev'
  • pytest-cov>=5.0; extra == 'dev'
  • pytest-timeout<3,>=2.3; extra == 'dev'
  • pytest>=8.0; extra == 'dev'
  • ruff<0.16,>=0.4; extra == 'dev'
  • mgf-common[standards]<1.0,>=0.47; extra == 'standards'
requires_python >=3.11

Because this project isn't in the mirror_whitelist, no releases from root/pypi are included.

File Tox results History
mgf_cloud_web-0.1.1-py3-none-any.whl
Size
52 KB
Type
Python Wheel
Python
3
mgf_cloud_web-0.1.1.tar.gz
Size
182 KB
Type
Source

mgf-cloud-web

The Magogi Foundation cloud console — a local, single-user web GUI for viewing and managing cloud resources (Infomaniak Public Cloud first, any provider mgf-cloud speaks). It is a thin, brand-styled front-end over the mgf-cloud library: the provider, cost, models, and credential-resolution layers all live in mgf-cloud; this distribution owns only the FastAPI app, its routes, templates, and brand assets.

Sibling of mgf-cloud under the mgf.* namespace (PEP 420), matching mgf-cloud-provision.

Scope: a local, single-operator tool — it refuses to bind anything but a loopback address and requires a per-launch login. It is not a hosted multi-user service, and it implements no remote authentication of its own.

Launch

mgf-cloud-web

Serves at http://127.0.0.1:8787. Credentials resolve exactly like mgf-cloud: --clouds-yaml → $MGF_CLOUD_CLOUDS_YAML → OS_* env → a standard clouds.yaml location, with --cloud selecting the entry (default openstack).

# pick a specific clouds.yaml entry / region
mgf-cloud-web --cloud PCP-HOESFJV-dc3-a
# another loopback port
mgf-cloud-web --host 127.0.0.1 --port 9000
# inspection only: every mutation answers 405, no form is rendered
mgf-cloud-web --read-only
# local dry test with no real cloud
mgf-cloud-web --provider fake

The console needs a login

Every launch prints a fresh token to stderr; paste it into the form at http://127.0.0.1:8787/login.

$ mgf-cloud-web --provider fake
mgf-cloud-web console: http://127.0.0.1:8787/login
console login token: <a fresh 43-character token>
  (paste it into the login form — it is not in any URL or log)

The token is never put in a URL, a redirect or a log, and it is gone when the process exits. Beyond the login, the console validates a per-session CSRF field, an exact Origin and an allow-listed Host on every state change — and refuses a non-loopback --host unless you pass --allow-remote, which adds no remote authentication and only belongs behind an authenticated TLS-terminating reverse proxy. Destructive actions bind to the resource's immutable id and need an explicit confirmation.

The what, the why, and — importantly — what it does not defend are in docs/reference/CONSOLE_SECURITY.md (finding SA-12 of the 2026-09-05 external security review).

Install

uv tool install --editable '.' \
  --index-url 'https://195.15.203.250.sslip.io/magogi/prod/+simple/'

Relationship to mgf-cloud

mgf-cloud still ships its own mgf-cloud web command during the transition. mgf-cloud-web is the refactored, brand-styled successor; once it is the default launcher, the [web] extra in mgf-cloud will be deprecated.