我有一些使用 FMPP 生成 基于 CSV 中的信息和属性的真实运行时配置文件 文件(在 config.fmpp 中定义(。
我希望能够使用相同的模板集和 config.fmpp 信息为同一任务配置第二个群集服务器。 但是,生成的运行时配置需要略有不同,如果我知道我在哪个服务器实例("serverA"或"serverB"(上使用像${myserver}
这样的标准 fmpp 变量,我可以做到这一点。
但是必须只有一组模板和 FMPP 配置文件,所以我需要以某种方式从运行时获取"myserver"的值 每个服务器中的环境。
我可能有的一些选择是:
- 在命令行工具调用上传递 myserver 的值(最佳方式(;或
- 从环境变量中获取它。
有没有人有代码示例来执行任何这些操作以及最佳方法的任何建议?在线参考会很棒。
fmpp -S /home/me/sample-project/src -Param myserver:serverA
环境设置:
- FMPP v0.9.14
- 免费标记 v2.3.19
使用-D
命令行选项(请参阅--help
(:
-D, --data=<TDD> Creates shared data that all templates will see. <TDD> is the
Textual Data Definition, e.g.:
-D "properties(style.properties), onLine:true"
Note that paths like "style.properties" are relative to the
data root directory.
喜欢:
fmpp -S /home/me/sample-project/src -D myserver:serverA
请注意,-D
后面有一个空格。(它不像java命令行语法,而像标准的GNU命令行语法。
这个
-D
与Java的-D
选项无关。
文档显示了onLine:true
,但这样的布尔值是遗留的,不再被接受。使用online:yes
解析布尔值。
例如:
fmpp
-S /path/
--verbose
-D "online:yes"
然后,在模板中:
<p>
online: ${online}
</p>
将导致:
online: yes
--verbose
命令行参数可用于在分析模板时显示任何错误。