使用configparser工具优化代码
configparser为自定义参数解析工具,通过NUWA部署时,解析参数模板,将模板中的参数变量,替换为实际的配置项值。
准备工作
- 下载configparser工具,在tools文件夹中获取configparser工具。
- 将本地的configparser工具复制粘贴至项目的bin目录下。
使用configparser工具
- 在Dockerfile文件中,为configparser文件添加可执行权限。
- 定义业务配置项模板文件和meta.txt,样例如图1 业务配置项模板所示。
- 在业务配置项模板文件(.tmpl文件)中,使用 {{参数名称}} 格式定义需要动态替换的参数,样例如图2所示。
- 在meta.txt文件中定义需要替换的业务配置项模板文件。如图3所示。
- application.properties.tmpl为配置文件模板,application.properties为目标配置文件。
- 配置中指定的文件路径是相对于meta.txt文件的路径。
- 启动业务进程之前,在启动脚本中调用configparser工具,进行参数替换。使用方式如下:
/opt/huawei/app/bin/configparser -meta /opt/huawei/app/configtemplate/meta.txt -log configparser.log -mode front -tempPath /opt/huawei/app/configtemplate/config-temp
- 使用绝对路径的方式调用configparser工具,/opt/huawei/app/bin/为容器启动时的绝对路径。
- -meta:指定meta.txt文件,/opt/huawei/app/configtemplate/为容器启动时meta.txt文件的绝对路径。
- -log:存放configparser工具的运行日志。
- -mode front:固定使用此参数值。
- -tempPath:工具运行过程中生成临时文件的路径。
/opt/huawei/app/configtemplate/为容器启动时的绝对路径,必须保证此目录路径存在。config-temp文件夹可以不存在,会自动创建,运行结束后会清理此路径。 如果不配置,默认使用/opt/huawei/app/nuwa/config-temp。