test
This commit is contained in:
43
lib/tool_base/util_yaml.py
Normal file
43
lib/tool_base/util_yaml.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#########################################################
|
||||
import os, sys, traceback, subprocess, json, platform
|
||||
from framework import app, logger, path_data
|
||||
from .file import ToolBaseFile
|
||||
|
||||
class ToolUtilYaml(object):
|
||||
|
||||
@classmethod
|
||||
def copy_section(cls, source_file, target_file, section_name):
|
||||
try:
|
||||
if os.path.exists(source_file) == False:
|
||||
return 'not_exist_source_file'
|
||||
if os.path.exists(target_file) == False:
|
||||
return 'not_exist_target_file'
|
||||
lines = ToolBaseFile.read(source_file).split('\n')
|
||||
section = {}
|
||||
current_section_name = None
|
||||
current_section_data = None
|
||||
|
||||
for line in lines:
|
||||
line = line.strip()
|
||||
if line.startswith('# SECTION START : '):
|
||||
current_section_name = line.split(':')[1].strip()
|
||||
current_section_data = []
|
||||
if current_section_data is not None:
|
||||
current_section_data.append(line)
|
||||
if line.startswith('# SECTION END'):
|
||||
section[current_section_name] = current_section_data
|
||||
current_section_name = current_section_data = None
|
||||
|
||||
if section_name not in section:
|
||||
return 'not_include_section'
|
||||
|
||||
data = '\n'.join(section[section_name])
|
||||
source_data = ToolBaseFile.read(target_file)
|
||||
source_data = source_data + f"\n{data}\n"
|
||||
ToolBaseFile.write(source_data, target_file)
|
||||
return 'success'
|
||||
except Exception as exception:
|
||||
logger.error('Exception:%s', exception)
|
||||
logger.error(traceback.format_exc())
|
||||
return 'exception'
|
||||
Reference in New Issue
Block a user