Увидев следующую ошибку в Puppet 4
# /opt/puppetlabs/bin/puppet agent --verbose --no-daemonize --onetime
Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for aus-lnaswgp-002.wiley.com
Error: Failed to apply catalog: Parameter unless failed on Exec[sh /home/agile/svncheckout.sh]: 'test -f /home/agile/subversion.done' is not qualified and no path was specified. Please qualify the command or specify a path. at /apps/wps/puppetlabs/code/environments/production/manifests/classes/subversion.pp:17
Код выглядит следующим образом:
# cat /apps/wps/puppetlabs/code/environments/production/manifests/classes/subversion.pp
class subversion {
# A package for subversion install and necessary svn checkouts for user agile
package {'subversion':
ensure => installed,
}
file {'/home/agile/svncheckout.sh':
ensure => present,
group => agile,
mode => "755",
source => "puppet://puppet/scripts/svncheckout.sh",
require => [ Package['subversion'], Class['user_default'] ],
before => [Class['apache1'], Class['activemq'], Class['luciddb'], Class['sybase']],
}
Похоже, скрипт не умеет копировать svncheckout.sh
из puppet/scripts/svncheckout.sh
. Любые предложения по устранению вышеуказанной ошибки?
Опубликованный вами фрагмент кода не имеет ничего общего с выводимой ошибкой.
Ошибка говорит о том, что вам нужно квалифицировать путь unless
команда, так что test
становится /usr/bin/test
(или где угодно test
бинарный файл установлен в вашей системе).
Использовать which test
, чтобы найти полный путь к файлу, и соответствующим образом отредактировать код.