我需要在scala的Play 2.4项目中实现以下目标。
application.conf文件中以下配置变量(section.server.linux
)中脚本中的变量[URL]在运行时需要替换为签名的URL。
application.conf:
section.server.linux = """
#!/bin/sh
if [ ! -d /opt/component ]; then
cd /tmp
curl -ko ./abc_linux.zip "[URL]"
distro=unknown
.............
"""
要从类的配置文件中获取section.server.linux
内的脚本字符串,如下所示:
val scriptBase_linux = sys.settings.config.as[String]("section.server.linux")
并使用此变量scriptBase_linux
和AWS-JAVA-SDK(版本1.11.492)的内置函数,我能够生成签名的URL并将其替换为脚本中的变量[URL],即现在位于类中,作为字符串存储在val updatedLinuxScript
中。
现在,我需要用此更新的脚本(存储在类型{{1的section.server.linux
中)替换application.conf文件中原始脚本(存储在类型String
的{{1}}中) }})放在类文件中,并且应该在运行时发生。
我们如何在运行时更新配置文件以实现此目的?
任何建议都可以帮上忙。谢谢。