def fetch(cls): logging_helper.getLogger().info('Updating package data...') hashes_plist_url = os.path.join(config.getUpdateURL(), 'hashes.plist') hashes_plist_path = utilities.getlookupplistpath('hashes') manager.DownloadFileFromURLToPath(hashes_plist_url, hashes_plist_path) release_plist_url = os.path.join(config.getUpdateURL(), 'releases.plist') release_plist_path = utilities.getreleaseplistpath() manager.DownloadFileFromURLToPath(release_plist_url, release_plist_path) if os.path.exists(release_plist_path) == True: for release_type in releases.get(): release_type_plist_url = os.path.join(config.getUpdateURL(), release_type+'.plist') release_type_plist_path = utilities.getlookupplistpath(release_type) manager.DownloadFileFromURLToPath(release_type_plist_url, release_type_plist_path)
def getInfo(cls, release_type, version): info_dict = {} if release_type != None: if version != None: type_plist_path = utilities.getlookupplistpath(release_type) if os.path.exists(type_plist_path) == True: versions_dict = plistlib.readPlist(type_plist_path) version_results = list((item for item in versions_dict if item['name'] == version)) if len(version_results) > 0: info_dict = version_results[0] else: logging_helper.getLogger().error( 'Could not find version "' + version + '" for release type "' + release_type + '". If you think this is an error, run the "update" command.' ) else: logging_helper.getLogger().error( 'Could not find a versions manifest for release type "' + release_type + '". If you think this is an error, run the "update" command.' ) else: logging_helper.getLogger().error( 'Must supply a version number!') return info_dict
def add(cls, release_type, package_name, build_number, hash_string): if cls.get(release_type, package_name, build_number) == '': hashes_manifest = cls.manifest() check_release = hashes_manifest.get(release_type, None) if check_release != None: check_package = check_release.get(package_name, None) if check_package != None: check_package[build_number] = {'sha256': hash_string} plistlib.writePlist(hashes_manifest, utilities.getlookupplistpath('hashes')) logging_helper.getLogger().info('Added hash for "'+package_name+'-'+build_number+'"')
def add(cls, release_type, package_name, build_number, hash_string): if cls.get(release_type, package_name, build_number) == '': hashes_manifest = cls.manifest() check_release = hashes_manifest.get(release_type, None) if check_release != None: check_package = check_release.get(package_name, None) if check_package != None: check_package[build_number] = {'sha256': hash_string} plistlib.writePlist(hashes_manifest, utilities.getlookupplistpath('hashes')) logging_helper.getLogger().info('Added hash for "' + package_name + '-' + build_number + '"')
def get(cls, release_type): versions = [] type_plist_path = utilities.getlookupplistpath(release_type) if os.path.exists(type_plist_path) == True: versions_dict = plistlib.readPlist(type_plist_path) version_results = list(map(lambda version: version['name'], versions_dict)) if len(version_results) > 0: versions = version_results else: logging_helper.getLogger().error('Could not find any versions for release type "'+release_type+'".') else: logging_helper.getLogger().error('Could not find a versions manifest for release type "'+release_type+'". If you think this is an error, run the "update" command.') return versions
def getInfo(cls, release_type, version): info_dict = {} if release_type != None: if version != None: type_plist_path = utilities.getlookupplistpath(release_type) if os.path.exists(type_plist_path) == True: versions_dict = plistlib.readPlist(type_plist_path) version_results = list((item for item in versions_dict if item['name'] == version)) if len(version_results) > 0: info_dict = version_results[0] else: logging_helper.getLogger().error('Could not find version "'+version+'" for release type "'+release_type+'". If you think this is an error, run the "update" command.') else: logging_helper.getLogger().error('Could not find a versions manifest for release type "'+release_type+'". If you think this is an error, run the "update" command.') else: logging_helper.getLogger().error('Must supply a version number!') return info_dict
def get(cls, release_type): versions = [] type_plist_path = utilities.getlookupplistpath(release_type) if os.path.exists(type_plist_path) == True: versions_dict = plistlib.readPlist(type_plist_path) version_results = list( map(lambda version: version['name'], versions_dict)) if len(version_results) > 0: versions = version_results else: logging_helper.getLogger().error( 'Could not find any versions for release type "' + release_type + '".') else: logging_helper.getLogger().error( 'Could not find a versions manifest for release type "' + release_type + '". If you think this is an error, run the "update" command.') return versions
def manifest(cls): hashes_manifest_path = utilities.getlookupplistpath('hashes') hashes_manifest = plistlib.readPlist(hashes_manifest_path) return hashes_manifest