# profiles::proxmox::clusterinit class profiles::proxmox::clusterinit { # include params class include profiles::proxmox::params # localise some vars $clusterinit_master = $profiles::proxmox::params::pve_clusterinit_master $clustername = $profiles::proxmox::params::pve_cluster $membersrole = $profiles::proxmox::params::pve_members_role # if this is the cluster master if $clusterinit_master { # and its not a member of a cluster yet if ! $facts['pve_cluster_member'] { # initialise a cluster exec {'pve_init_cluster': command => "/usr/bin/pvecm create ${clustername}", unless => 'pvecm status', timeout => 60, } } } $servers_array = sort(query_nodes( "enc_role='${membersrole}' and country='${facts['country']}' and region='${facts['region']}'", 'networking.fqdn' )) if ! $profiles::proxmox::params::pve_clusterinit_master { if !empty($servers_array) { notify { "Cluster ${profiles::proxmox::params::pve_cluster} detected, proceeding to join...": } } else { notify { "No cluster flag found for ${profiles::proxmox::params::pve_cluster}, not attempting to join": } } } }