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?