繁体   English   中英

在WLST脚本中动态更改变量

[英]Dynamically change variables in WLST script

我正在创建一堆.py WLST脚本(15-20),每个脚本都会在Weblogic环境中检查不同的设置。 例如,密码要求,安全设置,用户属性等。

但是,我想在许多具有不同主机URL和凭据的WebLogic环境中运行这些脚本。 有没有一种简单的方法可以动态更改每个脚本在不同环境中运行时的连接详细信息:

脚本:

connect(x,y,z)

环境1中的脚本:

connect('weblogic','welcome1','example-host1:7001')

env 2中的脚本:

connect('weblogic','welcome2','example-host1:7001')

这是我第一次在职业生涯的前几年使用它作为源后,对stackoverflow提出问题,如果对此问题的描述不充分,我深表歉意。

简单的答案是。 将与环境相关的属性保留在属性文件中。 并使用Python(Jython)读取这些属性

from java.io import FileInputStream

propInputStream = FileInputStream("preprodenv.properties") 
configProps = Properties()
configProps.load(propInputStream)

adminHost=configProps.get("admin.host)
adminPort=configProps.get("admin.port")
adminUserName=configProps.get("admin.userName")
adminPassword=configProps.get("admin.password")

# t3 or t3s depends upon your config
adminURL = "t3://"+adminHost+":"+adminPort
connect(adminUserName, adminPassword, adminURL)

选项#2

将与环境相关的信息保留在属性中,并使用

loadProperties('c:/temp/myLoad.properties')

或将其作为参数传递给wlst脚本-loadProperties='C:\\temp\\myLoad.properties'

一切都会起作用。

我假设主机名在不同的环境中会有所不同。 我们这样做的方法是创建一个“ env shell脚本”,其中包含使用简单case语句的映射。 然后,我们在“ env shell脚本”中创建一个在各种环境中迭代的包装器脚本。 这对您有帮助还是您需要更多详细信息?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM