diff --git a/placement/rc_fields.py b/placement/rc_fields.py index 7eb434c73..ab410860c 100644 --- a/placement/rc_fields.py +++ b/placement/rc_fields.py @@ -41,12 +41,19 @@ class ResourceClass(fields.StringField): IPV4_ADDRESS = 'IPV4_ADDRESS' VGPU = 'VGPU' VGPU_DISPLAY_HEAD = 'VGPU_DISPLAY_HEAD' + # Standard resource class for network bandwidth egress measured in + # kilobits per second. + NET_BW_EGR_KILOBIT_PER_SEC = 'NET_BW_EGR_KILOBIT_PER_SEC' + # Standard resource class for network bandwidth ingress measured in + # kilobits per second. + NET_BW_IGR_KILOBIT_PER_SEC = 'NET_BW_IGR_KILOBIT_PER_SEC' # The ordering here is relevant. If you must add a value, only # append. STANDARD = (VCPU, MEMORY_MB, DISK_GB, PCI_DEVICE, SRIOV_NET_VF, NUMA_SOCKET, NUMA_CORE, NUMA_THREAD, NUMA_MEMORY_MB, - IPV4_ADDRESS, VGPU, VGPU_DISPLAY_HEAD) + IPV4_ADDRESS, VGPU, VGPU_DISPLAY_HEAD, + NET_BW_EGR_KILOBIT_PER_SEC, NET_BW_IGR_KILOBIT_PER_SEC) @classmethod def normalize_name(cls, rc_name): diff --git a/placement/tests/functional/gabbits/resource-classes-policy.yaml b/placement/tests/functional/gabbits/resource-classes-policy.yaml index 51f14b433..1d90db0d6 100644 --- a/placement/tests/functional/gabbits/resource-classes-policy.yaml +++ b/placement/tests/functional/gabbits/resource-classes-policy.yaml @@ -16,7 +16,7 @@ tests: - name: list resource classes GET: /resource_classes response_json_paths: - $.resource_classes.`len`: 12 # Number of standard resource classes + $.resource_classes.`len`: 14 # Number of standard resource classes - name: create resource class POST: /resource_classes diff --git a/placement/tests/functional/gabbits/resource-classes.yaml b/placement/tests/functional/gabbits/resource-classes.yaml index f77b1280b..638b03a33 100644 --- a/placement/tests/functional/gabbits/resource-classes.yaml +++ b/placement/tests/functional/gabbits/resource-classes.yaml @@ -51,7 +51,7 @@ tests: GET: /resource_classes response_json_paths: response_json_paths: - $.resource_classes.`len`: 12 # Number of standard resource classes + $.resource_classes.`len`: 14 # Number of standard resource classes $.resource_classes[0].name: VCPU - name: non admin forbidden @@ -138,9 +138,9 @@ tests: - name: list resource classes after addition of custom res class GET: /resource_classes response_json_paths: - $.resource_classes.`len`: 13 # 12 standard plus 1 custom - $.resource_classes[12].name: $ENVIRON['CUSTOM_RES_CLASS'] - $.resource_classes[12].links[?rel = "self"].href: /resource_classes/$ENVIRON['CUSTOM_RES_CLASS'] + $.resource_classes.`len`: 15 # 14 standard plus 1 custom + $.resource_classes[14].name: $ENVIRON['CUSTOM_RES_CLASS'] + $.resource_classes[14].links[?rel = "self"].href: /resource_classes/$ENVIRON['CUSTOM_RES_CLASS'] - name: update standard resource class bad json PUT: /resource_classes/VCPU