【问题标题】:puppet exec vagrant plugin install not workingpuppet exec vagrant插件安装不起作用
【发布时间】:2013-06-20 20:07:46
【问题描述】:

我已经在 centos 虚拟机上成功安装了 vagrant-aws,我正在尝试“操纵”这个任务。我的相关木偶代码如下:

exec { 'install_aws':
  command => '/usr/bin/vagrant plugin install vagrant-aws',
  #require => [Exec['install_dependent'], Package['vagrant']],
}

当我配置机器时,它说 Exec[install_aws]/returns: 已成功执行,但未安装插件,我必须手动运行该命令才能使其工作。从未见过 puppet 的这种行为,有人可以帮忙吗?

【问题讨论】:

  • 手动运行时,你是用什么用户运行的?

标签: amazon-web-services centos provisioning vagrant puppet


【解决方案1】:
exec { 'install_aws':
  command => '/usr/bin/sudo /usr/bin/vagrant plugin install vagrant-aws',
  require => [Exec['install_dependent'], Package['vagrant']],
}

修复了上面的代码。好点,需要以超级用户身份运行命令。似乎是个愚蠢的错误,谢谢指出^^。

【讨论】:

    【解决方案2】:

    我不会使用 sudo 运行该命令(正如您在回答中指出的那样),而是将 user 参数添加到 exec 并以 root(或具有适当权限的任何其他用户)身份运行它

    exec { 'install_aws':
        user => 'root',
        command => '/usr/bin/vagrant plugin install vagrant-aws',
        require => [Exec['install_dependent'], Package['vagrant']],
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-01
      • 2014-03-02
      • 2015-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多