from subprocess import PIPE, Popen import demistomock as demisto from CommonServerPython import * from CommonServerUserPython import * def main(): domain = demisto.args().get("domain") cmd = ["aquatone-discover", "--domain", domain] p = Popen(cmd, stdout=PIPE, stderr=PIPE, encoding="utf-8") stdout, stderr = p.communicate() if p.returncode > 0: demisto.results({"Type": entryTypes["error"], "ContentsFormat": formats["text"], "Contents": stdout + stderr}) else: res = stdout cmd = ["cat", "/root/aquatone/" + domain + "/hosts.json"] p = Popen(cmd, stdout=PIPE, stderr=PIPE, encoding="utf-8") stdout, stderr = p.communicate() if p.returncode > 0: demisto.results({"Type": entryTypes["error"], "ContentsFormat": formats["text"], "Contents": stdout + stderr}) else: hosts = stdout hosts_json = json.loads(hosts) ec = {"Aquatone.discover": hosts_json} entry_result = { "Type": entryTypes["note"], "ContentsFormat": formats["json"], "Contents": hosts_json, "HumanReadable": res, "ReadableContentsFormat": formats["markdown"], "EntryContext": ec, } demisto.results(entry_result) if __name__ in ("__builtin__", "builtins", "__main__"): main()