def collect_config(): workdir = constants.WORKDIR if os.path.isfile(constants.CONF): shutil.copy2(constants.CONF, workdir) if crmutils.is_process("pacemaker-controld") or crmutils.is_process( "crmd"): utillib.dump_state(workdir) open(os.path.join(workdir, "RUNNING"), 'w') else: shutil.copy2(os.path.join(constants.CIB_DIR, constants.CIB_F), workdir) open(os.path.join(workdir, "STOPPED"), 'w') if os.path.isfile(os.path.join(workdir, constants.CIB_F)): cmd = "crm_verify -V -x %s" % os.path.join(workdir, constants.CIB_F) crmutils.str2file( utillib.get_command_info(cmd)[1], os.path.join(workdir, constants.CRM_VERIFY_F))
def get_nodes(): """ find nodes for this cluster """ nodes = [] # 1. set by user? if constants.USER_NODES: nodes = constants.USER_NODES.split() # 2. running crm elif crmutils.is_process("pacemaker-controld") or crmutils.is_process("crmd"): cmd = "crm node server" nodes = get_command_info(cmd)[1].strip().split('\n') # 3. if the cluster's stopped, try the CIB else: cmd = r"(CIB_file=%s/%s crm node server)" % (constants.CIB_DIR, constants.CIB_F) nodes = get_command_info(cmd)[1].strip().split('\n') return nodes
def get_config(): workdir = constants.WORKDIR if os.path.isfile(constants.CONF): shutil.copy2(constants.CONF, workdir) if crmutils.is_process("crmd"): dump_state(workdir) with open(os.path.join(workdir, "RUNNING"), 'w') as f: pass else: shutil.copy2(os.path.join(constants.CIB_DIR, constants.CIB_F), workdir) with open(os.path.join(workdir, "STOPPED"), 'w') as f: pass if os.path.isfile(os.path.join(workdir, constants.CIB_F)): cmd = "crm_verify -V -x %s" % os.path.join(workdir, constants.CIB_F) crmutils.str2file(get_command_info(cmd)[1], os.path.join(workdir, constants.CRM_VERIFY_F))