def collectData(): printDBG(1, "Collecting data from Satellite") s = Satellite(credentials['hostname']) s.setUsername(credentials['username']) s.setPassword(credentials['password']) printDBG(2, "Getting all content view versions") cvvs = s.getCVVersions() for ver in cvvs['results']: name = ver['name'] cVVObjects[name] = {} object = cVVObjects[name] object['id'] = ver['id'] object['cvID'] = ver['content_view_id'] object['secErrata'] = ver['errata_counts']['security'] object['bugErrata'] = ver['errata_counts']['bugfix'] object['enhErrata'] = ver['errata_counts']['enhancement'] if type(object['secErrata']) == type(None): object['secErrata'] = 0 if type(object['bugErrata']) == type(None): object['bugErrata'] = 0 if type(object['enhErrata']) == type(None): object['enhErrata'] = 0 object['created'] = ver['created_at'] object['errata'] = {} printDBG(3, 'Getting errata for CV Ver ' + name) errata = s.getCVVerErrata(object['id']) for erratum in errata['results']: eo = {} eo['id'] = erratum['id'] eo['name'] = erratum['name'] eo['type'] = erratum['type'] eo['issued'] = erratum['issued'] eo['cves'] = [] for cve in erratum['cves']: eo['cves'].append(cve['cve_id']) object['errata'][erratum['errata_id']] = eo for revName in cVVObjects.keys().sort(reverse=True): print revName