def lookup_jid(jid, ext_source=None): ''' Return the printout from a previously executed job ''' ret = {} if __opts__['ext_job_cache'] or ext_source: out = 'nested' returner = ext_source if ext_source else __opts__['ext_job_cache'] mminion = salt.minion.MasterMinion(__opts__) data = mminion.returners['{0}.get_jid'.format(returner)](jid) for minion in data: if u'return' in data[minion]: ret[minion] = data[minion].get(u'return') else: ret[minion] = data[minion].get('return') if 'out' in data[minion]: out = data[minion]['out'] salt.output.display_output(ret, out, __opts__) return ret # Fall back to the local job cache client = salt.client.LocalClient(__opts__['conf_file']) for mid, data in client.get_full_returns(jid, [], 0).items(): ret[mid] = data.get('ret') salt.output.display_output({mid: ret[mid]}, data.get('out', None), __opts__) return ret
def lookup_jid(jid, ext_source=None): ''' Return the printout from a previously executed job ''' ret = {} if __opts__['ext_job_cache'] or ext_source: out = 'nested' returner = ext_source if ext_source else __opts__['ext_job_cache'] mminion = salt.minion.MasterMinion(__opts__) data = mminion.returners['{0}.get_jid'.format(returner)](jid) for minion in data: if u'return' in data[minion]: ret[minion] = data[minion].get(u'return') else: ret[minion] = data[minion].get('return') if 'out' in data[minion]: out = data[minion]['out'] salt.output.display_output(ret, out, __opts__) return ret # Fall back to the local job cache client = salt.client.LocalClient(__opts__['conf_file']) for mid, data in client.get_full_returns(jid, [], 0).items(): ret[mid] = data.get('ret') salt.output.display_output( {mid: ret[mid]}, data.get('out', None), __opts__) return ret
def lookup_jid(jid): ''' Return the printout from a previously executed job ''' client = salt.client.LocalClient(__opts__['conf_file']) ret = {} for mid, data in client.get_full_returns(jid, [], 0).items(): printout = salt.output.get_outputter(data.get('out', None)) ret[mid] = data.get('ret') printout({mid: ret[mid]}) return ret
def lookup_jid(jid): ''' Return the printout from a previousely executed job ''' out = None def _format_ret(full_ret): ''' Take the full return data and format it to simple output ''' ret = {} for key, data in full_ret.items(): ret[key] = data['ret'] if 'out' in data: out = data['out'] return ret, out client = salt.client.LocalClient(__opts__['conf_file']) full_ret = client.get_full_returns(jid, [], 0) formatted = _format_ret(full_ret) if formatted: ret = formatted[0] out = formatted[1] else: ret = SaltException('Job {0} hasn\'t finished. No data yet :('.format(jid)) out = '' # Determine the proper output method and run it get_outputter = salt.output.get_outputter if isinstance(ret, (list, dict, basestring)) and out: printout = get_outputter(out) # Pretty print any salt exceptions elif isinstance(ret, SaltException): printout = get_outputter("txt") else: printout = get_outputter(None) printout(ret) return ret
def lookup_jid(jid): ''' Return the printout from a previousely executed job ''' def _format_ret(full_ret): ''' Take the full return data and format it to simple output ''' out = None ret = {} for key, data in full_ret.items(): ret[key] = data['ret'] if 'out' in data: out = data['out'] return ret, out client = salt.client.LocalClient(__opts__['conf_file']) full_ret = client.get_full_returns(jid, [], 0) formatted = _format_ret(full_ret) if formatted: ret = formatted[0] out = formatted[1] else: ret = SaltException( 'Job {0} hasn\'t finished. No data yet :('.format(jid)) out = '' # Determine the proper output method and run it get_outputter = salt.output.get_outputter if isinstance(ret, (list, dict, basestring)) and out: printout = get_outputter(out) # Pretty print any salt exceptions elif isinstance(ret, SaltException): printout = get_outputter("txt") else: printout = get_outputter(None) printout(ret) return ret