Updating hooks documentation with missing environment variables
[ganeti-local] / doc / hooks.rst
index 9f32d73..3a1ca57 100644 (file)
@@ -120,7 +120,7 @@ OP_ADD_NODE
 Adds a node to the cluster.
 
 :directory: node-add
-:env. vars: NODE_NAME, NODE_PIP, NODE_SIP
+:env. vars: NODE_NAME, NODE_PIP, NODE_SIP, MASTER_CAPABLE, VM_CAPABLE
 :pre-execution: all existing nodes
 :post-execution: all nodes plus the new node
 
@@ -143,7 +143,7 @@ OP_NODE_SET_PARAMS
 Changes a node's parameters.
 
 :directory: node-modify
-:env. vars: MASTER_CANDIDATE, OFFLINE, DRAINED
+:env. vars: MASTER_CANDIDATE, OFFLINE, DRAINED, MASTER_CAPABLE, VM_CAPABLE
 :pre-execution: master node, the target node
 :post-execution: master node, the target node
 
@@ -168,6 +168,52 @@ Relocate secondary instances from a node.
 :post-execution: master node
 
 
+Node group operations
+~~~~~~~~~~~~~~~~~~~~~
+
+OP_ADD_GROUP
+++++++++++++
+
+Adds a node group to the cluster.
+
+:directory: group-add
+:env. vars: GROUP_NAME
+:pre-execution: master node
+:post-execution: master node
+
+OP_GROUP_SET_PARAMS
++++++++++++++++++++
+
+Changes a node group's parameters.
+
+:directory: group-modify
+:env. vars: GROUP_NAME, NEW_ALLOC_POLICY
+:pre-execution: master node
+:post-execution: master node
+
+OP_REMOVE_GROUP
++++++++++++++++
+
+Removes a node group from the cluster. Since the node group must be
+empty for removal to succeed, the concept of "nodes in the group" does
+not exist, and the hook is only executed in the master node.
+
+:directory: group-remove
+:env. vars: GROUP_NAME
+:pre-execution: master node
+:post-execution: master node
+
+OP_RENAME_GROUP
++++++++++++++++
+
+Renames a node group.
+
+:directory: group-rename
+:env. vars: OLD_NAME, NEW_NAME
+:pre-execution: master node and all nodes in the group
+:post-execution: master node and all nodes in the group
+
+
 Instance operations
 ~~~~~~~~~~~~~~~~~~~
 
@@ -208,7 +254,7 @@ OP_BACKUP_EXPORT
 Exports the instance.
 
 :directory: instance-export
-:env. vars: EXPORT_NODE, EXPORT_DO_SHUTDOWN
+:env. vars: EXPORT_MODE, EXPORT_NODE, EXPORT_DO_SHUTDOWN, REMOVE_INSTANCE
 :pre-execution: master node, primary and secondary nodes
 :post-execution: master node, primary and secondary nodes
 
@@ -228,7 +274,7 @@ OP_INSTANCE_SHUTDOWN
 Stops an instance.
 
 :directory: instance-stop
-:env. vars: only the standard instance vars
+:env. vars: TIMEOUT
 :pre-execution: master node, primary and secondary nodes
 :post-execution: master node, primary and secondary nodes
 
@@ -238,7 +284,7 @@ OP_INSTANCE_REBOOT
 Reboots an instance.
 
 :directory: instance-reboot
-:env. vars: IGNORE_SECONDARIES, REBOOT_TYPE
+:env. vars: IGNORE_SECONDARIES, REBOOT_TYPE, SHUTDOWN_TIMEOUT
 :pre-execution: master node, primary and secondary nodes
 :post-execution: master node, primary and secondary nodes
 
@@ -248,7 +294,7 @@ OP_INSTANCE_MODIFY
 Modifies the instance parameters.
 
 :directory: instance-modify
-:env. vars: only the standard instance vars
+:env. vars: NEW_DISK_TEMPLATE
 :pre-execution: master node, primary and secondary nodes
 :post-execution: master node, primary and secondary nodes
 
@@ -260,9 +306,9 @@ INSTANCE_SECONDARIES refer to the nodes that were repectively primary
 and secondary before failover.
 
 :directory: instance-failover
-:env. vars: IGNORE_CONSISTENCY, OLD_SECONDARY, OLD_PRIMARY, NEW_SECONDARY, NEW_PRIMARY
+:env. vars: IGNORE_CONSISTENCY, SHUTDOWN_TIMEOUT, OLD_PRIMARY, OLD_SECONDARY, NEW_PRIMARY, NEW_SECONDARY
 :pre-execution: master node, secondary node
-:post-execution: master node, secondary node
+:post-execution: master node, primary and secondary nodes
 
 OP_INSTANCE_MIGRATE
 ++++++++++++++++++++
