Nov-22-2018, 02:14 PM
(This post was last modified: Nov-22-2018, 02:15 PM by wardancer84.)
its me again, i guess i will never get my head around this language.
i have the following code..
i have the following code..
def get_niminfo(self):
file = '/etc/niminfo'
niminfo = {}
niminfo = niminfo['niminfo'] = {}
try:
if os.path.exists(file):
niminfo = dict(
(k.strip(), v.strip(' "\n')) for k, v in (
line.split(
' ', 1)[1].split(
'=', 1) for line in (
(l for l in open(
file, 'r') if l.startswith('export'))) if not re.match(
r'^\s*$', line)))
except IOError as e:
module.warnings.append('could not read /etc/niminfo')
niminfo = {}
return niminfoit returns the following (ignore the "ansible_" prefix)..."ansible_facts": {
"ansible_NIM_BOSINST_DATA": "/NIM_BOSINST_DATA",
"ansible_NIM_BOSINST_RECOVER": "/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_bosinst_env -a hostname=host1",
"ansible_NIM_BOS_FORMAT": "mksysb",
"ansible_NIM_BOS_IMAGE": "/NIM_BOS_IMAGE",
"ansible_NIM_CONFIGURATION": "standalone",
"ansible_NIM_CUSTOM": "/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_script -a location=nimserver:/export/nim/scripts/host1.script",
"ansible_NIM_FIPS_MODE": "0",
"ansible_NIM_HOSTNAME": "host1",
"ansible_NIM_HOSTS": "127.0.0.1:loopback:localhost 10.0.0.1:host1 10.0.0.2:nimserver",
"ansible_NIM_LICENSE_ACCEPT": "yes",
"ansible_NIM_MASTERID": "00F7089898989",
"ansible_NIM_MASTER_HOSTNAME": "nimserver",
"ansible_NIM_MASTER_PORT": "1058",
"ansible_NIM_MOUNTS": "nimserver:/export/lpp_source/aix72/7200-00-02-1614:/SPOT/usr/sys/inst.images:dir nimserver:/export/nim/niminstall/bosinstdata/bos_wop_mirror:/NIM_BOSINST_DATA:file nimserver:/export/mksysb/mksysb_master_aix72_00:/NIM_BOS_IMAGE:file",
"ansible_NIM_NAME": "host1",
"ansible_NIM_REGISTRATION_PORT": "1059",
"ansible_NIM_SHELL": "shell",
"ansible_RC_CONFIG": "rc.bos_inst",
"ansible_SPOT": "nimserver:/export/spot/spot_aix72_00/spot_aix72_00/usr", }but my intention was this"niminfo": {
"NIM_BOSINST_DATA": "/NIM_BOSINST_DATA",
"NIM_BOSINST_RECOVER": "/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_bosinst_env -a hostname=host1",
"NIM_BOS_FORMAT": "mksysb",
"NIM_BOS_IMAGE": "/NIM_BOS_IMAGE",
"NIM_CONFIGURATION": "standalone",
"NIM_CUSTOM": "/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_script -a location=nimserver:/export/nim/scripts/host1.script",
"NIM_FIPS_MODE": "0",
"NIM_HOSTNAME": "host1",
"NIM_HOSTS": "127.0.0.1:loopback:localhost 10.0.0.1:host1 10.0.0.2:nimserver",
"NIM_LICENSE_ACCEPT": "yes",
"NIM_MASTERID": "00F7089898989",
"NIM_MASTER_HOSTNAME": "nimserver",
"NIM_MASTER_PORT": "1058",
"NIM_MOUNTS": "nimserver:/export/lpp_source/aix72/7200-00-02-1614:/SPOT/usr/sys/inst.images:dir nimserver:/export/nim/niminstall/bosinstdata/bos_wop_mirror:/NIM_BOSINST_DATA:file nimserver:/export/mksysb/mksysb_master_aix72_00:/NIM_BOS_IMAGE:file",
"NIM_NAME": "host1",
"NIM_REGISTRATION_PORT": "1059",
"NIM_SHELL": "shell",
"RC_CONFIG": "rc.bos_inst",
"SPOT": "nimserver:/export/spot/spot_aix72_00/spot_aix72_00/usr", }so how to get the additional dict level in?
