anchor.diff:  # Please note: In a Federation, User and Group hooks can only be defined in
   # the master OpenNebula.
   #-------------------------------------------------------------------------------
  +
   HM_MAD = [
  -    executable = "one_hm" ]
  +    EXECUTABLE = "one_hm" ]
   
   #*******************************************************************************
   # Fault Tolerance Hooks
   #*******************************************************************************
   # This hook is used to perform recovery actions when a host fails.
   # Script to implement host failure tolerance
  -#   It can be set to
  -#           -m migrate VMs to another host. Only for images in shared storage
  +#   One of the following modes must be chosen
  +#           -m resched VMs to another host. (Only for images in shared storage!)
   #           -r recreate VMs running in the host. State will be lost.
   #           -d delete VMs running in the host
  +#
   #   Additional flags
  -#           -f force resubmission of suspended VMs
  -#           -p <n> avoid resubmission if host comes
  -#                  back after n monitoring cycles
  +#           -f resubmit suspended and powered off VMs (only for recreate)
  +#           -p <n> avoid resubmission if host comes back after n monitoring
  +#                 cycles. 0 to disable it. Default is 2.
  +#           -u disables fencing. Fencing is enabled by default. Don't disable it
  +#                 unless you are very sure about what you're doing
   #*******************************************************************************
   #
   #HOST_HOOK = [
  -#    name      = "error",
  -#    on        = "ERROR",
  -#    command   = "ft/host_error.rb",
  -#    arguments = "$ID -m -p 5",
  -#    remote    = "no" ]
  +#    NAME      = "error",
  +#    ON        = "ERROR",
  +#    COMMAND   = "ft/host_error.rb",
  +#    ARGUMENTS = "$ID -m -p 5",
  +#    REMOTE    = "no" ]
   
   <%- if @host_hook_scripts != nil -%>
     <%- host_hook_keys = @host_hook_scripts.keys.sort -%>
  
positive.code: #       SYSTEM: The image will be cloned in the System datastore
  #   shared : determines if the storage holding the system datastore is shared
  #            among the different hosts or not. Valid values: "yes" or "no"
  <% if scope.lookupvar('one::version_gte_5_0') -%>
  #   ds_migrate : The driver allows migrations across datastores. Valid values:
  #               "yes" or "no". Note: THIS ONLY APPLIES TO SYSTEM DS.
  <% end -%>
  #*******************************************************************************
  
  TM_MAD_CONF = [
  <% if scope.lookupvar('one::version_gte_5_0') -%>
      name = "dummy", ln_target = "NONE", clone_target = "SYSTEM", shared = "yes",
      DS_MIGRATE = "YES"
  <% else -%>
      name = "dummy", ln_target = "NONE", clone_target = "SYSTEM", shared = "yes"
  <% end -%>
  ]
  
  TM_MAD_CONF = [
      name = "lvm", ln_target = "NONE", clone_target = "SELF", shared = "yes"
  ]
  
  TM_MAD_CONF = [
  <% if scope.lookupvar('one::version_gte_5_0') -%>
      name = "shared", ln_target = "NONE", clone_target = "SYSTEM", shared = "yes",
      DS_MIGRATE = "YES"
  <% else -%>
      name = "shared", ln_target = "NONE", clone_target = "SYSTEM", shared = "yes"
  <% end -%>
  ]
  
  TM_MAD_CONF = [
      name = "fs_lvm", ln_target = "SYSTEM", clone_target = "SYSTEM", shared="yes"
  ]
  
  TM_MAD_CONF = [
      name = "qcow2", ln_target = "NONE", clone_target = "SYSTEM", shared = "yes"
  ]
  
  TM_MAD_CONF = [
  <% if scope.lookupvar('one::version_gte_5_0') -%>
      name = "ssh", ln_target = "SYSTEM", clone_target = "SYSTEM", shared = "no",
      DS_MIGRATE = "YES"
  <% else -%>
      name = "ssh", ln_target = "SYSTEM", clone_target = "SYSTEM", shared = "no"
  <% end -%>
  ]
  
  <% if not scope.lookupvar('one::version_gte_5_0') -%>
  TM_MAD_CONF = [
      name = "vmfs", ln_target = "NONE", clone_target= "SYSTEM", shared = "yes"
  ]
  <% end -%>
  
  TM_MAD_CONF = [
  <% if scope.lookupvar('one::version_gte_5_0') -%>
      name = "ceph", ln_target = "NONE", clone_target = "SELF", shared = "yes",
      DS_MIGRATE = "NO"
  <% else -%>
      name = "ceph", ln_target = "NONE", clone_target = "SELF", shared = "yes"
  <% end -%>
  ]
  
  <% if scope.lookupvar('one::version_gte_5_0') -%>
  TM_MAD_CONF = [
      NAME = "iscsi_libvirt", LN_TARGET = "NONE", CLONE_TARGET = "SELF", SHARED = "YES",
      DS_MIGRATE = "NO"
  ]
  <% end -%>
  
  TM_MAD_CONF = [
      name = "dev", ln_target = "NONE", clone_target = "NONE", shared = "yes"
  ]
  
  <% if scope.lookupvar('one::version_gte_5_0') -%>
  TM_MAD_CONF = [
      NAME = "vcenter", LN_TARGET = "NONE", CLONE_TARGET = "NONE", SHARED = "YES"
  ]
  
negative.code: #               - SHUTDOWN, after the VM is shutdown
  #               - STOP, after the VM is stopped (including VM image transfers)
  #               - DONE, after the VM is deleted or shutdown
  #               - CUSTOM, user defined specific STATE and LCM_STATE combination
  #                 of states to trigger the hook.
  #   command   : path is relative to $ONE_LOCATION/var/remotes/hook
  