class BundlePackagerBase(PackagerBase):
    '''
    Creates a package with the basic structure of a bundle, to be included
    in a MetaPackage.
    '''

    def __init__(self, package, name, desc, uuid):
        self.package = Package(package.config, package.store, None)
        self.package.name = name
        self.package.shortdesc = desc
        self.package.version = package.version
        self.package.sdk_version = package.sdk_version
        self.package.uuid = uuid
        self.package.deps = []
        self.package.org = package.org
        self.package.install_dir = package.install_dir
        self.package.osx_framework_library = package.osx_framework_library
        self.package.resources_preinstall = package.resources_preinstall
        self.package.resources_postinstall = package.resources_postinstall
        self.package.__file__ = package.__file__
        PackagerBase.__init__(self, package.config, self.package, package.store)

    def pack(self, output_dir, root=None):
        output_dir = os.path.realpath(output_dir)
        if not os.path.exists(output_dir):
            os.makedirs(output_dir)

        path = self._create_package(output_dir, self.package.get_install_dir(),
                self.package.version, root)
        return [path, None]


    def _create_package(self, output_dir, install_dir, version, root):
        output_file = os.path.join(output_dir, '%s-%s-%s.pkg' %
                (self.name, self.package.version,
                 self.config.target_arch))
        if not root:
            root = self.create_bundle()

        resources = tempfile.mkdtemp()
        if os.path.exists(self.package.resources_preinstall):
            shutil.copy(os.path.join(self.package.resources_preinstall),
                        os.path.join(resources, 'preinstall'))
        if os.path.exists(self.package.resources_postinstall):
            shutil.copy(os.path.join(self.package.resources_postinstall),
                        os.path.join(resources, 'postinstall'))
        packagebuild = PackageBuild()
        packagebuild.create_package(root, self.package.identifier(),
            self.package.version, self.title, output_file, install_dir,
            resources)
        shutil.rmtree(resources)
        return output_file

    def create_bundle(self, target_dir=None):
        '''
        Creates the bundle structure
        '''
        raise NotImplemented('Subclasses should implement create_bundle')
Ejemplo n.º 2
0
class BundlePackagerBase(PackagerBase):
    '''
    Creates a package with the basic structure of a bundle, to be included
    in a MetaPackage.
    '''

    def __init__(self, package, name, desc, uuid):
        self.package = Package(package.config, package.store, None)
        self.package.name = name
        self.package.shortdesc = desc
        self.package.version = package.version
        self.package.sdk_version = package.sdk_version
        self.package.uuid = uuid
        self.package.deps = []
        self.package.org = package.org
        self.package.install_dir = package.install_dir
        self.package.osx_framework_library = package.osx_framework_library
        self.package.resources_preinstall = package.resources_preinstall
        self.package.resources_postinstall = package.resources_postinstall
        self.package.__file__ = package.__file__
        PackagerBase.__init__(self, package.config, self.package, package.store)

    def pack(self, output_dir, root=None):
        output_dir = os.path.realpath(output_dir)
        if not os.path.exists(output_dir):
            os.makedirs(output_dir)

        path = self._create_package(output_dir, self.package.get_install_dir(),
                self.package.version, root)
        return [path, None]


    def _create_package(self, output_dir, install_dir, version, root):
        output_file = os.path.join(output_dir, '%s-%s-%s.pkg' %
                (self.name, self.package.version,
                 self.config.target_arch))
        if not root:
            root = self.create_bundle()

        resources = tempfile.mkdtemp()
        if os.path.exists(self.package.resources_preinstall):
            shutil.copy(os.path.join(self.package.resources_preinstall),
                        os.path.join(resources, 'preinstall'))
        if os.path.exists(self.package.resources_postinstall):
            shutil.copy(os.path.join(self.package.resources_postinstall),
                        os.path.join(resources, 'postinstall'))
        packagebuild = PackageBuild()
        packagebuild.create_package(root, self.package.identifier(),
            self.package.version, self.title, output_file, install_dir,
            resources)
        shutil.rmtree(resources)
        return output_file

    def create_bundle(self, target_dir=None):
        '''
        Creates the bundle structure
        '''
        raise NotImplemented('Subclasses should implement create_bundle')
Ejemplo n.º 3
0
 def __init__(self, package, name, desc, uuid):
     self.package = Package(package.config, package.store, None)
     self.package.name = name
     self.package.shortdesc = desc
     self.package.version = package.version
     self.package.sdk_version = package.sdk_version
     self.package.uuid = uuid
     self.package.deps = []
     self.package.org = package.org
     self.package.install_dir = package.install_dir
     self.package.osx_framework_library = package.osx_framework_library
     PackagerBase.__init__(self, package.config, self.package,
                           package.store)
