1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# -*- coding: UTF-8 -*-
# Copyright 2015 Red Hat, Inc.
# Part of clufter project
# Licensed under GPLv2+ (a copy included | http://gnu.org/licenses/gpl-2.0.txt)
"""needlexml2pcscmd filter"""
__author__ = "Jan Pokorný <jpokorny @at@ Red Hat .dot. com>"
from ..filter import XMLFilter
from ..utils_xslt import xslt_params
@XMLFilter.deco('coroxml-needle', 'string-list', defs=dict(
pcscmd_force=False,
pcscmd_noauth=False,
pcscmd_verbose=True,
pcscmd_dryrun=False,
pcscmd_enable=False,
pcscmd_start_wait=60,
pcscmd_noguidance=0,
))
def needlexml2pcscmd(flt_ctxt, in_obj):
"""Outputs set of pcs commands to reinstate the cluster per corosync.conf"""
return (
'bytestring',
flt_ctxt.ctxt_proceed_xslt(
in_obj,
textmode=True,
def_first=xslt_params(
pcscmd_force=flt_ctxt['pcscmd_force'],
pcscmd_noauth=flt_ctxt['pcscmd_noauth'],
pcscmd_verbose=flt_ctxt['pcscmd_verbose'],
pcscmd_dryrun=flt_ctxt['pcscmd_dryrun'],
pcscmd_enable=flt_ctxt['pcscmd_enable'],
pcscmd_start_wait=flt_ctxt['pcscmd_start_wait'],
pcscmd_noguidance=flt_ctxt['pcscmd_noguidance'],
),
),
)
|