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
mgr/dashboard: Forms now wait for all data to load until displayed #34746
Conversation
jenkins test docs |
1 similar comment
jenkins test docs |
src/pybind/mgr/dashboard/frontend/src/app/shared/forms/cd-form.spec.ts
Outdated
Show resolved
Hide resolved
src/pybind/mgr/dashboard/frontend/src/app/shared/directives/form-loading.directive.ts
Show resolved
Hide resolved
...bind/mgr/dashboard/frontend/src/app/shared/components/alert-panel/alert-panel.component.html
Show resolved
Hide resolved
b0e680c
to
6334a23
Compare
jenkins test make check |
src/pybind/mgr/dashboard/frontend/src/app/shared/directives/form-loading.directive.spec.ts
Outdated
Show resolved
Hide resolved
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.
Thanks for addressing my comments so far, one (new) left for my approve ;)
6334a23
to
045c99d
Compare
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.
Thanks for addressing all my comments :D
045c99d
to
965617d
Compare
Add directive to handle the display of the form. It will display the form only when loading is finished. Otherwise it will show a loading message or error message. Add a new class that should be extended by all form components. For now it only has methods for dealing with loading, but this could be improved later. Fixes: https://tracker.ceph.com/issues/44912 Signed-off-by: Tiago Melo <tmelo@suse.com>
The commit adds 2 different parts to show the Telemetry activation notification in the dashboard: 1. The Telemetry activation notification component itself. It contains the definition of the notification panel. 2. The Telemetry notification service. The service is needed to be able to show/hide the notification from: * the component itself (e.g. when clicking the button button) * the Telemetry configuration component (when enabling/disabling Telemetry) * the navigation component (to set the css- classes accordingly) Fixes: https://tracker.ceph.com/issues/45464 Signed-off-by: Tatjana Dehler <tdehler@suse.com> (cherry picked from commit f7e4579) Conflicts: src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts A form loading directive has been introduced in master: ceph#34746 src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.spec.ts The test configuration has been improved in master: ceph#34965
The commit adds 2 different parts to show the Telemetry activation notification in the dashboard: 1. The Telemetry activation notification component itself. It contains the definition of the notification panel. 2. The Telemetry notification service. The service is needed to be able to show/hide the notification from: * the component itself (e.g. when clicking the button button) * the Telemetry configuration component (when enabling/disabling Telemetry) * the navigation component (to set the css- classes accordingly) Fixes: https://tracker.ceph.com/issues/45464 Signed-off-by: Tatjana Dehler <tdehler@suse.com> (cherry picked from commit f7e4579) Conflicts: src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts A form loading directive has been introduced in master: ceph#34746 src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.spec.ts The test configuration has been improved in master: ceph#34965 src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.html src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.spec.ts The alert component has been migrated from ngx-bootstrap to ng-boostrap in master: ceph#35297 TestBed.get has been replaced by TestBed.inject in master: ceph#34934 src/pybind/mgr/dashboard/frontend/src/app/shared/services/telemetry-notification.service.spec.ts TestBed.get has been replaced by TestBed.inject in master: ceph#34934
The commit adds 2 different parts to show the Telemetry activation notification in the dashboard: 1. The Telemetry activation notification component itself. It contains the definition of the notification panel. 2. The Telemetry notification service. The service is needed to be able to show/hide the notification from: * the component itself (e.g. when clicking the button button) * the Telemetry configuration component (when enabling/disabling Telemetry) * the navigation component (to set the css- classes accordingly) Fixes: https://tracker.ceph.com/issues/45464 Signed-off-by: Tatjana Dehler <tdehler@suse.com> (cherry picked from commit f7e4579) Conflicts: src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts A form loading directive has been introduced in master: ceph#34746 src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.spec.ts The test configuration has been improved in master: ceph#34965 src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.html src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.spec.ts The alert component has been migrated from ngx-bootstrap to ng-boostrap in master: ceph#35297 TestBed.get has been replaced by TestBed.inject in master: ceph#34934 src/pybind/mgr/dashboard/frontend/src/app/shared/services/telemetry-notification.service.spec.ts TestBed.get has been replaced by TestBed.inject in master: ceph#34934
The commit adds 2 different parts to show the Telemetry activation notification in the dashboard: 1. The Telemetry activation notification component itself. It contains the definition of the notification panel. 2. The Telemetry notification service. The service is needed to be able to show/hide the notification from: * the component itself (e.g. when clicking the button button) * the Telemetry configuration component (when enabling/disabling Telemetry) * the navigation component (to set the css- classes accordingly) Fixes: https://tracker.ceph.com/issues/45464 Signed-off-by: Tatjana Dehler <tdehler@suse.com> (cherry picked from commit f7e4579) Conflicts: src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts A form loading directive has been introduced in master: ceph#34746 src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.spec.ts The test configuration has been improved in master: ceph#34965 src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.html src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.spec.ts The alert component has been migrated from ngx-bootstrap to ng-boostrap in master: ceph#35297 TestBed.get has been replaced by TestBed.inject in master: ceph#34934 src/pybind/mgr/dashboard/frontend/src/app/shared/services/telemetry-notification.service.spec.ts TestBed.get has been replaced by TestBed.inject in master: ceph#34934 The backport contains one commit less (39a26ae is missing) than the original pull request because the migration from alert to ngb-alert (ceph#35297) has not been backported.
The commit adds 2 different parts to show the Telemetry activation notification in the dashboard: 1. The Telemetry activation notification component itself. It contains the definition of the notification panel. 2. The Telemetry notification service. The service is needed to be able to show/hide the notification from: * the component itself (e.g. when clicking the button button) * the Telemetry configuration component (when enabling/disabling Telemetry) * the navigation component (to set the css- classes accordingly) Fixes: https://tracker.ceph.com/issues/45464 Signed-off-by: Tatjana Dehler <tdehler@suse.com> (cherry picked from commit f7e4579) Conflicts: src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts A form loading directive has been introduced in master: ceph#34746 src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.spec.ts The test configuration has been improved in master: ceph#34965 src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.html src/pybind/mgr/dashboard/frontend/src/app/shared/components/telemetry-notification/telemetry-notification.component.spec.ts The alert component has been migrated from ngx-bootstrap to ng-boostrap in master: ceph#35297 TestBed.get has been replaced by TestBed.inject in master: ceph#34934 src/pybind/mgr/dashboard/frontend/src/app/shared/services/telemetry-notification.service.spec.ts TestBed.get has been replaced by TestBed.inject in master: ceph#34934 The backport contains one commit less (39a26ae is missing) than the original pull request because the migration from alert to ngb-alert (ceph#35297) has not been backported.
Add directive to handle the display of the form.
It will display the form only when loading is finished.
Otherwise it will show a loading message or error message.
Add a new class that should be extended by all form components.
For now it only has methods for dealing with loading,
but this could be improved later.
Fixes: https://tracker.ceph.com/issues/44912
Signed-off-by: Tiago Melo tmelo@suse.com
Checklist
Show available Jenkins commands
jenkins retest this please
jenkins test classic perf
jenkins test crimson perf
jenkins test signed
jenkins test make check
jenkins test make check arm64
jenkins test submodules
jenkins test dashboard
jenkins test dashboard backend
jenkins test docs
jenkins render docs
jenkins test ceph-volume all
jenkins test ceph-volume tox