ui: reset configuration allowed only when value not default#11728
ui: reset configuration allowed only when value not default#11728DaanHoogland merged 2 commits intoapache:mainfrom
Conversation
Fixes apache#11643 Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #11728 +/- ##
============================================
- Coverage 17.56% 17.56% -0.01%
+ Complexity 15548 15545 -3
============================================
Files 5913 5913
Lines 529440 529454 +14
Branches 64670 64674 +4
============================================
- Hits 93018 93005 -13
- Misses 425964 425991 +27
Partials 10458 10458
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@shwstppr a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress. |
|
UI build: ✔️ |
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
…dedaultvalue Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
|
@DaanHoogland a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress. |
|
UI build: ✔️ |
|
did some testing in qa and will have to retry in a 4.22 env as resetting at domain level did not seem to work. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 15856 |
|
[SF] Trillian Build Failed (tid-14884) |
ok, found the quirk:
I am not sure if the UI contains enough data to fix this, but it is acceptable to me. (i.e. test succeeds) |
|
@blueorangutan package |
|
@RosiKyu a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 16528 |
WIP (testing)TC1: Reset button disabled for default values (Global Configuration)Objective: Test Steps:
Expected Result: The reset button should be disabled/greyed out and non-interactive when the current value (86400) equals the default value (86400). Actual Result: The reset button is greyed out and cannot be interacted with. The button shows tooltip "Reset to default value" but does not respond to clicks. Test Evidence:
TC2: Reset button enabled for non-default values (Global Configuration)Objective: Test Steps:
Expected Result:
Actual Result:
Test Evidence:
TC3: UI refresh after value update and resetObjective: Test Steps:
Expected Result:
Actual Result:
Test Evidence:
Screencast.from.2026-01-27.14-31-33.webmTC4: Zone-level configuration reset behaviorObjective: Test Steps:
Expected Result:
Actual Result:
Test Evidence:
Screencast.from.2026-01-27.14-35-05.webm |
There was a problem hiding this comment.
LGTM
Tested reset button enable/disable functionality at Global, Zone, Cluster, Account, and Domain levels - all working as expected.
Test Results Summary
| TC# | Test Case | Scope | Status |
|---|---|---|---|
| TC1 | Reset button disabled for default values | Global | PASSED |
| TC2 | Reset button enabled for non-default values | Global | PASSED |
| TC3 | UI refresh after value update and reset | Global | PASSED |
| TC4 | Zone-level configuration reset behavior | Zone | PASSED |
| TC5 | Cluster-level configuration reset behavior | Cluster | PASSED |
| TC6 | Account-level configuration reset behavior | Account | PASSED |
| TC7 | Domain-level configuration reset behavior | Domain | PASSED |
Detailed Test Execution Report
TC1: Reset button disabled for default values (Global Configuration)
Objective:
Verify that the reset configuration button is disabled (greyed out) when the current configuration value equals the default value.
Test Steps:
1.. Logged in as admin user
3. Navigated to Configuration → Global Settings
4. Searched for configuration: account.cleanup.interval
5. Observed the reset (reload) icon button state
6. Attempted to click the reset button
Expected Result: The reset button should be disabled/greyed out and non-interactive when the current value (86400) equals the default value (86400).
Actual Result: The reset button is greyed out and cannot be interacted with. The button shows tooltip "Reset to default value" but does not respond to clicks.
Test Evidence:
- Configuration tested:
account.cleanup.interval - Current value:
86400 - Default value:
86400 - Reset button state: Disabled (greyed out)
- Comparison test:
hostconfiguration (value:10.0.34.171, default:localhost) shows reset button as enabled/clickable, confirming the differential behavior works correctly.
TC2: Reset button enabled for non-default values (Global Configuration)
Objective:
Verify that the reset configuration button is enabled when the current configuration value differs from the default value, and that after reset the button becomes disabled.
Test Steps:
- Navigated to Configuration → Global Settings
- Searched for configuration:
host - Observed the reset button state (enabled, not greyed out)
- Clicked the reset button
- Confirmation dialog appeared: "Are you sure you want reset configuration - host?"
- Clicked "Yes" to confirm reset
- Observed the value change and reset button state after reset
Expected Result:
- Reset button should be enabled when value differs from default
- Clicking reset should show confirmation dialog
- After reset, value should change to default and reset button should become disabled
Actual Result:
- Reset button was enabled (darker icon, clickable) when value was
10.0.34.171 - Confirmation dialog appeared with message "Reset to default value - Are you sure you want reset configuration - host?"
- After clicking "Yes", value changed from
10.0.34.171tolocalhost - Reset button became greyed out/disabled after reset (UI updated without page refresh)
Test Evidence:
-
Configuration tested:
host -
Value before reset:
10.0.34.171 -
Default value:
localhost -
Value after reset:
localhost -
Reset button state before: Enabled (clickable)
-
Reset button state after: Disabled (greyed out)
-
Confirmation dialog: Displayed correctly
-
before reset
- during
- after reset
TC3: UI refresh after value update and reset
Objective:
Verify the complete cycle: modify a configuration value, confirm reset button becomes enabled, perform reset, and confirm reset button becomes disabled again - all without manual page refresh.
Test Steps:
- Navigated to Configuration → Global Settings
- Searched for configuration:
expunge.delay - Verified initial state: value
86400equals default86400, reset button disabled - Clicked on value field and modified value to
90000 - Clicked save button
- Observed success notification "Setting Updated: expunge.delay"
- Verified reset button became enabled after save
- Clicked reset button
- Confirmation dialog appeared: "Are you sure you want reset configuration - expunge.delay?"
- Clicked "Yes" to confirm
- Observed success notification "Setting expunge.delay Reset to default value"
- Verified value returned to
86400and reset button became disabled
Expected Result:
- Reset button should be disabled when value equals default
- After modifying value, reset button should become enabled (without page refresh)
- After reset, value should return to default and reset button should become disabled (without page refresh)
Actual Result:
- Initial state: value
86400, reset button disabled (greyed out) - After modifying to
90000and saving: reset button became enabled (darker icon, clickable) - Confirmation dialog displayed correctly
- After reset: value returned to
86400, reset button became disabled (greyed out) - UI updated dynamically without requiring manual page refresh
Test Evidence:
- Configuration tested:
expunge.delay - Initial value:
86400(default) - Modified value:
90000 - Value after reset:
86400 - Success notification on update: "Setting Updated: expunge.delay"
- Success notification on reset: "Setting expunge.delay Reset to default value"
- Status notification: "Please restart your management server(s) for your new settings to take effect"
- Reset button state transitions: Disabled → Enabled (after edit) → Disabled (after reset)
Screencast.from.2026-01-27.14-31-33.webm
TC4: Zone-level configuration reset behavior
Objective:
Verify that the reset button behavior works correctly at the Zone scope level.
Test Steps:
- Navigated to Infrastructure → Zones
- Selected zone:
ref-trl-10742-k-Mol9-rositsa-kyuchukova - Clicked on Settings tab
- Verified reset button states for configurations
Expected Result:
- Reset button disabled for configurations where value equals default
- Reset button enabled for configurations where value differs from default
Actual Result:
- Configurations with default values show reset button as inactive/greyed out
- Configurations with modified values show reset button as enabled and can be reset
Test Evidence:
- Zone tested:
ref-trl-10742-k-Mol9-rositsa-kyuchukova - Zone ID:
f5705cb8-e9dc-4582-aecc-f55bb443198c - Reset button behavior confirmed consistent with Global Settings behavior
Screencast.from.2026-01-27.14-35-05.webm
TC5: Cluster-level configuration reset behavior (UPDATED)
Objective:
Verify that the reset button behavior works correctly at the Cluster scope level.
Test Steps:
- Navigated to Infrastructure → Clusters → p1-c1
- Clicked on Settings tab
- Verified reset button states for various configurations
Expected Result:
- Reset button enabled when value differs from default
- Reset button disabled when value equals default
Actual Result:
- Reset button correctly shows enabled/disabled states based on value vs default comparison
Note:
Initial observation of cpu.overprovisioning.factor showing value 2.0 was due to inheritance from global settings, not an explicit cluster-level override. This is expected behavior.
**Status: PASSED **
TC6: Account-level configuration reset behavior
Objective:
Verify that the reset button behavior works correctly at the Account scope level.
Test Steps:
- Navigated to Accounts
- Selected an account (e.g., admin)
- Clicked on Settings tab
- Verified reset button states for configurations
Expected Result:
- Reset button disabled for configurations where value equals default
- Reset button enabled for configurations where value differs from default
Actual Result:
- Reset button correctly shows disabled state for default values
- Reset button correctly shows enabled state for modified values
Test Evidence:
- Scope tested: Account-level Settings
- Reset button behavior: Consistent with Global, Zone, and Cluster levels
**Status: PASSED **
TC7: Domain-level configuration reset behavior
Objective:
Verify that the reset button behavior works correctly at the Domain scope level.
Test Steps:
- Navigated to Domains
- Selected ROOT domain
- Clicked on Settings tab
- Verified reset button states for configurations
Expected Result:
- Reset button disabled for configurations where value equals default
- Reset button enabled for configurations where value differs from default
Actual Result:
- Reset button correctly shows disabled state for default values
Test Evidence:
- Domain tested: ROOT
- Configurations observed:
- "Allow user view all domain accounts" (allow.user.view.all.domain.accounts): toggle OFF, reset button disabled
- "Allow user view all zones" (allow.user.view.all.zones): toggle ON, reset button disabled
- Both configurations at default values, reset buttons correctly disabled
**Status: PASSED **
Description
Fixes #11643
Disable reset configuration action when the current value for the config is its default value
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?
reset-cfg-disabled.mp4