I faced with issue when some modules triggered refresh (service restart) for php-fpm even if nothing changed. For example:
==> app-server: Notice: /Stage[main]/Php/Php::Extension[igbinary]/Package[php5.6-igbinary]/ensure: ensure changed 'purged' to 'present'
==> app-server: Notice: /Stage[main]/Php/Php::Extension[memcached]/Package[php5.6-memcached]/ensure: ensure changed 'purged' to 'latest'
==> app-server: Info: Php::Extension[memcached]: Scheduling refresh of Service[php5.6-fpm]
==> app-server: Notice: /Stage[main]/Php/Php::Extension[tideways]/Package[php5.6-tideways]/ensure: ensure changed 'purged' to 'present'
==> app-server: Info: Php::Extension[tideways]: Scheduling refresh of Service[php5.6-fpm]
==> app-server: Info: Php::Extension[igbinary]: Scheduling refresh of Service[php5.6-fpm]
==> app-server: Notice: /Stage[main]/Php::Fpm::Service/Service[php5.6-fpm]: Triggered 'refresh' from 3 events
It is OK on vagrant/test environment but I don't want to restart fpm service on prod environment every time puppet running, so Is there any way to tell puppet do not restart php-fpm if nothing changed?
Thanks in advance for help!
P.S. Here is how puppet config looks like:
php::globals::php_version: '5.6'
php::extensions:
xml: {}
curl: {}
json: {}
intl: {}
mbstring: {}
mcrypt: {}
mysql: {}
curl: {}
intl: {}
json: {}
odbc: {}
readline: {}
igbinary: {}
zip: {}
soap: {}
dba: {}
bz2: {}
tideways: {}
memcached: {}
oci8:
provider: pecl
ensure: '2.0.12'
pgsql: {}
mcrypt: {}
gd: {}
apcu:
provider: pecl
ensure: '4.0.11'
settings:
apc.stat: 1
apc.stat_ctime: 1