Hi Dejan, 28.09.2012 14:07, Dejan Muhamedagic wrote: ... > > OK. Silly me. Sorry for the non-vi users ;-) Thanks for the > patch! > > Dejan >
One more patch to fix lrmadmin disfunction with 1.1.8. It is a little bit intrusive, but I'm definitely not a python coder :) You can just take it as a reference. diff -urNp a/modules/ra.py b/modules/ra.py --- a/modules/ra.py 2012-09-13 12:47:48.000000000 +0000 +++ b/modules/ra.py 2012-09-27 08:01:19.965097194 +0000 @@ -76,7 +70,10 @@ class RaOS(object): l = stdout2list("%s/resource.d/%s/%s meta-data" % \ (os.environ["OCF_ROOT"],ra_provider,ra_type)) elif ra_class == "stonith": - l = stdout2list("stonith -m -t %s" % ra_type) + if ra_type.startswith("fence_") and os.path.exists("/usr/sbin/%s" % ra_type): + l = stdout2list("/usr/sbin/%s -o metadata" % ra_type) + else: + l = stdout2list("stonith -m -t %s" % ra_type) return l def providers(self, ra_type,ra_class = "ocf"): 'List of providers for a class:type.' @@ -97,8 +103,13 @@ class RaOS(object): l = os_types_list("/etc/init.d/*") elif ra_class == "stonith": l = stdout2list("stonith -L") + l.extend(os_types_list("/usr/sbin/fence_*")) l = list(set(l)) l.sort() + if ra_class == "stonith": + for ra in ("fence_ack_manual", "fence_pcmk", "fence_legacy"): + if l.count(ra): + l.remove(ra) return l def can_use_lrmadmin(): @@ -114,10 +124,8 @@ def can_use_lrmadmin(): def ra_if(): if vars.ra_if: return vars.ra_if - if can_use_lrmadmin(): - vars.ra_if = RaLrmd() - if not vars.ra_if or not vars.ra_if.good: - vars.ra_if = RaOS() + + vars.ra_if = RaOS() return vars.ra_if def ra_classes(): @@ -458,11 +466,16 @@ class RAInfo(object): if p in self.skip_op_attr: continue n_ops[n_op][p] = v + for req_op in self.required_ops: if req_op not in n_ops: - n_ops[req_op] = {} + if not (self.ra_class == "stonith" and op in ("start", "stop")): + n_ops[req_op] = {} + intervals = {} for op in n_ops: + if self.ra_class == "stonith" and op in ("start", "stop"): + continue if op not in self.actions(): common_warn("%s: action %s not advertised in meta-data, it may not be supported by the RA" % (id,op)) rc |= 1 --- Best, Vladislav _______________________________________________ Pacemaker mailing list: Pacemaker@oss.clusterlabs.org http://oss.clusterlabs.org/mailman/listinfo/pacemaker Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://bugs.clusterlabs.org