*Puppet Version: 6.0.4
*Puppet Server Version: n/a
*OS Name/Version: CentOS 7.
From the docs:
Resource defaults are evaluation-order independent — that is, a default affects resource declarations written both above and below it.
This is no longer the case since release 4.10.5.
puppet apply the following manifest:
This should result in a file with mode '0777'.
Running with puppet 4.9.4:
Running with current HEAD 6.0.4+
The file is not '0777' as the defaults were never applied.
Running a git bisect the patch that introduced this behaviour is
Note the same behaviour is observed in both a simple manifest like above or if
global default parameters are attempted via the site.pp file.