我使用由teamcity触发的powershell script来启动新的Windows Server VM。目前,当机器启动并运行时,我需要通过VMM控制台登录以进行一些配置更改(启用文件共享,网络发现,msdeploy和通过winrm进行远程处理),以便允许其他teamcity作业能够将企业应用程序部署到VM。
除了在VMM中使用GUI控制台之外,我还没有找到在新VM上运行配置设置脚本的方法。对于VMHosts,有Invoke-SCScriptCommand,但这对virtual machines本身并不起作用。我是否遗漏了某些内容,或者我是否必须更改我的VM构建的模板,以便在VM上获得所需的配置?
答案 0 :(得分:0)
您可以实现所需要的一种方法是将所有配置更改放在VM模板中的PowerShell脚本中,并将其添加到VM的启动脚本中。 该脚本的第一步是通过检查某种标志(即文件 c:\ deployed.flag )来检查过去是否已应用配置更改,最后一步是创建标志
if(Test-Path c:\deployed.flag){
## deployment script run already, do nothing
}
else{
## your config changing code block
New-Item c:\deployed.flag -Type f
}
在VMWare / PowerCLI中,您可以运行Invoke-VMScript
,它通过VMWare工具直接在VM上执行命令,但是 Hyper-V集成服务没有这样的功能。