diff --git a/starlingx-dashboard/centos/build_srpm.data b/starlingx-dashboard/centos/build_srpm.data index 38f9ad7e..f94364dd 100644 --- a/starlingx-dashboard/centos/build_srpm.data +++ b/starlingx-dashboard/centos/build_srpm.data @@ -1,2 +1,2 @@ SRC_DIR="starlingx-dashboard" -TIS_PATCH_VER=24 +TIS_PATCH_VER=25 diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/fm.py b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/fm.py index 6d395b7a..38f0dc06 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/fm.py +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/fm.py @@ -107,6 +107,10 @@ def alarm_list(request, search_opts=None): paginate = False include_suppress = False + # If expand is set to true then all the data of the alarm is returned not + # just a subset. + expand = False + if search_opts is None: search_opts = {} @@ -124,6 +128,9 @@ def alarm_list(request, search_opts=None): elif suppression == FM_SUPPRESS_HIDE: include_suppress = False + if "expand" in search_opts: + expand = True + if 'paginate' in search_opts: paginate = search_opts.pop('paginate') if paginate: @@ -131,7 +138,7 @@ def alarm_list(request, search_opts=None): alarms = fmclient(request).alarm.list( limit=limit, marker=marker, sort_key=sort_key, sort_dir=sort_dir, - include_suppress=include_suppress) + include_suppress=include_suppress, expand=expand) has_more_data = False if paginate and len(alarms) > page_size: @@ -178,6 +185,11 @@ class EventLog(base.APIResourceWrapper): def event_log_list(request, search_opts=None): paginate = False + + # If expand is set to true then all the data of the alarm is returned not + # just a subset. + expand = False + if search_opts is None: search_opts = {} @@ -210,13 +222,17 @@ def event_log_list(request, search_opts=None): elif suppression == FM_SUPPRESS_HIDE: include_suppress = False + if "expand" in search_opts: + expand = True + logs = fmclient(request)\ .event_log.list(q=query, limit=limit, marker=marker, alarms=alarms, logs=logs, - include_suppress=include_suppress) + include_suppress=include_suppress, + expand=expand) has_more_data = False if paginate and len(logs) > page_size: diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/rest/fm.py b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/rest/fm.py index b2be0521..50e45398 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/rest/fm.py +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/api/rest/fm.py @@ -35,7 +35,8 @@ class Alarms(generic.View): @rest_utils.ajax() def get(self, request): - search_opts = {'suppression': 'SUPPRESS_SHOW'} + search_opts = {'suppression': 'SUPPRESS_SHOW', 'expand': True} + result = fm.alarm_list(request, search_opts=search_opts) return {'items': [sc.to_dict() for sc in result]} @@ -59,7 +60,8 @@ class Events(generic.View): @rest_utils.ajax() def get(self, request): - search_opts = {'suppression': 'SUPPRESS_SHOW'} + search_opts = {'suppression': 'SUPPRESS_SHOW', 'expand': True} + result, _more = fm.event_log_list(request, search_opts=search_opts) return {'items': [sc.to_dict() for sc in result]} diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/app/core/fault_management/fm.service.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/app/core/fault_management/fm.service.js index 489b2677..c9fb68bc 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/app/core/fault_management/fm.service.js +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/app/core/fault_management/fm.service.js @@ -49,7 +49,7 @@ } function getAlarms() { - var results = apiService.get('/api/fm/alarm_list/?include_suppress=True') + var results = apiService.get('/api/fm/alarm_list/') return results .error(function () { toastService.clearErrors(); diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/active_alarms.module.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/active_alarms.module.js index be980e6a..f769387a 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/active_alarms.module.js +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/active_alarms.module.js @@ -68,8 +68,7 @@ .tableColumns .append({ id: 'alarm_id', - priority: 1, - urlFunction: service.urlFunction + priority: 1 }) .append({ id: 'reason_text', diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/details/drawer.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/details/drawer.html index e7f6586e..2343032d 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/details/drawer.html +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/active_alarms/details/drawer.html @@ -1,5 +1,7 @@ + property-groups="[['uuid', 'alarm_state', 'alarm_type', 'entity_type_id'], + ['service_affecting', 'mgmt_affecting', 'probable_cause'], + ['proposed_repair_action']]"> diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/details.module.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/details.module.js deleted file mode 100644 index c4de128e..00000000 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/details.module.js +++ /dev/null @@ -1,64 +0,0 @@ -/** - * Licensed under the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. You may obtain - * a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations - * under the License. - */ -/** - * Copyright (c) 2019 Wind River Systems, Inc. - * - * SPDX-License-Identifier: Apache-2.0 - * - */ - -(function() { - 'use strict'; - - /** - * @ngdoc overview - * @ngname horizon.dashboard.fault_management.events.details - * - * @description - * Provides details features for Event. - */ - angular - .module('horizon.dashboard.fault_management.events.details', [ - 'horizon.app.core', - 'horizon.framework.conf' - ]) - .run(registerDetails); - - registerDetails.$inject = [ - 'horizon.app.core.openstack-service-api.fm', - 'horizon.dashboard.fault_management.events.basePath', - 'horizon.dashboard.fault_management.events.resourceType', - 'horizon.framework.conf.resource-type-registry.service' - ]; - - function registerDetails( - api, - basePath, - resourceType, - registry - ) { - registry.getResourceType(resourceType) - .setLoadFunction(loadFunction) - .detailsViews.append({ - id: 'eventsDetailsOverview', - name: gettext('Overview'), - template: basePath + 'details/overview.html' - }); - - - function loadFunction(uuid) { - return api.getEvent(uuid); - } - } -})(); diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/drawer.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/drawer.html index d7fa1016..ec86000e 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/drawer.html +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/drawer.html @@ -1,5 +1,8 @@ + property-groups="[['uuid', 'event_log_type', 'suppression'], + ['event_type', 'entity_type_id', 'service_affecting'], + ['probable_cause', 'proposed_repair_action']]"> + diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/overview.controller.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/overview.controller.js deleted file mode 100644 index a2ccfcc4..00000000 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/overview.controller.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Licensed under the Apache License, Version 2.0 (the 'License'); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an 'AS IS' BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** - * Copyright (c) 2019 Wind River Systems, Inc. - * - * SPDX-License-Identifier: Apache-2.0 - * - */ - -(function() { - "use strict"; - - angular - .module('horizon.dashboard.fault_management.events') - .controller('horizon.dashboard.fault_management.events.OverviewController', controller); - - controller.$inject = [ - '$scope', - 'horizon.dashboard.fault_management.events.service' - ]; - - function controller( - $scope, eventService - ) { - var ctrl = this; - ctrl.event = {}; - - $scope.context.loadPromise.then(onGetEvent); - - function onGetEvent(item) { - - eventService.setEventType(item.data); - - ctrl.event = item.data; - } - } -})(); diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/overview.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/overview.html deleted file mode 100644 index d3b5a02c..00000000 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/details/overview.html +++ /dev/null @@ -1,17 +0,0 @@ -
-
-
-

{$ ctrl.event.state $} - {$ ctrl.event.event_log_id $} - {$ctrl.event.reason_text $}

-
- - -
-
-
diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.module.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.module.js index d85c5faf..8235c649 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.module.js +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.module.js @@ -30,8 +30,7 @@ */ angular .module('horizon.dashboard.fault_management.events', [ - 'ngRoute', - 'horizon.dashboard.fault_management.events.details' + 'ngRoute' ]) .constant('horizon.dashboard.fault_management.events.resourceType', 'OS::StarlingX::Events') .run(run) @@ -76,8 +75,7 @@ }) .append({ id: 'event_log_id', - priority: 1, - urlFunction: service.urlFunction + priority: 1 }) .append({ id: 'reason_text', diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.js index 905b95c5..a4348631 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.js +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.js @@ -27,7 +27,6 @@ service.$inject = [ '$filter', - 'horizon.app.core.detailRoute', 'horizon.app.core.openstack-service-api.fm', '$q', 'horizon.framework.conf.resource-type-registry.service', @@ -44,13 +43,12 @@ * but do not need to be restricted to such use. Each exposed function * is documented below. */ - function service($filter, detailRoute, api, $q, registry, resourceType) { + function service($filter, api, $q, registry, resourceType) { var showSuppressColumn = null; return { getPromise: getPromise, - urlFunction: urlFunction, suppressColAllowedPromiseFunction: suppressColAllowedPromiseFunction, getSuppressionList: getSuppressionList, setEventType: setEventType @@ -83,10 +81,6 @@ } } - function urlFunction(item) { - return detailRoute + 'OS::StarlingX::Events/' + item.uuid; - } - function getSuppressionList() { var include_unsuppressed = false; return api.getEventsSuppression(include_unsuppressed).then(modifyResponseSupp); diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.spec.js b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.spec.js index 424742b5..5a7a1c7b 100644 --- a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.spec.js +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/static/dashboard/fault_management/events/events.service.spec.js @@ -46,14 +46,6 @@ })); }); - describe('urlFunction', function() { - it("get url", inject(function($injector) { - var detailRoute = $injector.get('horizon.app.core.detailRoute'); - var result = service.urlFunction({uuid:"123abc"}); - expect(result).toBe(detailRoute + "OS::StarlingX::Events/123abc"); - })); - }); - }); })();