Example #1
0
 def bind(self, conduit, binding, options):
     """
     Bind a repository.
     @param conduit: A handler conduit.
     @type conduit: L{pulp.agent.lib.conduit.Conduit}
     @param binding: A binding to add/update.
       A binding is: {type_id:<str>, repo_id:<str>, details:<dict>}
     @type binding: dict
     @param options: Bind options.
     @type options: dict
     @return: A bind report.
     @rtype: L{BindReport}
     """
     log.info('bind: %s, options:%s', binding, options)
     cfg = conduit.get_consumer_config().graph()
     details = binding['details']
     repo_id = binding['repo_id']
     repo_name = details['repo_name']
     urls = self.__urls(details)
     report = BindReport(repo_id)
     repolib.bind(
         cfg.filesystem.repo_file,
         os.path.join(cfg.filesystem.mirror_list_dir, repo_id),
         cfg.filesystem.gpg_keys_dir,
         cfg.filesystem.cert_dir,
         repo_id,
         repo_name,
         urls,
         details.get('gpg_keys', []),
         details.get('ca_cert'),
         details.get('client_cert'),
         len(urls) > 0,)
     report.set_succeeded()
     return report
Example #2
0
 def bind(self, conduit, binding, options):
     """
     Bind a repository.
     @param conduit: A handler conduit.
     @type conduit: L{pulp.agent.lib.conduit.Conduit}
     @param binding: A binding to add/update.
       A binding is: {type_id:<str>, repo_id:<str>, details:<dict>}
     @type binding: dict
     @param options: Bind options.
     @type options: dict
     @return: A bind report.
     @rtype: L{BindReport}
     """
     log.info('bind: %s, options:%s', binding, options)
     cfg = conduit.get_consumer_config().graph()
     details = binding['details']
     repo_id = binding['repo_id']
     repo_name = details['repo_name']
     urls = self.__urls(details)
     report = BindReport(repo_id)
     verify_ssl = cfg.server.verify_ssl.lower() != 'false'
     repolib.bind(cfg.filesystem.repo_file,
                  os.path.join(cfg.filesystem.mirror_list_dir, repo_id),
                  cfg.filesystem.gpg_keys_dir,
                  cfg.filesystem.cert_dir,
                  repo_id,
                  repo_name,
                  urls,
                  details.get('gpg_keys', {}),
                  details.get('client_cert'),
                  len(urls) > 0,
                  verify_ssl=verify_ssl,
                  ca_path=cfg.server.ca_path)
     report.set_succeeded()
     return report
Example #3
0
    def unbind(conduit, repo_id, options):
        """
        Unbind a repository. This is a no-op since the consumer does not need
        to keep any state with regard to bindings.

        :param  conduit: A handler conduit.
        :type   conduit:  pulp.agent.lib.conduit.Conduit
        :param  repo_id: A repository ID.
        :type   repo_id: str
        :param  options: Unbind options.
        :type   options: dict

        :return:    An unbind report.
        :rtype:     BindReport
        """
        report = BindReport(repo_id)
        report.set_succeeded()
        return report
Example #4
0
    def unbind(conduit, repo_id, options):
        """
        Unbind a repository. This is a no-op since the consumer does not need
        to keep any state with regard to bindings.

        :param  conduit: A handler conduit.
        :type   conduit:  pulp.agent.lib.conduit.Conduit
        :param  repo_id: A repository ID.
        :type   repo_id: str
        :param  options: Unbind options.
        :type   options: dict

        :return:    An unbind report.
        :rtype:     BindReport
        """
        report = BindReport(repo_id)
        report.set_succeeded()
        return report
Example #5
0
File: bind.py Project: ehelms/pulp
 def unbind(self, repoid):
     """
     Bind a repository.
     @param repoid: A repository ID.
     @type repoid: str
     @return: An unbind report.
     @rtype: L{BindReport}
     """
     log.info('unbind: %s', repoid)
     report = BindReport()
     cfg = ConsumerConfig()
     repolib.unbind(
         cfg.filesystem.repo_file,
         os.path.join(cfg.filesystem.mirror_list_dir, repoid),
         cfg.filesystem.gpg_keys_dir,
         cfg.filesystem.cert_dir,
         repoid)
     report.succeeded()
     return report
Example #6
0
 def unbind(self, conduit, repo_id, options):
     """
     Bind a repository.
         @param conduit: A handler conduit.
     @type conduit: L{pulp.agent.lib.conduit.Conduit}
     @param repo_id: A repository ID.
     @type repo_id: str
     @param options: Unbind options.
     @type options: dict
     @return: An unbind report.
     @rtype: L{BindReport}
     """
     log.info('unbind: %s, options:%s', repo_id, options)
     cfg = conduit.get_consumer_config().graph()
     report = BindReport(repo_id)
     repolib.unbind(cfg.filesystem.repo_file,
                    os.path.join(cfg.filesystem.mirror_list_dir,
                                 repo_id), cfg.filesystem.gpg_keys_dir,
                    cfg.filesystem.cert_dir, repo_id)
     report.set_succeeded()
     return report
Example #7
0
    def bind(conduit, binding, options):
        """
        Bind a repository. This is a no-op since the consumer does not need
        to keep any state with regard to bindings.

        :param  conduit: A handler conduit.
        :type   conduit: pulp.agent.lib.conduit.Conduit
        :param  binding: A binding to add/update.
          A binding is: {type_id:<str>, repo_id:<str>, details:<dict>}
        :type   binding: dict
        :param  options: Bind options.
        :type   options: dict

        :return: A bind report.
        :rtype:  BindReport
        """
        repo_id = binding['repo_id']
        logger.info('binding to repo %s' % repo_id)

        report = BindReport(repo_id)
        report.set_succeeded()
        return report
Example #8
0
    def bind(conduit, binding, options):
        """
        Bind a repository. This is a no-op since the consumer does not need
        to keep any state with regard to bindings.

        :param  conduit: A handler conduit.
        :type   conduit: pulp.agent.lib.conduit.Conduit
        :param  binding: A binding to add/update.
          A binding is: {type_id:<str>, repo_id:<str>, details:<dict>}
        :type   binding: dict
        :param  options: Bind options.
        :type   options: dict

        :return: A bind report.
        :rtype:  BindReport
        """
        repo_id = binding['repo_id']
        logger.info('binding to repo %s' % repo_id)

        report = BindReport(repo_id)
        report.set_succeeded()
        return report
Example #9
0
 def unbind(self, conduit, repo_id, options):
     """
     Bind a repository.
         @param conduit: A handler conduit.
     @type conduit: L{pulp.agent.lib.conduit.Conduit}
     @param repo_id: A repository ID.
     @type repo_id: str
     @param options: Unbind options.
     @type options: dict
     @return: An unbind report.
     @rtype: L{BindReport}
     """
     log.info('unbind: %s, options:%s', repo_id, options)
     cfg = conduit.get_consumer_config().graph()
     report = BindReport(repo_id)
     repolib.unbind(
         cfg.filesystem.repo_file,
         os.path.join(cfg.filesystem.mirror_list_dir, repo_id),
         cfg.filesystem.gpg_keys_dir,
         cfg.filesystem.cert_dir,
         repo_id)
     report.set_succeeded()
     return report
Example #10
0
File: bind.py Project: ehelms/pulp
 def bind(self, definitions):
     """
     Bind a repository.
     @param definitions: A list of bind definitions.
     Definition:
         {consumer_id:<str>,
          repo_id:<str>,
          distributor_id:<str>,
          href:<str>,
          type_id:<str>,
          details:<dict>}
     @type definitions: list
     @return: A bind report.
     @rtype: L{BindReport}
     """
     log.info('bind: %s', definitions)
     report = BindReport()
     cfg = ConsumerConfig()
     for definition in definitions:
         details = definition['details']
         repository = definition['repository']
         repoid = repository['id']
         urls = self.__urls(details)
         repolib.bind(
             cfg.filesystem.repo_file,
             os.path.join(cfg.filesystem.mirror_list_dir, repoid),
             cfg.filesystem.gpg_keys_dir,
             cfg.filesystem.cert_dir,
             repoid,
             repository,
             urls,
             details.get('gpg_keys', []),
             details.get('ca_cert'),
             details.get('client_cert'),
             len(urls) > 0,)
     report.succeeded()
     return report