Export ndparams in RAPI node query
[ganeti-local] / lib / constants.py
index dcece0b..2fd5432 100644 (file)
@@ -593,8 +593,13 @@ INISECT_OSP = "os"
 
 # dynamic device modification
 DDM_ADD = "add"
+DDM_MODIFY = "modify"
 DDM_REMOVE = "remove"
 DDMS_VALUES = frozenset([DDM_ADD, DDM_REMOVE])
+DDMS_VALUES_WITH_MODIFY = (DDMS_VALUES | frozenset([
+  DDM_MODIFY,
+  ]))
+# TODO: DDM_SWAP, DDM_MOVE?
 
 # common exit codes
 EXIT_SUCCESS = 0
@@ -949,8 +954,9 @@ ISPECS_PARAMETERS = frozenset(ISPECS_PARAMETER_TYPES.keys())
 ISPECS_MIN = "min"
 ISPECS_MAX = "max"
 ISPECS_STD = "std"
-IPOLICY_DTS = "disk_templates"
-IPOLICY_VCPU_RATIO = "vcpu_ratio"
+IPOLICY_DTS = "disk-templates"
+IPOLICY_VCPU_RATIO = "vcpu-ratio"
+IPOLICY_SPINDLE_RATIO = "spindle-ratio"
 
 IPOLICY_ISPECS = frozenset([
   ISPECS_MIN,
@@ -960,6 +966,7 @@ IPOLICY_ISPECS = frozenset([
 
 IPOLICY_PARAMETERS = frozenset([
   IPOLICY_VCPU_RATIO,
+  IPOLICY_SPINDLE_RATIO,
   ])
 
 IPOLICY_ALL_KEYS = (IPOLICY_ISPECS |
@@ -968,9 +975,11 @@ IPOLICY_ALL_KEYS = (IPOLICY_ISPECS |
 
 # Node parameter names
 ND_OOB_PROGRAM = "oob_program"
+ND_SPINDLE_COUNT = "spindle_count"
 
 NDS_PARAMETER_TYPES = {
   ND_OOB_PROGRAM: VTYPE_MAYBE_STRING,
+  ND_SPINDLE_COUNT: VTYPE_INT,
   }
 
 NDS_PARAMETERS = frozenset(NDS_PARAMETER_TYPES.keys())
@@ -1812,6 +1821,7 @@ BEC_DEFAULTS = {
 
 NDC_DEFAULTS = {
   ND_OOB_PROGRAM: None,
+  ND_SPINDLE_COUNT: 1,
   }
 
 DISK_LD_DEFAULTS = {
@@ -1892,6 +1902,8 @@ NICC_DEFAULTS = {
   NIC_LINK: DEFAULT_BRIDGE,
   }
 
+# All of the following values are quite arbitrarily - there are no
+# "good" defaults, these must be customised per-site
 IPOLICY_DEFAULTS = {
   ISPECS_MIN: {
     ISPEC_MEM_SIZE: 128,
@@ -1916,6 +1928,7 @@ IPOLICY_DEFAULTS = {
     },
   IPOLICY_DTS: DISK_TEMPLATES,
   IPOLICY_VCPU_RATIO: 4.0,
+  IPOLICY_SPINDLE_RATIO: 32.0,
   }
 
 MASTER_POOL_SIZE_DEFAULT = 10