示例#1
0
 def __new__(self, xml_state, target_dir, root_dir):
     requested_image_type = xml_state.get_build_type_name()
     if requested_image_type in Defaults.get_filesystem_image_types():
         return FileSystemBuilder(
             xml_state, target_dir, root_dir
         )
     elif requested_image_type in Defaults.get_disk_image_types():
         return DiskBuilder(
             xml_state, target_dir, root_dir
         )
     elif requested_image_type in Defaults.get_live_image_types():
         return LiveImageBuilder(
             xml_state, target_dir, root_dir
         )
     elif requested_image_type in Defaults.get_network_image_types():
         return PxeBuilder(
             xml_state, target_dir, root_dir
         )
     elif requested_image_type in Defaults.get_archive_image_types():
         return ArchiveBuilder(
             xml_state, target_dir, root_dir
         )
     elif requested_image_type in Defaults.get_container_image_types():
         return ContainerBuilder(
             xml_state, target_dir, root_dir
         )
     else:
         raise KiwiRequestedTypeError(
             'requested image type %s not supported' % requested_image_type
         )
示例#2
0
    def create(self):
        supported_archives = Defaults.get_archive_image_types()
        if self.requested_archive_type not in supported_archives:
            raise KiwiArchiveSetupError('Unknown archive type: %s' %
                                        self.requested_archive_type)

        if self.requested_archive_type == 'tbz':
            log.info('Creating XZ compressed tar archive')
            archive = ArchiveTar(self.__target_file_for('tar'))
            archive.create_xz_compressed(self.root_dir)
            checksum = Checksum(self.filename)
            log.info('--> Creating archive checksum')
            checksum.md5(self.checksum)
            self.result.add('root_archive', self.filename)
            self.result.add('root_archive_checksum', self.checksum)
        return self.result
示例#3
0
 def __new__(self, xml_state, target_dir, root_dir):
     requested_image_type = xml_state.get_build_type_name()
     if requested_image_type in Defaults.get_filesystem_image_types():
         return FileSystemBuilder(xml_state, target_dir, root_dir)
     elif requested_image_type in Defaults.get_disk_image_types():
         return DiskBuilder(xml_state, target_dir, root_dir)
     elif requested_image_type in Defaults.get_live_image_types():
         return LiveImageBuilder(xml_state, target_dir, root_dir)
     elif requested_image_type in Defaults.get_network_image_types():
         return PxeBuilder(xml_state, target_dir, root_dir)
     elif requested_image_type in Defaults.get_archive_image_types():
         return ArchiveBuilder(xml_state, target_dir, root_dir)
     elif requested_image_type in Defaults.get_container_image_types():
         return ContainerBuilder(xml_state, target_dir, root_dir)
     else:
         raise KiwiRequestedTypeError(
             'requested image type %s not supported' % requested_image_type)
示例#4
0
    def create(self):
        supported_archives = Defaults.get_archive_image_types()
        if self.requested_archive_type not in supported_archives:
            raise KiwiArchiveSetupError(
                'Unknown archive type: %s' % self.requested_archive_type
            )

        if self.requested_archive_type == 'tbz':
            log.info('Creating XZ compressed tar archive')
            archive = ArchiveTar(
                self.__target_file_for('tar')
            )
            archive.create_xz_compressed(self.root_dir)
            checksum = Checksum(self.filename)
            log.info('--> Creating archive checksum')
            checksum.md5(self.checksum)
            self.result.add(
                'root_archive', self.filename
            )
            self.result.add(
                'root_archive_checksum', self.checksum
            )
        return self.result