def cli(self):
     """
     Handle the argument parse, and the return the instance itself.
     """
     # parser the argv
     self.options = self.parser()
     # setup the logging config
     if self.options.verbose is True:
         verbose_formatter = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
         logging.basicConfig(level=logging.DEBUG, format=verbose_formatter)
     else:
         formatter = '%(levelname)s: %(message)s'
         logging.basicConfig(level=logging.INFO, format=formatter)
     # check credentials file
     try:
         abs_credentials_path = os.path.abspath(self.options.credentials)
         logger.info('Load Credentials from {}'.format(abs_credentials_path))
         credentials = Credentials.from_file(abs_credentials_path)
         self.connection_options = {'credentials': credentials}
     except Exception as e:
         logger.warning('No credentials. Run with "--help" for more information.')
         logger.debug(e)
     # assign the variable
     self.entry_namespace = self.options.namespace
     self.dest_dir = self.options.dest_dir
     return self
    def cli(self):
        """
        Handle the argument parse, and the return the instance itself.
        """
        # parser the argv
        options = self.parser()
        self.is_verbose = options.verbose
        # assign the variable
        self.entry_namespace = options.namespace
        self.origin_dest_dir = options.dest_dir
        self.dest_dir = options.dest_dir

        # setup the logging config
        self._configure_login()

        # check credentials file
        try:
            abs_credentials_path = os.path.abspath(options.credentials)
            logger.debug("Load Credentials from {}".format(abs_credentials_path))
            credentials = Credentials.from_file(abs_credentials_path)
            self.connection_options = {"credentials": credentials}
        except Exception as e:
            logger.warning('No credentials. Run with "--help" for more information.')
            logger.debug(e)
        return self
    def cli(self):
        """
        This method will parse the argument for CLI.
        """
        # argument parser
        taskcluster_credentials = 'tc_credentials.json'
        parser = argparse.ArgumentParser(prog='taskcluster_download',
                                         description='The simple download tool for Taskcluster.',
                                         formatter_class=RawTextHelpFormatter,
                                         epilog=textwrap.dedent('''\
                                         The tc_credentials.json Template:
                                             {
                                                 "clientId": "",
                                                 "accessToken": ""
                                             }
                                         '''))
        parser.add_argument('--credentials', action='store', default=taskcluster_credentials, dest='credentials',
                            help='The credential JSON file (default: {})'.format(taskcluster_credentials))
        task_group = parser.add_mutually_exclusive_group(required=True)
        task_group.add_argument('-n', '--namespace', action='store', dest='namespace', help='The namespace of task')
        task_group.add_argument('-t', '--taskid', action='store', dest='task_id', help='The taskId of task')
        artifact_group = parser.add_argument_group('Download Artifact', 'The artifact name and dest folder')
        artifact_group.add_argument('-a', '--artifact', action='store', dest='aritfact_name',
                                    help='The artifact name on Taskcluster')
        artifact_group.add_argument('-d', '--dest-dir', action='store', dest='dest_dir',
                                    help='The dest folder (default: current working folder)')
        parser.add_argument('-v', '--verbose', action='store_true', dest='verbose', default=False,
                            help='Turn on verbose output, with all the debug logger.')

        # parser the argv
        options = parser.parse_args(sys.argv[1:])
        # setup the logging config
        if options.verbose is True:
            verbose_formatter = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
            logging.basicConfig(level=logging.DEBUG, format=verbose_formatter)
        else:
            formatter = '%(levelname)s: %(message)s'
            logging.basicConfig(level=logging.INFO, format=formatter)
        # check credentials file
        try:
            abs_credentials_path = os.path.abspath(options.credentials)
            credentials = Credentials.from_file(abs_credentials_path)
            self.connection_options = {'credentials': credentials}
        except Exception as e:
            logger.warning('No connection options.')
            logger.debug(e)
        # assign the variable
        self.namespace = options.namespace
        self.task_id = options.task_id
        self.aritfact_name = options.aritfact_name
        self.dest_dir = options.dest_dir
        return self
 def _check_crendentials_file(self, options):
     try:
         abs_credentials_path = os.path.abspath(options.credentials)
         credentials = Credentials.from_file(abs_credentials_path)
         self.connection_options = {'credentials': credentials}
         logger.info('Load Credentials from {}'.format(abs_credentials_path))
     except Exception as e:
         if os.path.isfile(abs_credentials_path):
             logger.error('Please check your credentials file: {}'.format(abs_credentials_path))
             raise e
         else:
             logger.warning('No credentials. Run with "--help" for more information.')
             logger.debug(e)
    def cli(self):
        """
        Handle the argument parse, and the return the instance itself.
        """
        # argument parser
        taskcluster_credentials = 'tc_credentials.json'
        parser = argparse.ArgumentParser(prog='taskcluster_traverse',
                                         description='The simple GUI traverse and download tool for Taskcluster.',
                                         formatter_class=RawTextHelpFormatter,
                                         epilog=textwrap.dedent('''\
                                         The tc_credentials.json Template:
                                             {
                                                 "clientId": "",
                                                 "accessToken": ""
                                             }
                                         '''))
        parser.add_argument('--credentials', action='store', default=taskcluster_credentials, dest='credentials',
                            help='The credential JSON file (default: {})'.format(taskcluster_credentials))
        parser.add_argument('-n', '--namespace', action='store', dest='namespace', default='',
                            help='The namespace of task')
        parser.add_argument('-d', '--dest-dir', action='store', dest='dest_dir',
                            help='The dest folder (default: current working folder)')
        parser.add_argument('-v', '--verbose', action='store_true', dest='verbose', default=False,
                            help='Turn on verbose output, with all the debug logger.')

        # parser the argv
        options = parser.parse_args(sys.argv[1:])
        # setup the logging config
        if options.verbose is True:
            verbose_formatter = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
            logging.basicConfig(level=logging.DEBUG, format=verbose_formatter)
        else:
            formatter = '%(levelname)s: %(message)s'
            logging.basicConfig(level=logging.INFO, format=formatter)
        # check credentials file
        try:
            abs_credentials_path = os.path.abspath(options.credentials)
            credentials = Credentials.from_file(abs_credentials_path)
            self.connection_options = {'credentials': credentials}
        except Exception as e:
            logger.warning('No connection options.')
            logger.debug(e)
        # assign the variable
        self.entry_namespace = options.namespace
        self.dest_dir = options.dest_dir
        return self
示例#6
0
def test_another_subject_Mail(app):
    app.session.login(Credentials(username="******", password="******"))
    app.field_and_send_message(Mail(email="*****@*****.**", subject="ALERT! ALERT!"))
    time.sleep(1)
    app.session.logout()