Я хочу, чтобы puppet exec запускался при первом развертывании файла и при каждом последующем изменении файла. Для этого я создал приведенный ниже код в puppet.
Exec не запускается при развертывании первого файла. Я предполагаю, что это из-за обновления. Кто-нибудь знает, что нужно изменить в коде?
define dev_tools::javacert(
$keystore="/etc/alternatives/java_sdk/jre/lib/security/cacerts",
$storepass='xxx',
$alias = $name,
$filecertpath = "/var/lib/certs/${name}.crt",
){
file{
$filecertpath:
source => "puppet:///modules/${module_name}/sonarqube/${::env}/${::server_location}/${filecertpath}",
mode => '0644',
notify => Exec["deploy_javacert_${name}"];
}
exec {
"deploy_javacert_${name}":
path => "/usr/bin",
command => "keytool -importcert -keystore ${keystore} -alias $alias -file $filecertpath -storepass ${storepass} -noprompt 2>/dev/null",
provider => shell,
refreshonly => true;
}
}
Exec
не запущен и об ошибке не сообщается, то наиболее вероятные сценарии заключаются в том, что (1) ресурсdev_tools::javacert
вообще не применяется или (2) управляемый файл уже существует с режимом и содержимым, указанными для Это. - person John Bollinger   schedule 05.04.2019