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

Expose server settings to Innkeeper UI and Tenant UI via plugin routes #914

Merged
merged 11 commits into from
Nov 16, 2023

Conversation

loneil
Copy link
Contributor

@loneil loneil commented Nov 10, 2023

Plugin

Add in endpoints to the Innkeeper plugin to allow Innkeepers and Tenants to access ACA-Py server config.
There is a unsecured (for multitenancy, secured with x-api-key) endpoint /server/status/config so extend that in the Innkeeper and Tenant endpoints so it can be fetched with tenant JWTs. Also extend it/remove things as appropriate.

Keep the "/server/status/config" pathing, even if it's a bit verbose in these 2 new spots

/innkeeper/server/status/config
image

Add aca-py version, ensure innkeeper wallet key does not get returned.

/tenant/server/status/config
image

Add version, remove a number of things a tenant does not need to access.
See plugins/traction_innkeeper/traction_innkeeper/v1_0/tenant/routes.py in files changed for details.

Tenant UI - Innkeeper

Add a "Server Configuration" page for the Innkeeper that displays a dashboard of

  • These new exposed ACA-Py settings
  • Tenant UI settings
  • Plugin list (unsecured existing aca-py endpoint)
  • Other misc

Break it down into some visual sections for important things.
Allow full settings view with expanders at the bottom
image

Tenant UI - Tenant

Just show the raw data on the Settings page.
I'm not sure how useful this is to a Tenant, but they might need to troubleshoot the default settings vs their own settings, so put it somewhere they can see it.

Maybe we could show "My Setting" vs "Default Setting" for each of these settings on the UI or something in the future... can decide UX needs as we go, but the data is there now.

image

Other

Clean up some hard-coded values we don't need from config

  • Ledgers are now all listed out to the Tenant/Innkeeper in other spots
  • version is now fetched)

Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
jamshale
jamshale previously approved these changes Nov 15, 2023
Copy link
Contributor

@jamshale jamshale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Couple small comments but nothing important.

Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
@loneil loneil changed the title Feature/innkeeper settings Expose server settings to Innkeeper UI and Tenant UI via plugin routes Nov 15, 2023
Signed-off-by: Lucas ONeil <lucasoneil@gmail.com>
@loneil loneil merged commit 85ae68a into main Nov 16, 2023
11 checks passed
@loneil loneil deleted the feature/innkeeperSettings branch December 1, 2023 00: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.

2 participants