Skip to content

refactor: ui separation from controller - #810

Open
Tbaile wants to merge 6 commits into
mainfrom
ui-separation
Open

Tbaile wants to merge 6 commits into
mainfrom
ui-separation

Conversation

@Tbaile

@Tbaile Tbaile commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator
  • Standalone bundle can now be served directly by a unit proxied at /<uuid>/ behind a controller, instead of always going through the controller's legacy embedded route — deployment
    location (unit / proxied unit / controller-embedded) is derived from the document path and build mode via a new lib/deployment.ts, replacing the old isStandaloneMode flag. Units
    advertise support via ui_version; older units keep the legacy path
  • API endpoints, localStorage keys, and user preferences are now scoped per deployment (lib/config.ts, new lib/storage.ts), so multiple proxied unit UIs sharing the controller's
    origin no longer collide on session, remembered username, or preferences
  • Static assets (logos, favicon, branding.js) moved from public/ into the compiled bundle and referenced relatively (vite.config.ts base ./, %BASE_URL%), fixing asset and API
    paths that broke when the UI is served under a controller's path prefix instead of the origin root
  • Proxied unit whose session expired now sends the operator back to the controller instead of showing a login form it can't use, since the unit's credentials live in the controller, not
    the unit itself
  • Added an "installed packages" list to the system update page

TODO: Check if RebootAndShutdownView.vue's availability-poll approach actually works when the unit is managed by a controller
TODO: Remove InstalledPackagesModal.vue's when testing is done, is used just to check if the UI gets proxied correctly

Closes: NethServer/nethsecurity#1893

@Tbaile
Tbaile requested a review from andre8244 September 22, 2026 09:41
@Tbaile
Tbaile marked this pull request as ready for review September 22, 2026 09:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Controller must render the correct UI for units running any NethSecurity version

1 participant