def ra_agent_for_cpt(cpt): '''class:provider:type -> ra.agent''' agent = None ra_class, provider, rsc_type = ra.disambiguate_ra_type(cpt) if ra.ra_type_validate(cpt, ra_class, provider, rsc_type): agent = ra.RAInfo(ra_class, rsc_type, provider) return agent
def do_info(self, context, *args): "usage: info [<class>:[<provider>:]]<type>" if len(args) == 0: context.fatal_error("Expected [<class>:[<provider>:]]<type>") elif len(args) > 1: # obsolete syntax ra_type = args[0] ra_class = args[1] if len(args) < 3: ra_provider = "heartbeat" else: ra_provider = args[2] else: if args[0] in vars.meta_progs: ra_class = args[0] ra_provider = ra_type = None else: ra_class, ra_provider, ra_type = ra.disambiguate_ra_type( args[0]) agent = ra.RAInfo(ra_class, ra_type, ra_provider) if agent.mk_ra_node() is None: return False try: utils.page_string(agent.meta_pretty()) except Exception, msg: context.fatal_error(msg)
def class_provider_type(self, value): """ Unravel [class:[provider:]]type returns: (class, provider, type) """ c_p_t = disambiguate_ra_type(value) if not ra_type_validate(value, *c_p_t): return None return c_p_t
def cli_parse_rsctype(s, pl): ''' Parse the resource type. ''' ra_class,provider,rsc_type = disambiguate_ra_type(s) if not ra_type_validate(s,ra_class,provider,rsc_type): return None pl.append(["class",ra_class]) if ra_class == "ocf": pl.append(["provider",provider]) pl.append(["type",rsc_type])
def cli_parse_rsctype(s, pl): ''' Parse the resource type. ''' ra_class, provider, rsc_type = disambiguate_ra_type(s) if not ra_type_validate(s, ra_class, provider, rsc_type): return None pl.append(["class", ra_class]) if ra_class == "ocf": pl.append(["provider", provider]) pl.append(["type", rsc_type])
def do_info(self, context, *args): "usage: info [<class>:[<provider>:]]<type>" if len(args) == 0: context.fatal_error("Expected [<class>:[<provider>:]]<type>") elif len(args) > 1: # obsolete syntax if len(args) < 3: ra_type, ra_class, ra_provider = args[0], args[1], "heartbeat" else: ra_type, ra_class, ra_provider = args[0], args[1], args[2] elif args[0] in constants.meta_progs: ra_class, ra_provider, ra_type = args[0], None, None else: ra_class, ra_provider, ra_type = ra.disambiguate_ra_type(args[0]) agent = ra.RAInfo(ra_class, ra_type, ra_provider) if agent.mk_ra_node() is None: return False try: utils.page_string(agent.meta_pretty()) except Exception, msg: context.fatal_error(msg)