Windows上的Puppet使用生成的服务名称创建服务

Windows上的Puppet使用生成的服务名称创建服务,puppet,puppet-enterprise,Puppet,Puppet Enterprise,我正在编写一个模块来安装一个软件包,然后对其进行配置,软件包的安装工作正常,但是,要添加一些自定义配置,我需要重新启动服务,但这不起作用,因此下面的代码安装软件包,并假定找到服务ID(每次安装时都不同)然后停止服务,但是,当我尝试Puppet agent报告“错误:评估错误:评估函数调用时出错,无法从C:\Atlassian\JIRA.install4j\installation.id”中找到任何文件时,我遇到了此错误 我也在尝试通过exec执行,但是还没有幸运的函数在主节点上执行,因此将找不到

我正在编写一个模块来安装一个软件包,然后对其进行配置,软件包的安装工作正常,但是,要添加一些自定义配置,我需要重新启动服务,但这不起作用,因此下面的代码安装软件包,并假定找到服务ID(每次安装时都不同)然后停止服务,但是,当我尝试Puppet agent报告“错误:评估错误:评估函数调用时出错,无法从C:\Atlassian\JIRA.install4j\installation.id”中找到任何文件时,我遇到了此错误


我也在尝试通过exec执行,但是还没有幸运的

函数在主节点上执行,因此将找不到该文件,因为您正在尝试从客户端节点加载该文件,这在内部函数中是不可能的。在这里,您需要转向不同的方向。由于某些原因,我发现很难相信jira服务名称在每次安装时都会发生更改。。但我对jira installsm很天真,尤其是在windows上。。。您是否尝试过手动安装,然后查看服务名称?
package { "${jira::package_name} ${jira::version}":
ensure          => "${jira::version}",
allow_virtual   => false, 
provider        => 'windows',
source          => "${jira::extractdir}\\${file}",
install_options => ['-q', '-varfile', $response_varfile]
} 

$jira_win_serviceid = file(" C:\Atlassian\JIRA\.install4j\installation.id")

service { "${jira_win_serviceid}":
  ensure => 'stopped',
  enable => true,
}