Ejemplo n.º 4
0
class BundlePackagerBase(PackagerBase):
    '''
    Creates a package with the basic structure of a bundle, to be included
    in a MetaPackage.
    '''
    def __init__(self, package, name, desc, uuid):
        self.package = Package(package.config, package.store, None)
        self.package.name = name
        self.package.shortdesc = desc
        self.package.version = package.version
        self.package.sdk_version = package.sdk_version
        self.package.uuid = uuid
        self.package.deps = []
        self.package.org = package.org
        self.package.install_dir = package.install_dir
        self.package.osx_framework_library = package.osx_framework_library
        PackagerBase.__init__(self, package.config, self.package,
                              package.store)

    def pack(self, output_dir):
        output_dir = os.path.realpath(output_dir)
        if not os.path.exists(output_dir):
            os.makedirs(output_dir)

        path = self._create_package(output_dir, self.package.get_install_dir(),
                                    self.package.version)
        return [path, None]

    def _create_package(self, output_dir, install_dir, version):
        output_file = os.path.join(
            output_dir, '%s-%s-%s.pkg' %
            (self.name, self.package.version, self.config.target_arch))
        root = self.create_bundle()
        packagemaker = PackageMaker()
        packagemaker.create_package(root,
                                    self.package.identifier(),
                                    self.package.version,
                                    self.title,
                                    output_file,
                                    install_dir,
                                    target=None)
        return output_file

    def create_bundle(self):
        '''
        Creates the bundle structure
        '''
        raise NotImplemented('Subclasses should implement create_bundle')
Ejemplo n.º 5
0
 def __init__(self, package, pkgname, desc, uuid):
     self.package = Package(package.config, package.store, None)
     self.package.name = pkgname
     self.package.shortdesc = desc
     self.package.version = package.version
     self.package.sdk_version = package.sdk_version
     self.package.uuid = uuid
     self.package.deps = []
     self.package.org = package.org
     self.package.install_dir = package.install_dir
     self.package.osx_framework_library = package.osx_framework_library
     self.package.resources_preinstall = package.resources_preinstall
     self.package.resources_postinstall = package.resources_postinstall
     self.package.__file__ = package.__file__
     PackagerBase.__init__(self, package.config, self.package,
                           package.store)
Ejemplo n.º 6
0
class BundlePackagerBase(PackagerBase):
    '''
    Creates a package with the basic structure of a bundle, to be included
    in a MetaPackage.
    '''

    def __init__(self, package, name, desc, uuid):
        self.package = Package(package.config, package.store, None)
        self.package.name = name
        self.package.shortdesc = desc
        self.package.version = package.version
        self.package.sdk_version = package.sdk_version
        self.package.uuid = uuid
        self.package.deps = []
        self.package.org = package.org
        self.package.install_dir = package.install_dir
        self.package.osx_framework_library = package.osx_framework_library
        PackagerBase.__init__(self, package.config, self.package, package.store)

    def pack(self, output_dir):
        output_dir = os.path.realpath(output_dir)
        if not os.path.exists(output_dir):
            os.makedirs(output_dir)

        path = self._create_package(output_dir, self.package.get_install_dir(),
                self.package.version)
        return [path, None]


    def _create_package(self, output_dir, install_dir, version):
        output_file = os.path.join(output_dir, '%s-%s-%s.pkg' %
                (self.name, self.package.version,
                 self.config.target_arch))
        root = self.create_bundle()
        packagemaker = PackageMaker()
        packagemaker.create_package(root, self.package.identifier(),
            self.package.version, self.title, output_file,
            install_dir, target=None)
        return output_file

    def create_bundle(self):
        '''
        Creates the bundle structure
        '''
        raise NotImplemented('Subclasses should implement create_bundle')
Ejemplo n.º 7
0
 def __init__(self, package, name, desc, uuid):
     self.package = Package(package.config, package.store, None)
     self.package.name = name
     self.package.shortdesc = desc
     self.package.version = package.version
     self.package.sdk_version = package.sdk_version
     self.package.uuid = uuid
     self.package.deps = []
     self.package.org = package.org
     self.package.install_dir = package.install_dir
     self.package.osx_framework_library = package.osx_framework_library
     PackagerBase.__init__(self, package.config, self.package, package.store)
Ejemplo n.º 8
0
 def __init__(self, package, pkgname, desc, uuid):
     self.package = Package(package.config, package.store, None)
     self.package.name = pkgname
     self.package.shortdesc = desc
     self.package.version = package.version
     self.package.sdk_version = package.sdk_version
     self.package.uuid = uuid
     self.package.deps = []
     self.package.org = package.org
     self.package.install_dir = package.install_dir
     self.package.osx_framework_library = package.osx_framework_library
     self.package.resources_preinstall = package.resources_preinstall
     self.package.resources_postinstall = package.resources_postinstall
     self.package.__file__ = package.__file__
     PackagerBase.__init__(self, package.config, self.package, package.store)
Ejemplo n.º 9
0
 def __init__(self, config, store, cookbook):
     Package.__init__(self, config, store, cookbook)
Ejemplo n.º 10
0
 def __init__(self, config, store, cookbook):
     Package.__init__(self, config, store, cookbook)