Exemple #1
0
 def initialize(self):
     '''Evaluate the package meta-data for consistency
     and initialize parameters. Verify that data on the disk for
     this package is consistent.
     '''
     Package.initialize(self)
     self.status = FAIL
     dat = self.meta_data.data
     if dat:
         release = dat.get('release')
         if type(release) == type(1):
             self.release = release
             class_name = dat.get('class_name')
             if type(class_name) == type('string'):
                 self.status = OK
                 self.class_name = class_name
                 injectors_info = dat.get('injectors')
                 if type(injectors_info) == type({}):
                     self.injectors_info = injectors_info
                 libs_info = dat.get('libs')
                 if type(libs_info) == type({}):
                     self.libs_info = libs_info
             else:
                 msg = "No script infomation for this package"
                 raise BadPackage, (self.name, msg)
         else:
             msg = "No release infomation for this package"
             raise BadPackage, (self.name, msg)
     else:
         msg = "No metadata found for this package"
         raise BadPackage, (self.name, msg)
     self.full_name = "%s-%d" % (self.name, self.release)
Exemple #2
0
 def initialize(self):
     '''Evaluate the package meta-data for consistency
     and initialize parameters. Verify that data on the disk for
     this package is consistent.
     '''
     Package.initialize(self)
     self.status = FAIL
     if self.meta_data.data:
         if type(self.meta_data.data) == type(dict()):
             install_data = self.meta_data.data.get("install")
             chk = install_data.get('console')
             self.console = eval_boolean(chk)
             chk = install_data.get('reboot')
             self.reboot = eval_boolean(chk)
             self.checksum = install_data.get('md5sum')
             if install_data:
                 if type(install_data) == type({}):
                     self.full_name = install_data.get('fullName')
                     if not self.full_name:
                         self.full_name = install_data.get('full_name')
                     if self.full_name:
                         self.status = OK
                         return
                     else:
                         msg = "Package does not exist on the server"
                         raise BadPackage, (self.name, msg)
                 else:
                     msg = "The server's record is completely corrupt"
                     raise BadPackage, (self.name, msg)
             else:
                 msg = "server record is corrupt: no 'install' section"
                 raise BadPackage, (self.name, msg)
         else:
             msg = "server record is corrupt: not a dictionary"
             raise BadPackage, (self.name, msg)
     else:
         msg = "No metadata found for this package"
         raise BadPackage, (self.name, msg)