hsato03 opened a new pull request, #13412:
URL: https://github.com/apache/cloudstack/pull/13412
### Description
When logging in via the ACS GUI, if the user does not belong to the `ROOT`
domain, its full domain path must be specified.
With that, the GUI whitelabel runtime system has been extended with the
`loginBaseDomain` parameter, which allows administrators to specify a base
domain for a theme, enabling users to log in without specifying the domain or
by providing the domain relative path.
For example, when creating a theme specifying the `/domain1/` domain as the
base, instead of the user typing `/domain1/domain2` when logging in, they will
only need to provide `domain2`.
Furthermore, the new parameter only works with the `commonNames` parameter.
### Types of changes
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Bug fix (non-breaking change which fixes an issue)
- [X] Enhancement (improves an existing feature and functionality)
- [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
- [ ] Build/CI
- [ ] Test (unit or integration test code)
### Feature/Enhancement Scale or Bug Severity
#### Feature/Enhancement Scale
- [ ] Major
- [X] Minor
#### Bug Severity
- [ ] BLOCKER
- [ ] Critical
- [ ] Major
- [ ] Minor
- [ ] Trivial
### Screenshots (if appropriate):
### How Has This Been Tested?
1. I created the domain `d1`;
2. I created a theme with `loginBaseDomain` being `d1`;
```
(local) 👻 > create guitheme name=theme css="@import
url('https://arquivos.scclouds.com.br/css-themes/scclouds-theme.css')"
loginbasedomain="d1" commonnames="d1.local" ispublic=true
{
"guiThemes": {
"commonnames": "d1.local",
"created": "2026-06-12T18:12:32+0000",
"css": "@import
url('https://arquivos.scclouds.com.br/css-themes/scclouds-theme.css')",
"id": "fad8fdcb-0dc2-4c02-9f68-e7ec6c2032bd",
"ispublic": true,
"loginbasedomain": "d1",
"name": "theme",
"recursivedomains": false
}
}
```
3. When accessing the ACS GUI via the `d1.local` URL, I verified that it was
not necessary to specify the domain to access a `d1` account;
4. When accessing the ACS GUI using any other URL (via IP address, for
example), I verified that it was necessary to enter the domain to access a `d1`
account.
#### How did you try to break this feature and the system with this change?
<!-- see how your change affects other areas of the code, etc. -->
<!-- Please read the
[CONTRIBUTING](https://github.com/apache/cloudstack/blob/main/CONTRIBUTING.md)
document -->
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]