Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Research | Implement a hidden system subtree for canvas-server #7

Open
idncsk opened this issue Apr 21, 2024 · 1 comment
Open

Research | Implement a hidden system subtree for canvas-server #7

idncsk opened this issue Apr 21, 2024 · 1 comment
Assignees
Labels
Research Research / eval task

Comments

@idncsk
Copy link
Member

idncsk commented Apr 21, 2024

Canvas server should export a hidden configuration subtree to easily get an overview of the global setup and the current session from a systems perspective. This should bring all your linked compute devices(and services running on them) into a nice global tree without the need to explicitly configure separate context layers to filter based on topology, preventing the "low-level" infrastructure layout contaminating the context tree.

DoD

  • We should implement internal structures(apps, devices, peers, roles etc) as system layers linked to their own bitmaps (we already did some prep-work to support internal bitmap indexes / reserved ID ranges)
  • A hidden subtree should be structured in-line with the concept of contexts (so dynamic in nature, layer order filters data); as an example, internal "devices" layer in the tree below will link to the same data regardless of where it is placed within the subtree, placing "devices" under a sessionid will filter out only relevant devices for the session.
  • Accessing system layers through the hidden subtree should display internal configuration and debug information
  • This may be a cheap way(..well) to create a universal configuration interface, especially for canvas roles (things like minio, maild etc)

Draft structure

/.canvas
  /agents 
  /apps
  /roles
  /devices
    /<deviceid>
      /apps    
      /roles
      /stats ?
      /data ?
  /peers ?
  /data?
    /<abstraction>
      /note 
      /tab
        /<filter-or-feature-layer-associated-with-the-da>
      /email
  /sessions
    /<sessionid>
      /devices
        /<deviceid>
          /Apps
          /...

/.session
  /.. 
/.user
  /..

Update
We'll also need a system tree to manage layers, as all context path related methods do not remove layers by default!

@idncsk idncsk self-assigned this Apr 21, 2024
@idncsk idncsk added this to Canvas Apr 21, 2024
@idncsk idncsk moved this to Todo in Canvas Apr 21, 2024
@idncsk idncsk added the Research Research / eval task label Apr 21, 2024
@idncsk idncsk moved this from Todo to In Progress in Canvas May 6, 2024
@idncsk idncsk moved this from In Progress to Todo in Canvas May 6, 2024
@idncsk idncsk moved this from Todo to In Progress in Canvas May 20, 2024
@idncsk
Copy link
Member Author

idncsk commented May 20, 2024

Moving to In Progress bc I need to implement better context url validation anyway

@idncsk idncsk added this to Canvas Jul 14, 2024
@idncsk idncsk moved this to Todo in Canvas Jul 14, 2024
@idncsk idncsk removed the status in Canvas Jul 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Research Research / eval task
Projects
Status: No status
Development

No branches or pull requests

1 participant