Notify users when upgrades are available or restart is required for network or VPC#7610
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #7610 +/- ##
===========================================
Coverage 15.57% 15.57%
- Complexity 12047 12048 +1
===========================================
Files 5505 5505
Lines 482621 482680 +59
Branches 61174 60013 -1161
===========================================
+ Hits 75176 75188 +12
- Misses 399141 399187 +46
- Partials 8304 8305 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
|
@vishesh92 I suppose this a screenshot for admin; a user I would prefer a single alert (too many makes the UI look poor). Click that could open a form with more details. Also, can we merge notification for both guest networks and VPCs? (for the end user these are just networks. Alternatively; you can display as part of the dashboard (perhaps not top of the UI) - let's discuss. Let me try if the demo env can be used to test changes for further feedback. |
|
@rohityadavcloud a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress. |
|
@rohityadavcloud I manually changed the value of |
|
UI build: ✔️ |
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
shwstppr
left a comment
There was a problem hiding this comment.
Looks okay largely but existing comments needs to be addressed
|
@vishesh92 can you please look into merge conflicts and outstanding comments? SHould this be considered for 4.19? |
|
@shwstppr Have some changes that needs to be done. Leaving this PR for 4.19.1 or 4.20. I will update the milestone. |
|
@vishesh92 Is this PR targeted for 4.19.1? If so, please rebase and update target branch. |
|
@vishesh92 Please resolve the conflicts, & check/address the comments. Thanks. |
87ce972 to
932bd69
Compare
|
@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10883 |
479f9c4 to
8854016
Compare
|
@blueorangutan package |
|
@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10903 |
8854016 to
27046cb
Compare
|
@blueorangutan package |
|
@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10909 |
|
@blueorangutan package |
|
@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10922 |
|
|
||
| api('listNetworks', { restartrequired: true, forvpc: false }).then(response => { | ||
| if (response.listnetworksresponse.count > 0) { | ||
| store.dispatch('AddHeaderNotice', { | ||
| key: 'NETWORK_RESTART_REQUIRED', | ||
| title: i18n.global.t('label.network.restart.required'), | ||
| description: i18n.global.t('message.network.restart.required'), | ||
| path: '/guestnetwork/', | ||
| query: { restartrequired: true, forvpc: false }, | ||
| status: 'done', | ||
| timestamp: new Date() | ||
| }) | ||
| } | ||
| }).catch(ignored => {}) | ||
|
|
||
| api('listVPCs', { restartrequired: true }).then(response => { | ||
| if (response.listvpcsresponse.count > 0) { | ||
| store.dispatch('AddHeaderNotice', { | ||
| key: 'VPC_RESTART_REQUIRED', | ||
| title: i18n.global.t('label.vpc.restart.required'), | ||
| description: i18n.global.t('message.vpc.restart.required'), | ||
| path: '/vpc/', | ||
| query: { restartrequired: true }, | ||
| status: 'done', | ||
| timestamp: new Date() | ||
| }) | ||
| } | ||
| }).catch(ignored => {}) |
There was a problem hiding this comment.
@vishesh92 are these used? We are showing a header notice and then also a warn label for individual network/vpc?
|
@DaanHoogland a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress. |
|
UI build: ✔️ |
DaanHoogland
left a comment
There was a problem hiding this comment.
lgtm, tested in qa and a lab env by manipulating the (meta) data storages
…etwork or VPC (apache#7610) Co-authored-by: Harikrishna <harikrishna.patnala@gmail.com> Co-authored-by: dahn <daan.hoogland@gmail.com>
|
Good feature, but anything that makes CloudStack rely on external resources should be disable-able. Some/Many corporate environments are run in closed down intranets where this is causing UI errors and generating reports from users. I know of at least 2 such situations. |


Description
This PR adds a feature in UI to notify when:
On login, if there are any networks or VPCs which need restart, insert a message in the notification panel.
This PR also adds a small UI improvement in the UI to show which network/UI requires restart and filtering networks/VPCs which require restart.
P.S. - As of now, after upgrading ACS
restart requiredis not set totruefor network or VPC even if the router needs an upgrade.Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
Custom alert message (configured in config.json)
This is useful if the operator wants to display a custom message to the users. The operator needs to set the message by setting the value of
alertMessagein theconfig.json. Type of message can be configured byalertMessageTypeinconfig.json. Possible values aresuccess,info,warninganderror.Details
New release available for cloudstack
Details
Restart required notification
Details
Show in UI that a restart is required
Details
Add filter on restart required
Details
How Has This Been Tested?