diff --git a/openstack_dashboard/dashboards/admin/ngflavors/templates/ngflavors/index.html b/openstack_dashboard/dashboards/admin/ngflavors/templates/ngflavors/index.html
index 5307f255d7..1bf9a8a0a7 100644
--- a/openstack_dashboard/dashboards/admin/ngflavors/templates/ngflavors/index.html
+++ b/openstack_dashboard/dashboards/admin/ngflavors/templates/ngflavors/index.html
@@ -3,7 +3,7 @@
{% block title %}{% trans "Flavors" %}{% endblock %}
{% block page_header %}
-
+
{% endblock %}
{% block ng_route_base %}
diff --git a/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.js b/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.js
index b8bc4487c1..b5b7d3f4da 100644
--- a/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.js
+++ b/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.js
@@ -40,6 +40,8 @@
ctrl.flavors = [];
ctrl.iflavors = [];
+ ctrl.searchFacets = getSearchFacets();
+
init();
////////////////////////////////
@@ -52,5 +54,34 @@
ctrl.flavors = response.data.items;
}
+ function getSearchFacets() {
+ return [
+ {
+ label: gettext('Name'),
+ name: 'name',
+ singleton: true
+ },
+ {
+ label: gettext('VCPUs'),
+ name: 'vcpus',
+ singleton: true
+ },
+ {
+ label: gettext('RAM'),
+ name: 'ram',
+ singleton: true
+ },
+ {
+ label: gettext('Public'),
+ name: 'os-flavor-access:is_public',
+ singleton: true,
+ options: [
+ {label: gettext('Yes'), key: 'true'},
+ {label: gettext('No'), key: 'false'}
+ ]
+ }
+ ];
+ }
+
}
})();
diff --git a/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.spec.js b/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.spec.js
index 17be0fc3c1..ab7ceabd60 100644
--- a/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.spec.js
+++ b/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.controller.spec.js
@@ -51,6 +51,16 @@
return controller('FlavorsTableController', {});
}
+ it('should set facets for search', function () {
+ var ctrl = createController();
+ expect(ctrl.searchFacets).toBeDefined();
+ expect(ctrl.searchFacets.length).toEqual(4);
+ expect(ctrl.searchFacets[0].name).toEqual('name');
+ expect(ctrl.searchFacets[1].name).toEqual('vcpus');
+ expect(ctrl.searchFacets[2].name).toEqual('ram');
+ expect(ctrl.searchFacets[3].name).toEqual('os-flavor-access:is_public');
+ });
+
it('should invoke nova apis', function() {
spyOn(novaAPI, 'getFlavors').and.callThrough();
diff --git a/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.html b/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.html
index a551f9e362..2663bfdfb3 100644
--- a/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.html
+++ b/openstack_dashboard/dashboards/admin/static/dashboard/admin/flavors/table/flavors-table.html
@@ -10,8 +10,8 @@