コード例 #1
0
ファイル: updateDB.py プロジェクト: Sean-Lan/Flask-Dashboard
def update_stack_test_results(root_folder, rating_dict, default_weight):
    LogConfig.init_logging()
    logger = logging.getLogger(__name__)
    daily_folders = testing.get_daily_directories(root_folder)
    model = Model('stack_test_result')
    column_list = ['daily_folder',]
    parsed_folders = [record['daily_folder'] for record in model.select(column_list)]
    
    for daily_folder in daily_folders:
        if daily_folder in parsed_folders:
            continue
        try:
            daily_results = testing.get_daily_results_from_daily_directory(daily_folder)
            parsed_results = testing.parse_test_result(daily_results, 
                    rating_dict, default_weight)
            crio_date = parsed_results['crio_date']
            results = parsed_results['results']
            for os_name, pass_rates in results.items():
                for target_model, pass_rate in pass_rates.items():
                    table_record = {
                            'daily_folder': daily_folder,
                            'validated_stack': crio_date,
                            'os_name': os_name,
                            'target_name': target_model,
                            'pass_rate': pass_rate
                    }
                    model.insert(table_record)
        except Exception as e:
            logger.warning('Exception happened: %s', e)
コード例 #2
0
ファイル: updateDB.py プロジェクト: Sean-Lan/Flask-Dashboard
def update_bundle_installer(table_name, bundle_root, products, DVD_names, date):
    logger = logging.getLogger(__name__)
    model = Model(table_name)
    column_list = ['bundle_path',]
    exist_bundles = [record['bundle_path'] for record in model.select(column_list)]
    bundle_folders = bundle.retrieve_bundle_folders(bundle_root, date)
    for bundle_folder in bundle_folders:
        if remove_path_prefix(bundle_folder) in exist_bundles:
            continue
        logger.info('Handle bundle installer: %s', bundle_folder)
        try:
            record = bundle.get_bundle_record(bundle_folder, products, DVD_names)
            logger.info('The record is: %s', record)
            table_record = {
                    'bundle_path': remove_path_prefix(record['bundle_path']),
                    'toolkit_path': remove_path_prefix(record['installer_path']),
                    'lv_version': record['lvVersion'],
                    'lv_api_version': record['lvAPIVersion'],
                    'safemode': record['safemode'],
                    'actual_size': record['actual_size'],
                    'dedupe_size': record['idea_size']
                    }
            model.insert(table_record)
        except Exception as e:
            logger.warning('Exception happened: %s', e)
コード例 #3
0
ファイル: updateDB.py プロジェクト: Sean-Lan/Flask-Dashboard
def update_toolkit_installer(table_name, toolkit_folder, name, products, date):
    logger = logging.getLogger(__name__)
    model = Model(table_name)
    column_list = ['installer_path',]
    exist_installers = [record['installer_path'] for record in model.select(column_list)]
    installer_folders = installer.retrieve_installer_folders(toolkit_folder, name, date)
    for installer_folder in installer_folders:
        if remove_path_prefix(installer_folder) in exist_installers:
            continue
        logger.info('Handle toolkit installer: %s', installer_folder)
        try:
            record = installer.get_installer_record(installer_folder, products)
            logger.info('The record is: %s', record)
            table_record = {
                    'installer_path': remove_path_prefix(record['installer_path']),
                    'lv_version': record['lvVersion'],
                    'lv_api_version': record['lvAPIVersion'],
                    'safemode': record['safemode']
                    }
            model.insert(table_record)
        except Exception as e:
            logger.warning('Exception happened: %s', e)
コード例 #4
0
ファイル: updateDB.py プロジェクト: Sean-Lan/Flask-Dashboard
def update_stack_dashboard(table_name, stack_web_url, date):
    logger = logging.getLogger(__name__)
    model = Model(table_name)
    column_list = ['validated_stack',]
    exist_stacks = [record['validated_stack'] for record in model.select(column_list)]

    stack_urls = niweb.extract_valid_stack_urls(stack_web_url)
    stack_url_dict = niweb.convert_stackurl_list_to_dict(stack_urls)
    for stack_name in sorted(stack_url_dict.keys()):
        try:
            if newer_than_date(stack_name, date) and stack_name not in exist_stacks:
                logger.info('Construct record for %s', stack_name)
                record = niweb.construct_record_dict(stack_url_dict[stack_name])
                table_record = {
                        'validated_stack': record['Validated Stack'],
                        'validated_stack_url': record['stackUrl'],
                        'lv_version': record['lvVersion'],
                        'lv_api_version': record['lvAPIVersion'],
                        'safemode': record['Safemode']
                        }
                logger.info('The record is: %s', record)
                model.insert(table_record)
        except Exception as e:
            logger.warning('Exception happened: %s', e)