@@ -272,9 +318,9 @@ INSTANCE_SECONDARIES refer to the nodes that were repectively primary
 and secondary before migration.
 
 :directory: instance-migrate
-:env. vars: MIGRATE_LIVE, MIGRATE_CLEANUP, OLD_SECONDARY, OLD_PRIMARY, NEW_SECONDARY, NEW_PRIMARY
+:env. vars: MIGRATE_LIVE, MIGRATE_CLEANUP, OLD_PRIMARY, OLD_SECONDARY, NEW_PRIMARY, NEW_SECONDARY
 :pre-execution: master node, secondary node
-:post-execution: master node, secondary node
+:post-execution: master node, primary and secondary nodes
 
 
 OP_INSTANCE_REMOVE
@@ -283,9 +329,9 @@ OP_INSTANCE_REMOVE
 Remove an instance.
 
 :directory: instance-remove
-:env. vars: only the standard instance vars
+:env. vars: SHUTDOWN_TIMEOUT
 :pre-execution: master node
-:post-execution: master node
+:post-execution: master node, primary and secondary nodes
 
 OP_INSTANCE_REPLACE_DISKS
 +++++++++++++++++++++++++
@@ -304,8 +350,8 @@ Grows the disk of an instance.
 
 :directory: disk-grow
 :env. vars: DISK, AMOUNT
-:pre-execution: master node, primary node
-:post-execution: master node, primary node
+:pre-execution: master node, primary and secondary nodes
+:post-execution: master node, primary and secondary nodes
 
 OP_INSTANCE_RENAME
 ++++++++++++++++++
@@ -323,7 +369,7 @@ OP_INSTANCE_MOVE
 Move an instance by data-copying.
 
 :directory: instance-move
-:env. vars: TARGET_NODE
+:env. vars: TARGET_NODE, SHUTDOWN_TIMEOUT
 :pre-execution: master node, primary and target nodes
 :post-execution: master node, primary and target nodes
 
@@ -464,9 +510,15 @@ operations.
 INSTANCE_NAME
   The name of the instance which is the target of the operation.
 
+INSTANCE_BE_x,y,z,...
+  Instance BE params. There is one variable per BE param. For instance, GANETI_INSTANCE_BE_auto_balance
+
 INSTANCE_DISK_TEMPLATE
   The disk type for the instance.
 
+NEW_DISK_TEMPLATE
+  The new disk type for the instance.
+
 INSTANCE_DISK_COUNT
   The number of disks for the instance.
 
@@ -476,6 +528,12 @@ INSTANCE_DISKn_SIZE
 INSTANCE_DISKn_MODE
   Either *rw* for a read-write disk or *ro* for a read-only one.
 
+INSTANCE_HV_x,y,z,...
+  Instance hypervisor options. There is one variable per option. For instance, GANETI_INSTANCE_HV_use_bootloader
+
+INSTANCE_HYPERVISOR
+  The instance hypervisor.
+
 INSTANCE_NIC_COUNT
   The number of NICs for the instance.
 
@@ -488,6 +546,9 @@ INSTANCE_NICn_IP
 INSTANCE_NICn_MAC
   The MAC address of the *n* -th NIC of the instance.
 
+INSTANCE_NICn_MODE
+  The mode of the *n* -th NIC of the instance.
+
 INSTANCE_OS_TYPE
   The name of the instance OS.
 
@@ -512,6 +573,12 @@ INSTANCE_VCPUS
 INSTANCE_STATUS
   The run status of the instance.
 
+MASTER_CAPABLE
+  Whether a node is capable of being promoted to master.
+
+VM_CAPABLE
+  Whether the node can host instances.
+
 NODE_NAME
   The target node of this operation (not the node on which the hook
   runs).
@@ -558,6 +625,9 @@ OLD_PRIMARY, NEW_PRIMARY
   For migrations/failovers, the old and respectively new primary
   nodes. These two mirror the NEW_SECONDARY/OLD_SECONDARY variables
 
+EXPORT_MODE
+  The instance export mode. Either "remote" or "local".
+
 EXPORT_NODE
   The node on which the exported image of the instance was done.
 
@@ -568,6 +638,24 @@ EXPORT_DO_SHUTDOWN
   the filesystem would need a check (journal replay or full fsck) in
   order to guarantee consistency.
 
+REMOVE_INSTANCE
+  Whether the instance was removed from the node.
+
+SHUTDOWN_TIMEOUT
+  Amount of time to wait for the instance to shutdown.
+
+TIMEOUT
+  Amount of time to wait before aborting the op.
+
+OLD_NAME, NEW_NAME
+  Old/new name of the node group.
+
+GROUP_NAME
+  The name of the node group.
+
+NEW_ALLOC_POLICY
+  The new allocation policy for the node group.
+
 CLUSTER_TAGS
   The list of cluster tags, space separated.