def download_system_logs(): db_session = DBSession() logs = db_session.query(Log) \ .order_by(Log.created_time.desc()) contents = '' for log in logs: contents += get_datetime_string(log.created_time) + ' UTC\n' contents += log.level + ':' + log.msg + '\n' if log.trace is not None: contents += log.trace + '\n' contents += '-' * 70 + '\n' # Create a file which contains the size of the image file. temp_user_dir = create_temp_user_directory(current_user.username) log_file_path = os.path.normpath(os.path.join(temp_user_dir, "system_logs")) create_directory(log_file_path) make_file_writable(log_file_path) log_file = open(os.path.join(log_file_path, 'system_logs'), 'w') log_file.write(contents) log_file.close() return send_file(os.path.join(log_file_path, 'system_logs'), as_attachment=True)
def export_software_profiles(): db_session = DBSession() software_profile_list = request.args.getlist( 'software_profile_list[]')[0].split(",") software_profiles = get_software_profile_list(db_session) d = {"CSM Server:Software Profile": {}} for software_profile in software_profiles: if software_profile.name in software_profile_list: d["CSM Server:Software Profile"][ software_profile.name] = software_profile.packages temp_user_dir = create_temp_user_directory(current_user.username) software_profile_export_temp_path = os.path.normpath( os.path.join(temp_user_dir, "software_profile_export")) create_directory(software_profile_export_temp_path) make_file_writable(software_profile_export_temp_path) with open( os.path.join(software_profile_export_temp_path, 'software_profiles.json'), 'w') as command_export_file: command_export_file.write(json.dumps(d, indent=2)) return send_file(os.path.join(software_profile_export_temp_path, 'software_profiles.json'), as_attachment=True)
def __init__(self, **kwargs): ReportWriter.__init__(self, **kwargs) self.user = kwargs.pop('user') self.smu_loader = kwargs.pop('smu_loader') self.smu_list = kwargs.pop('smu_list') self.sp_list = kwargs.pop('sp_list') self.smu_list = sorted(self.smu_list, key=lambda x: x.posted_date, reverse=True) self.sp_list = sorted(self.sp_list, key=lambda x: x.posted_date, reverse=True) temp_user_dir = create_temp_user_directory(self.user.username) self.output_file_directory = os.path.normpath(os.path.join(temp_user_dir, 'software_information_export')) create_directory(self.output_file_directory) make_file_writable(self.output_file_directory)
def __init__(self, **kwargs): ReportWriter.__init__(self, **kwargs) self.user = kwargs.pop('user') self.region_name = kwargs.pop('region_name') self.chassis_summary_iter = kwargs.pop('chassis_summary_iter') self.model_name_summary_iter = kwargs.pop('model_name_summary_iter') self.inventory_without_serial_number_iter = kwargs.pop('inventory_without_serial_number_iter') self.inventory_with_duplicate_serial_number_iter = kwargs.pop('inventory_with_duplicate_serial_number_iter') temp_user_dir = create_temp_user_directory(self.user.username) self.output_file_directory = os.path.normpath(os.path.join(temp_user_dir, 'inventory_information_export')) create_directory(self.output_file_directory) make_file_writable(self.output_file_directory)
def download_session_logs(file_list): if hasattr(current_user, 'username'): username = current_user.username else: username = g.api_user.username temp_user_dir = create_temp_user_directory(username) session_zip_path = os.path.normpath(os.path.join(temp_user_dir, "session_logs")) zip_file = os.path.join(session_zip_path, "session_logs.zip") create_directory(session_zip_path) make_file_writable(session_zip_path) zout = zipfile.ZipFile(zip_file, mode='w') for f in file_list: zout.write(os.path.normpath(f), os.path.basename(f)) zout.close() return send_file(zip_file, as_attachment=True)
def __init__(self, **kwargs): ReportWriter.__init__(self, **kwargs) self.user = kwargs.pop('user') self.serial_number = kwargs.pop('serial_number') self.region_names = kwargs.pop('region_names') self.chassis_types = kwargs.pop('chassis_types') self.software_versions = kwargs.pop('software_versions') self.model_names = kwargs.pop('model_names') self.partial_model_names = kwargs.pop('partial_model_names') self.vid = kwargs.pop('vid') self.available_inventory_iter = kwargs.pop('available_inventory_iter') self.in_use_inventory_iter = kwargs.pop('in_use_inventory_iter') temp_user_dir = create_temp_user_directory(self.user.username) self.output_file_directory = os.path.normpath(os.path.join(temp_user_dir, 'inventory_information_export')) create_directory(self.output_file_directory) make_file_writable(self.output_file_directory)
def export_command_profiles(): db_session = DBSession() profiles_list = request.args.getlist('profiles_list[]')[0].split(",") db_profiles = db_session.query(CustomCommandProfile).all() d = {"CSM Server:Custom Command Profile": {}} for profile in db_profiles: if profile.profile_name in profiles_list: d["CSM Server:Custom Command Profile"][profile.profile_name] = profile.command_list temp_user_dir = create_temp_user_directory(current_user.username) custom_command_export_temp_path = os.path.normpath(os.path.join(temp_user_dir, "custom_command_export")) create_directory(custom_command_export_temp_path) make_file_writable(custom_command_export_temp_path) with open(os.path.join(custom_command_export_temp_path, 'custom_command_profiles.json'), 'w') as command_export_file: command_export_file.write(json.dumps(d, indent=2)) return send_file(os.path.join(custom_command_export_temp_path, 'custom_command_profiles.json'), as_attachment=True)
def export_software_profiles(): db_session = DBSession() software_profile_list = request.args.getlist('software_profile_list[]')[0].split(",") software_profiles = get_software_profile_list(db_session) d = {"CSM Server:Software Profile": {}} for software_profile in software_profiles: if software_profile.name in software_profile_list: d["CSM Server:Software Profile"][software_profile.name] = software_profile.packages temp_user_dir = create_temp_user_directory(current_user.username) software_profile_export_temp_path = os.path.normpath(os.path.join(temp_user_dir, "software_profile_export")) create_directory(software_profile_export_temp_path) make_file_writable(software_profile_export_temp_path) with open(os.path.join(software_profile_export_temp_path, 'software_profiles.json'), 'w') as command_export_file: command_export_file.write(json.dumps(d, indent=2)) return send_file(os.path.join(software_profile_export_temp_path, 'software_profiles.json'), as_attachment=True)
def download_session_logs(file_list): if hasattr(current_user, 'username'): username = current_user.username else: username = g.api_user.username temp_user_dir = create_temp_user_directory(username) session_zip_path = os.path.normpath( os.path.join(temp_user_dir, "session_logs")) zip_file = os.path.join(session_zip_path, "session_logs.zip") create_directory(session_zip_path) make_file_writable(session_zip_path) zout = zipfile.ZipFile(zip_file, mode='w') for f in file_list: zout.write(os.path.normpath(f), os.path.basename(f)) zout.close() return send_file(zip_file, as_attachment=True)
def __init__(self, **kwargs): super(ConformanceReportWriter, self).__init__(**kwargs) self.style_title = xlwt.easyxf('font: height 350, bold on; align: vert centre, horiz center;') self.style_bold = xlwt.easyxf('font: bold on, height 260;') self.style_summary = xlwt.easyxf('font: height 220;') self.style_center = xlwt.easyxf('align: vert centre, horiz center;') self.user = kwargs.pop('user') self.conformance_report = kwargs.pop('conformance_report') self.locale_datetime = kwargs.pop('locale_datetime') self.include_host_packages = kwargs.pop('include_host_packages') self.exclude_conforming_hosts = kwargs.pop('exclude_conforming_hosts') self.wb = xlwt.Workbook() self.ws = self.wb.add_sheet('Conformance Report') self.ws.set_portrait(False) temp_user_dir = create_temp_user_directory(self.user.username) self.output_file_directory = os.path.normpath(os.path.join(temp_user_dir, "conformance_report")) create_directory(self.output_file_directory) make_file_writable(self.output_file_directory) self.row = 0
def get_config_conversion_path(): temp_user_dir = create_temp_user_directory(current_user.username) config_conversion_path = os.path.normpath(os.path.join(temp_user_dir, "config_conversion")) create_directory(config_conversion_path) return config_conversion_path
def get_config_conversion_path(): temp_user_dir = create_temp_user_directory(current_user.username) config_conversion_path = os.path.normpath( os.path.join(temp_user_dir, "config_conversion")) create_directory(config_conversion_path) return config_conversion_path