Esempio n. 1
0
class Installer(object):
    def __init__(self, builder):
        self.builder = builder
        self._log = _log
        self._installer = CloudFoundryInstaller(self.builder._ctx)

    def package(self, key):
        if key in self.builder._ctx.keys():
            key = self.builder._ctx[key]
        self.builder._ctx['%s_INSTALL_PATH' % key] = \
            self._installer.install_binary(key)
        self._log.info("Installed [%s] to [%s]", key,
                       self.builder._ctx['%s_INSTALL_PATH' % key])
        return self

    def packages(self, *keys):
        for key in keys:
            self.package(key)
        return self

    def modules(self, key):
        return ModuleInstaller(self, key)

    def config(self):
        return ConfigInstaller(self)

    def extensions(self):
        ctx = self.builder._ctx
        extn_reg = self.builder._extn_reg

        def process(retcode):
            if retcode != 0:
                raise RuntimeError('Extension Failed with [%s]' % retcode)
        for path in extn_reg._paths:
            process_extension(path, ctx, 'compile', process, args=[self])
        ctx['EXTENSIONS'].extend(extn_reg._paths)
        return self

    def build_pack_utils(self):
        self._log.info("Installed build pack utils.")
        (self.builder.copy()
             .under('{BP_DIR}/lib/build_pack_utils')
             .into('{BUILD_DIR}/.bp/lib/build_pack_utils')
             .done())
        return self

    def build_pack(self):
        return BuildPackManager(self)

    def done(self):
        return self.builder
Esempio n. 2
0
class Installer(object):
    def __init__(self, builder):
        self.builder = builder
        self._log = _log
        self._installer = CloudFoundryInstaller(self.builder._ctx)

    def package(self, key):
        if key in self.builder._ctx.keys():
            key = self.builder._ctx[key]
        self.builder._ctx['%s_INSTALL_PATH' % key] = \
            self._installer.install_binary(key)
        self._log.info("Installed [%s] to [%s]", key,
                       self.builder._ctx['%s_INSTALL_PATH' % key])
        return self

    def packages(self, *keys):
        for key in keys:
            self.package(key)
        return self

    def modules(self, key):
        return ModuleInstaller(self, key)

    def config(self):
        return ConfigInstaller(self)

    def extensions(self):
        ctx = self.builder._ctx
        extn_reg = self.builder._extn_reg

        def process(retcode):
            if retcode != 0:
                raise RuntimeError('Extension Failed with [%s]' % retcode)
        for path in extn_reg._paths:
            process_extension(path, ctx, 'compile', process, args=[self])
        ctx['EXTENSIONS'].extend(extn_reg._paths)
        return self

    def build_pack_utils(self):
        self._log.info("Installed build pack utils.")
        (self.builder.copy()
             .under('{BP_DIR}/lib/build_pack_utils')
             .into('{BUILD_DIR}/.bp/lib/build_pack_utils')
             .done())
        return self

    def build_pack(self):
        return BuildPackManager(self)

    def done(self):
        return self.builder
Esempio n. 3
0
class Installer(object):
    def __init__(self, builder):
        self.builder = builder
        self._log = _log
        self._installer = CloudFoundryInstaller(self.builder._ctx)

    def package(self, key):
        if key in self.builder._ctx.keys():
            key = self.builder._ctx[key]
        self.builder._ctx['%s_INSTALL_PATH' % key] = \
            self._installer.install_binary(key)
        self._log.info("Installed [%s] to [%s]", key,
                       self.builder._ctx['%s_INSTALL_PATH' % key])
        return self

    def packages(self, *keys):
        for key in keys:
            self.package(key)
        return self

    def modules(self, key):
        return ModuleInstaller(self, key)

    def config(self):
        return ConfigInstaller(self)

    def extension(self):
        return ExtensionInstaller(self)

    def extensions(self):
        return ExtensionInstaller(self)

    def build_pack_utils(self):
        self._log.info("Installed build pack utils.")
        (self.builder.copy()
             .under('{BP_DIR}/lib/build_pack_utils')
             .into('{BUILD_DIR}/.bp/lib/build_pack_utils')
             .done())
        return self

    def build_pack(self):
        return BuildPackManager(self)

    def done(self):
        return self.builder
Esempio n. 4
0
class Installer(object):
    def __init__(self, builder):
        self.builder = builder
        self._log = _log
        self._installer = CloudFoundryInstaller(self.builder._ctx)

    def package(self, key):
        if key in self.builder._ctx.keys():
            key = self.builder._ctx[key]
        self.builder._ctx['%s_INSTALL_PATH' % key] = \
            self._installer.install_binary(key)
        self._log.info("Installed [%s] to [%s]", key,
                       self.builder._ctx['%s_INSTALL_PATH' % key])
        return self

    def packages(self, *keys):
        for key in keys:
            self.package(key)
        return self

    def modules(self, key):
        return ModuleInstaller(self, key)

    def config(self):
        return ConfigInstaller(self)

    def extension(self):
        return ExtensionInstaller(self)

    def extensions(self):
        return ExtensionInstaller(self)

    def build_pack_utils(self):
        self._log.info("Installed build pack utils.")
        (self.builder.copy().under('{BP_DIR}/lib/build_pack_utils').into(
            '{BUILD_DIR}/.bp/lib/build_pack_utils').done())
        return self

    def build_pack(self):
        return BuildPackManager(self)

    def done(self):
        return self.builder
Esempio n. 5
0
class Installer(object):
    def __init__(self, builder):
        self.builder = builder
        self._installer = CloudFoundryInstaller(self.builder._ctx)

    def package(self, key):
        self.builder._ctx['%s_INSTALL_PATH' % key] = \
            self._installer.install_binary(key)
        return self

    def packages(self, *keys):
        for key in keys:
            self.package(key)
        return self

    def config(self):
        return ConfigInstaller(self)

    def done(self):
        return self.builder
Esempio n. 6
0
class Installer(object):
    def __init__(self, builder):
        self.builder = builder
        self._installer = CloudFoundryInstaller(self.builder._ctx)

    def package(self, key):
        self.builder._ctx['%s_INSTALL_PATH' % key] = \
            self._installer.install_binary(key)
        return self

    def packages(self, *keys):
        for key in keys:
            self.package(key)
        return self

    def config(self):
        return ConfigInstaller(self)

    def done(self):
        return self.builder