如何使用 Ansible 将软件包安装到特定目录?

How can you install a package into a specific directory using Ansible?

我正在使用 win_package 安装许多 MSI 和 EXE。我希望能够将目录作为参数传递,以便将它们安装在特定文件夹中。

现在它们自动安装在 C:/Program Files 中,但我希望它们安装在不同的驱动器上。

这取决于 MSI/EXE 能够接受安装位置作为 public property/parameter。大多数标准安装程序将接受 TARGETDIR=somepathINSTALLDIR=somepath 之一 - 当使用 win_package 时,您将使用 arguments 模块 arg 传递它们(请参阅 win_package docs),例如:

- win_package:
    path: c:\path\to\install.msi
    arguments: "INSTALLDIR=c:\custompath"