-
Notifications
You must be signed in to change notification settings - Fork 11
♻️ Initial tenant config #1533
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
base: main
Are you sure you want to change the base?
♻️ Initial tenant config #1533
Conversation
…json for centralized configuration and update project files to link and load settings.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Introduces an initial tenant configuration system (TenantSettings) intended to centralize tenant-specific/white-label settings and make them available across hosts.
Changes:
- Added
TenantSettingsmodel + validation/DI wiring viaAddTenantSettings. - Introduced a shared
appsettings.TenantSettings.jsonand wired it into MobileUI (embedded) and WebAPI (copied + loaded). - Added unit tests covering configuration binding and validation scenarios.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/Application.UnitTests/Common/Configuration/TenantSettingsTests.cs | Adds unit tests for binding + validation (currently includes an invalid test expectation). |
| src/WebAPI/WebAPI.csproj | Links shared tenant settings JSON into WebAPI output (publish handling needs attention). |
| src/WebAPI/Program.cs | Loads appsettings.TenantSettings.json into configuration before DI setup. |
| src/MobileUI/MobileUI.csproj | Embeds shared tenant settings JSON as an assembly resource. |
| src/MobileUI/MauiProgram.cs | Loads embedded JSON into configuration and registers TenantSettings. |
| src/Common/Configuration/appsettings.TenantSettings.json | Adds the initial default tenant settings payload. |
| src/Common/Configuration/TenantSettingsExtensions.cs | Adds DI registration + manual validation helpers for TenantSettings. |
| src/Common/Configuration/TenantSettings.cs | Adds the TenantSettings configuration model with nested sections. |
| src/Application/ConfigureServices.cs | Registers TenantSettings as part of Application service registration. |
| src/AdminUI/AdminUI.csproj | Copies shared tenant settings JSON into wwwroot for AdminUI. |
tests/Application.UnitTests/Common/Configuration/TenantSettingsTests.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
|
The settings structure looks, I'm just wondering if they should be in the DB? That way we can make minor adjustments (mostly for AdminUI but to limited extend MobileUI). |
#1485
Adds a core tenant config system, to be expanded in future PBIs.
No