Назад | Перейти на главную страницу

не удалось скопировать сценарий оболочки с хоста в бродячий ящик

Хост - это Windows 8. Я подготовил сценарий оболочки, который выполняет secure_mysql_installation. Это структура папок.

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

Это мой код марионетки для копирования сценария оболочки локального хоста в бродячий ящик

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

Когда бродяга поднялся, он дал мне ошибку ==> по умолчанию: Ошибка: / Stage [main] / Secure_mysql_installation / File [/ tmp / secure_mysq l.sh]: не удалось оценить: не удалось найти файл: недопустимое монтирование 'secure_mysql.sh' Не удалось получить метаданные файла для puppet: ///files/secure_mysql.sh: Не удалось найти файл: I nvalid mount 'secure_mysql.sh'

На гостевой папке эта папка будет по адресу /vagrant/puppet/files, но вы не хотите использовать это вообще, поскольку он не переводится с бродяги на что-либо еще. Ответ @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 в определении отсутствует имя модуля попробуйте

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