【问题标题】:Overriding chocolateyInstall.ps1 script with Ansible使用 Ansible 覆盖 ChocolateyInstall.ps1 脚本
【发布时间】:2017-09-10 06:12:07
【问题描述】:

我想覆盖 Ansible 的 win_chocolatey 模块附带的默认 powershell 脚本。我该怎么做?

就我而言,我试图覆盖 MsSqlServerManagementStudio2014Express 附带的 ChocolateyInstall.ps1。我想在静默安装 MsSQLServer 期间传递更多参数,例如系统管理员密码和实例名称。

我尝试在我的 ansible playbook 中使用 win_chocolatey 模块调用中的“install_args”和“params”选项提供这些附加参数。但是在 MsSqlServerManagementStudio2014Express 的 powershell 脚本中没有编写任何处理程序来在静默安装期间包含它们。

【问题讨论】:

    标签: sql-server ansible chocolatey


    【解决方案1】:

    包参数与安装参数

    安装参数(choco.exe--install-arguments 选项)对包完全不可见,它们被附加到包中当前的静默参数集。也可以使用--override-arguments 完全覆盖它们。在 Chocolatey 的商业版中,您还可以通过 --install-arguments-sensitive 来避免日志中的秘密。

    包参数 (--package-parameters|--params) 是不同的,可用于与打包相关的任何内容(不仅适用于安装程序),但也必须存在于包本身中。对于商业版和机密,您还可以使用--package-parameters-sensitive

    选项 1:社区存储库包

    您需要确保包使用Install-ChocolateyPackageInstall-ChocolateyInstallPackage 或其他内置方法,以了解安装参数可以与包一起使用。如果您需要参数,则需要与包的维护者合作以实现这些参数。

    选项 2:使用您自己的包

    如果您在组织中使用 Chocolatey,您将希望使用您自己存储在内部某处的包。这保证了更高的可靠性和可重复性,这有助于组织使用任何东西。

    此外,您可以将安装程序直接烘焙到软件包中,因为您不受内部分发权的约束,从而提供更可靠的体验。

    在组织中规划 Chocolatey 时,阅读并理解这一点特别有帮助:https://chocolatey.org/docs/community-packages-disclaimer

    【讨论】:

      猜你喜欢
      • 2018-02-27
      • 2018-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-31
      • 1970-01-01
      • 2017-02-14
      相关资源
      最近更新 更多