Commit ee502baf authored by 智勇's avatar 智勇

优化

parent 08384732
# coding=UTF-8
from __future__ import print_function
from functools import partial
import io
import yaml
import fileinput
......@@ -9,22 +10,27 @@ import re
import copy
import sys
import string
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger("mylog")
f = io.open('replace_config.yaml', 'r', encoding='utf-8')
res = yaml.load(f)
print("全部配置信息:", res)
logger.info("全部配置信息:" + str(res))
f.close()
# 获取当前项目的配置
env = os.environ
project = env.get('SYSTEM_NAME')
config = res.get(project, res.get('common'))
config = sorted(config.items(), key=lambda rule: (rule[1]['order'], rule[0]))
print( "当前project :", project)
print(project, "的配置信息:", config)
logger.info("当前project: " + str(project))
logger.info("配置信息: " + str(config))
namespace = env.get('NAMESPACE')
print('namespace:', namespace)
print('host:', sys.argv[1])
logger.info('namespace: ' + namespace)
logger.info('host: ' + str(sys.argv[1]))
files = []
acceptType = {'.html', '.js', '.css'}
......@@ -39,19 +45,21 @@ def findFile (dir):
findFile(dir + '/' + sub)
distPaths = []
if '--' in project:
distPaths.append(os.path.abspath(project.split('--')[0] + '/dist'))
distPaths.append(os.path.abspath(project.split('--')[1] + '/dist'))
else:
distPaths.append(os.path.abspath(project + '/dist'))
distPaths.append(os.path.abspath(project + '/dist'))
# distPaths.append(os.path.abspath('/Users/zhiyong/IdeaProjects/qg/vcc-ui/dist'))
# 过滤符合要求的文件路径
for distPath in distPaths:
print("dist路径:", distPath)
logger.info('dist路径' + distPath)
findFile(distPath)
def _replayHanlder(rule, to, matched):
logger.info("规则:" + rule + ", 匹配到:" + str(matched.group()) + ", 替换为:" + to);
return to;
# 替换文件中的内容
for file in files:
logger.info('开始替换文件:' + str(file))
for line in fileinput.input(file, inplace = 1):
for item in config:
rule = copy.deepcopy(item[1])
......@@ -64,9 +72,11 @@ for file in files:
if rule['reg']:
p = re.compile(r'' + rule['reg'])
line = re.sub(p, rule['to'], line)
_handler1 = partial(_replayHanlder, rule['reg'], rule['to'])
line = re.sub(p, _handler1, line)
print(line, end = '')
fileinput.close()
f.close()
\ No newline at end of file
logger.info('完成')
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment