Ejemplo n.º 1
0
    def __init__(self, manifest_path, cert_path):
        rhnSQL.initDB()
        self.manifest = Manifest(manifest_path)

        # Satellite 5 certificate
        c = open(cert_path, 'r')
        try:
            self.sat5_cert = SatelliteCert()
            content = c.read()
            self.sat5_cert.load(content)
        finally:
            if c is not None:
                c.close()

        # Channel families metadata
        f = open(constants.CHANNEL_FAMILY_MAPPING_PATH, 'r')
        try:
            self.families = json.load(f)
        finally:
            if f is not None:
                f.close()

        # product to family mapping
        p = open(constants.PRODUCT_FAMILY_MAPPING_PATH, 'r')
        try:
            self.products = json.load(p)
        finally:
            if p is not None:
                p.close()

        self.families_to_import = []
Ejemplo n.º 2
0
    def __init__(self, manifest_path):
        rhnSQL.initDB()
        self.manifest = Manifest(manifest_path)
        self.sat5_cert = SatelliteCert()
        self.sat5_cert.load(self.manifest.get_satellite_certificate())

        verify_mappings()

        # Channel families metadata
        f = open(constants.CHANNEL_FAMILY_MAPPING_PATH, 'r')
        try:
            self.families = json.load(f)
        finally:
            if f is not None:
                f.close()

        self.families_to_import = []
Ejemplo n.º 3
0
    def __init__(self, manifest_path, cert_path):
        rhnSQL.initDB()
        self.manifest = Manifest(manifest_path)

        # Satellite 5 certificate
        with open(cert_path, 'r') as f:
            self.sat5_cert = SatelliteCert()
            content = f.read()
            self.sat5_cert.load(content)

        # Channel families metadata
        with open(constants.CHANNEL_FAMILY_MAPPING_PATH, 'r') as f:
            self.families = json.load(f)

        with open(constants.PRODUCT_FAMILY_MAPPING_PATH, 'r') as f:
            self.products = json.load(f)

        self.families_to_import = []
Ejemplo n.º 4
0
 def _extract_certificate(self, zip_file):
     files = zip_file.namelist()
     certificates_names = []
     for f in files:
         if f.startswith(self.CERTIFICATE_PATH) and f.endswith(".xml"):
             certificates_names.append(f)
     if len(certificates_names) >= 1:
         # take only first file
         cert_file = zip_file.open(
             certificates_names[0])  # take only first file
         self.sat5_certificate = cert_file.read().strip()
         cert_file.close()
         # Save version too
         sat5_cert = SatelliteCert()
         sat5_cert.load(self.sat5_certificate)
         self.satellite_version = getattr(sat5_cert, 'satellite-version')
     else:
         raise MissingSatelliteCertificateError(
             "Satellite Certificate was not found in manifest.")
Ejemplo n.º 5
0
    def __init__(self, manifest_path):
        rhnSQL.initDB()
        self.manifest = Manifest(manifest_path)
        self.sat5_cert = SatelliteCert()
        self.sat5_cert.load(self.manifest.get_satellite_certificate())

        verify_mappings()

        f = None
        # Channel families metadata
        try:
            f = open(constants.CHANNEL_FAMILY_MAPPING_PATH, 'r')
            self.families = json.load(f)
            f.close()
        except IOError:
            e = sys.exc_info()[1]
            print "Ignoring channel mappings: %s" % e
            self.families = {}
        finally:
            if f is not None:
                f.close()

        self.families_to_import = []