无法将shell脚本从主机复制到stream浪盒

主机是Windows 8我准备了一个执行secure_mysql_installation的shell脚本这是文件夹结构

 C:\ MyProject的\
       Vagranfile
      木偶\
          文件\
              secure_mysql.sh
           mainfests \
              init.pp

这是我的傀儡代码复制本地主机shell脚本vagrant框

    类secure_mysql_installation {
        文件{'/tmp/secure_mysql.sh':
                 source =>'puppet:///files/secure_mysql.sh',
                确保=>现在,
                }
      }

当stream浪了,它给了我一个错误==>默认:错误:/ Stage [main] / Secure_mysql_installation /文件[/ tmp / secure_mysq l.sh]:无法评估:无法find文件:无效挂载'secure_mysql.sh' Cou ld不检索puppet的文件元数据:///files/secure_mysql.sh:找不到文件:无效挂载'secure_mysql.sh'

在客人身上,那个文件夹将会在/vagrant/puppet/files ,但是你根本不想使用它,因为它不会从stream浪汉到其他地方。 @deagh的回答开始引领你走向正确的方向。 您需要将任何文件移动到模块文件夹中。

所以

 c:\myproject\ Vagranfile puppet\ modules\ mymodulename\ files\ secure_mysql.sh mainfests\ init.pp 

然后你可以达到它

  class secure_mysql_installation { file { '/tmp/secure_mysql.sh': source => 'puppet:///modules/mymodulename/secure_mysql.sh', ensure => present, } } 

有关文件服务和挂载点的更多信息,请参阅https://docs.puppetlabs.com/guides/file_serving.html

您的source定义缺less模块名称尝试

source => 'puppet:///modules/[MODULENAME]/secure_mysql.sh',