2016-03-07 84 views
0

我试用Powershell DSC作为自动部署的一种方式。我们有一个由Installshield为服务器应用程序创建的EXE安装程序,并且需要确保安装最新版本。如何确保Installshield setup.exe的确切版本由Powershell DSC安装

Installshield指导方针(http://www.flexerasoftware.com/producer/resources/white-papers/is-msipatches.html)建议每个版本的包装代码都应该改变,产品代码应该在次要版本之间保持一致,并且升级代码应始终保持不变。

有没有办法告诉Powershell DSC安装特定的次要版本,即确保包装代码完全匹配?

我正在使用以下来创建MOF,但是当我运行它时,它会检测到已安装的产品并且不执行任何操作,即使它是不同的包。

Package MyApp 
{ 
    Ensure = "Present" 
    Name = "MyApp" 
    Path = "\\path\to\specific\version\of\setup.exe" 
    ProductId = '' 
    Arguments = "/V`"ADDLOCAL=ALL /qb`"" 
} 

回答

1

如果软件包已安装,软件包资源将声明资源为正确配置。所以它不适用于您的特定场景。你将不得不编写一个自定义的包资源或扩展现有的资源。如果你想修改这个版本库并扩展功能https://github.com/PowerShell/xPSDesiredStateConfiguration你也可以打开一个问题,让某人拿起并修复它。