def push(self):
     """
     Run upload of configuration to FreeIPA via API.
     This can only be run locally on FreeIPA nodes.
     Arguments to the IpaConnector instance
     are passed from `self.args` in the `_api_connect` method.
     :raises ConfigError: in case of configuration syntax errors
     :raises IntegrityError: in case of config entity integrity violations
     :raises ManagerError: in case of API connection error or update error
     """
     self.check()
     from ipa_connector import IpaUploader
     utils.init_api_connection(self.args.loglevel)
     self.uploader = IpaUploader(self.settings, self.entities,
                                 self.args.threshold, self.args.force,
                                 self.args.deletion)
     self.uploader.push()
 def pull(self):
     """
     Run upload of configuration to FreeIPA via API.
     This can only be run locally on FreeIPA nodes.
     Arguments to the IpaConnector instance
     are passed from `self.args` in the `_api_connect` method.
     :raises ConfigError: in case of configuration syntax errors
     :raises IntegrityError: in case of config entity integrity violations
     :raises ManagerError: in case of API connection error or update error
     """
     self.load()
     from ipa_connector import IpaDownloader
     utils.init_api_connection(self.args.loglevel)
     self.downloader = IpaDownloader(self.settings, self.entities,
                                     self.args.config, self.args.dry_run,
                                     self.args.add_only,
                                     self.args.pull_types)
     self.downloader.pull()