From b271a336b13c0d8d6b5ef0078412d87040094747 Mon Sep 17 00:00:00 2001 From: Bence Romsics Date: Fri, 6 Jul 2018 15:32:40 +0200 Subject: [PATCH] Placement: constants Introduce a constants file for later use for symbols in Placement, including constants for: * custom trait prefixes * resource class names (though that should be replaced as soon as we have an os-resource-classes package) * known inventory parameters to validate config options Change-Id: I3a5afd04ce8b5919efdb7591e3717742dd27151e Partial-Bug: #1578989 See-Also: https://review.openstack.org/502306 (nova spec) See-Also: https://review.openstack.org/508149 (neutron spec) --- neutron_lib/placement/constants.py | 33 +++++++++++++++++++ .../placement-constants-f2629b98f6fe148f.yaml | 4 +++ 2 files changed, 37 insertions(+) create mode 100644 neutron_lib/placement/constants.py create mode 100644 releasenotes/notes/placement-constants-f2629b98f6fe148f.yaml diff --git a/neutron_lib/placement/constants.py b/neutron_lib/placement/constants.py new file mode 100644 index 000000000..b1d7f40c1 --- /dev/null +++ b/neutron_lib/placement/constants.py @@ -0,0 +1,33 @@ +# Copyright 2018 Ericsson +# +# 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. + +# trait prefixes to be used after CUSTOM_ +TRAIT_PREFIX_VNIC_TYPE = 'VNIC_TYPE_' +TRAIT_PREFIX_PHYSNET = 'PHYSNET_' + +# resource classes +CLASS_NET_BW_EGRESS_KBPS = 'NET_BANDWIDTH_EGRESS_KILOBITS_PER_SECOND' +CLASS_NET_BW_INGRESS_KBPS = 'NET_BANDWIDTH_INGRESS_KILOBITS_PER_SECOND' + +# Optionally reported inventory parameters. Mandatory parameters like 'total' +# are left out intentionally. See also: +# https://developer.openstack.org/api-ref/placement +# /#update-resource-provider-inventory +INVENTORY_OPTIONS = set([ + 'allocation_ratio', + 'max_unit', + 'min_unit', + 'reserved', + 'step_size', + ]) diff --git a/releasenotes/notes/placement-constants-f2629b98f6fe148f.yaml b/releasenotes/notes/placement-constants-f2629b98f6fe148f.yaml new file mode 100644 index 000000000..7a240e529 --- /dev/null +++ b/releasenotes/notes/placement-constants-f2629b98f6fe148f.yaml @@ -0,0 +1,4 @@ +--- +features: + - | + New constants module for Placement: ``neutron_lib.placement.constants``.