summaryrefslogtreecommitdiff
path: root/nova/api/validation/extra_specs/powervm.py
diff options
context:
space:
mode:
Diffstat (limited to 'nova/api/validation/extra_specs/powervm.py')
-rw-r--r--nova/api/validation/extra_specs/powervm.py271
1 files changed, 0 insertions, 271 deletions
diff --git a/nova/api/validation/extra_specs/powervm.py b/nova/api/validation/extra_specs/powervm.py
deleted file mode 100644
index 58ef793777..0000000000
--- a/nova/api/validation/extra_specs/powervm.py
+++ /dev/null
@@ -1,271 +0,0 @@
-# Copyright 2020 Red Hat, Inc. All rights reserved.
-#
-# 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.
-
-"""Validators for ``powervm`` namespaced extra specs.
-
-These were all taken from the IBM documentation.
-
-https://www.ibm.com/support/knowledgecenter/SSXK2N_1.4.4/com.ibm.powervc.standard.help.doc/powervc_pg_flavorsextraspecs_hmc.html
-"""
-
-from nova.api.validation.extra_specs import base
-
-
-# TODO(stephenfin): A lot of these seem to overlap with existing 'hw:' extra
-# specs and could be deprecated in favour of those.
-EXTRA_SPEC_VALIDATORS = [
- base.ExtraSpecValidator(
- name='powervm:min_mem',
- description=(
- 'Minimum memory (MB). If you do not specify the value, the value '
- 'is defaulted to the value for ``memory_mb``.'
- ),
- value={
- 'type': int,
- 'min': 256,
- 'description': 'Integer >=256 divisible by LMB size of the target',
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:max_mem',
- description=(
- 'Maximum memory (MB). If you do not specify the value, the value '
- 'is defaulted to the value for ``memory_mb``.'
- ),
- value={
- 'type': int,
- 'min': 256,
- 'description': 'Integer >=256 divisible by LMB size of the target',
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:min_vcpu',
- description=(
- 'Minimum virtual processors. Minimum resource that is required '
- 'for LPAR to boot is 1. The maximum value can be equal to the '
- 'value, which is set to vCPUs. If you specify the value of the '
- 'attribute, you must also specify value of powervm:max_vcpu. '
- 'Defaults to value set for vCPUs.'
- ),
- value={
- 'type': int,
- 'min': 1,
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:max_vcpu',
- description=(
- 'Minimum virtual processors. Minimum resource that is required '
- 'for LPAR to boot is 1. The maximum value can be equal to the '
- 'value, which is set to vCPUs. If you specify the value of the '
- 'attribute, you must also specify value of powervm:max_vcpu. '
- 'Defaults to value set for vCPUs.'
- ),
- value={
- 'type': int,
- 'min': 1,
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:proc_units',
- description=(
- 'The wanted ``proc_units``. The value for the attribute cannot be '
- 'less than 1/10 of the value that is specified for Virtual '
- 'CPUs (vCPUs) for hosts with firmware level 7.5 or earlier and '
- '1/20 of the value that is specified for vCPUs for hosts with '
- 'firmware level 7.6 or later. If the value is not specified '
- 'during deployment, it is defaulted to vCPUs * 0.5.'
- ),
- value={
- 'type': str,
- 'pattern': r'\d+\.\d+',
- 'description': (
- 'Float (divisible by 0.1 for hosts with firmware level 7.5 or '
- 'earlier and 0.05 for hosts with firmware level 7.6 or later)'
- ),
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:min_proc_units',
- description=(
- 'Minimum ``proc_units``. The minimum value for the attribute is '
- '0.1 for hosts with firmware level 7.5 or earlier and 0.05 for '
- 'hosts with firmware level 7.6 or later. The maximum value must '
- 'be equal to the maximum value of ``powervm:proc_units``. If you '
- 'specify the attribute, you must also specify '
- '``powervm:proc_units``, ``powervm:max_proc_units``, '
- '``powervm:min_vcpu``, `powervm:max_vcpu``, and '
- '``powervm:dedicated_proc``. Set the ``powervm:dedicated_proc`` '
- 'to false.'
- '\n'
- 'The value for the attribute cannot be less than 1/10 of the '
- 'value that is specified for powervm:min_vcpu for hosts with '
- 'firmware level 7.5 or earlier and 1/20 of the value that is '
- 'specified for ``powervm:min_vcpu`` for hosts with firmware '
- 'level 7.6 or later. If you do not specify the value of the '
- 'attribute during deployment, it is defaulted to equal the value '
- 'of ``powervm:proc_units``.'
- ),
- value={
- 'type': str,
- 'pattern': r'\d+\.\d+',
- 'description': (
- 'Float (divisible by 0.1 for hosts with firmware level 7.5 or '
- 'earlier and 0.05 for hosts with firmware level 7.6 or later)'
- ),
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:max_proc_units',
- description=(
- 'Maximum ``proc_units``. The minimum value can be equal to `` '
- '``powervm:proc_units``. The maximum value for the attribute '
- 'cannot be more than the value of the host for maximum allowed '
- 'processors per partition. If you specify this attribute, you '
- 'must also specify ``powervm:proc_units``, '
- '``powervm:min_proc_units``, ``powervm:min_vcpu``, '
- '``powervm:max_vcpu``, and ``powervm:dedicated_proc``. Set the '
- '``powervm:dedicated_proc`` to false.'
- '\n'
- 'The value for the attribute cannot be less than 1/10 of the '
- 'value that is specified for powervm:max_vcpu for hosts with '
- 'firmware level 7.5 or earlier and 1/20 of the value that is '
- 'specified for ``powervm:max_vcpu`` for hosts with firmware '
- 'level 7.6 or later. If you do not specify the value of the '
- 'attribute during deployment, the value is defaulted to equal the '
- 'value of ``powervm:proc_units``.'
- ),
- value={
- 'type': str,
- 'pattern': r'\d+\.\d+',
- 'description': (
- 'Float (divisible by 0.1 for hosts with firmware level 7.5 or '
- 'earlier and 0.05 for hosts with firmware level 7.6 or later)'
- ),
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:dedicated_proc',
- description=(
- 'Use dedicated processors. The attribute defaults to false.'
- ),
- value={
- 'type': bool,
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:shared_weight',
- description=(
- 'Shared processor weight. When ``powervm:dedicated_proc`` is set '
- 'to true and ``powervm:uncapped`` is also set to true, the value '
- 'of the attribute defaults to 128.'
- ),
- value={
- 'type': int,
- 'min': 0,
- 'max': 255,
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:availability_priority',
- description=(
- 'Availability priority. The attribute priority of the server if '
- 'there is a processor failure and there are not enough resources '
- 'for all servers. VIOS and i5 need to remain high priority '
- 'default of 191. The value of the attribute defaults to 128.'
- ),
- value={
- 'type': int,
- 'min': 0,
- 'max': 255,
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:uncapped',
- description=(
- 'LPAR can use unused processor cycles that are beyond or exceed '
- 'the wanted setting of the attribute. This attribute is '
- 'supported only when ``powervm:dedicated_proc`` is set to false. '
- 'When ``powervm:dedicated_proc`` is set to false, '
- '``powervm:uncapped`` defaults to true.'
- ),
- value={
- 'type': bool,
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:dedicated_sharing_mode',
- description=(
- 'Sharing mode for dedicated processors. The attribute is '
- 'supported only when ``powervm:dedicated_proc`` is set to true.'
- ),
- value={
- 'type': str,
- 'enum': (
- 'share_idle_procs',
- 'keep_idle_procs',
- 'share_idle_procs_active',
- 'share_idle_procs_always',
- )
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:processor_compatibility',
- description=(
- 'A processor compatibility mode is a value that is assigned to a '
- 'logical partition by the hypervisor that specifies the processor '
- 'environment in which the logical partition can successfully '
- 'operate.'
- ),
- value={
- 'type': str,
- 'enum': (
- 'default',
- 'POWER6',
- 'POWER6+',
- 'POWER6_Enhanced',
- 'POWER6+_Enhanced',
- 'POWER7',
- 'POWER8'
- ),
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:shared_proc_pool_name',
- description=(
- 'Specifies the shared processor pool to be targeted during '
- 'deployment of a virtual machine.'
- ),
- value={
- 'type': str,
- 'description': 'String with upper limit of 14 characters',
- },
- ),
- base.ExtraSpecValidator(
- name='powervm:srr_capability',
- description=(
- 'If the value of simplified remote restart capability is set to '
- 'true for the LPAR, you can remote restart the LPAR to supported '
- 'CEC or host when the source CEC or host is down. The attribute '
- 'defaults to false.'
- ),
- value={
- 'type': bool,
- },
- ),
-]
-
-
-def register():
- return EXTRA_SPEC_VALIDATORS