Thanks for that, it *is* useful, although not in this particular scenario. It's sitting now in my Puppet toolbox.
On Fri, 2021-01-29 at 11:47 -0800, Ben Ford wrote: > I do have a kind of terrible module that does exactly this.... I make no > guarantees whatsoever about how well it works. I ended up not using it for > much longer after building it. > > https://forge.puppet.com/modules/binford2k/manageonce > > On Fri, Jan 29, 2021 at 12:14 AM Martin Alfke <[email protected]> wrote: > > A custom fact is the best way to report the status of the file on the node > > to the master and have the file managed by Puppet based on the fact value. > > > > Bolt needs ssh access to the systems (unless you are using Puppet > > Enterprise which does not need ssh but uses a message queue on the master > > and the pxp-agent on the nodes.). > > > > Besides this: Bolt must be executed manually > > > > > On 29. Jan 2021, at 06:03, Benjamin Ridley <[email protected]> wrote: > > > > > > You might be better off using something like Puppet Bolt to deploy the > > > file as a one off task at provisioning, rather than trying to manage it > > > declaratively through Puppet. > > > > > > On Fri, 29 Jan 2021, 3:50 pm Steve McKuhr, <[email protected]> wrote: > > > > In an effort to avoid errors triggered by validate_cmd, I ended up > > > > using > > > > a conditional based on a File.exists custom fact. I'm still open to > > > > suggestions, this is all new territory to me. > > > > > > > > > > > > On Thu, 2021-01-28 at 17:13 -0800, Steve McKuhr wrote: > > > > > I've just realized that my problem statement was slightly misleading. > > > > > A > > > > > 'users' file gets installed as part of the software package, and the > > > > > goal is replacing its contents during the first Puppet run. The next > > > > > Puppet runs should ignore any changes. > > > > > > > > > > > > > > > On Thu, 2021-01-28 at 20:07 +0100, Martin Alfke wrote: > > > > > > and please use ensure => file ! > > > > > > this is more clear. > > > > > > you can set the file ensure attribute to one of the following: > > > > > > file, directory, link, absent > > > > > > > > > > > > > > > > > > > On 28. Jan 2021, at 18:58, Ben Ford <[email protected]> wrote: > > > > > > > > > > > > > > Yep, just use the replace attribute on the file resource. > > > > > > > https://puppet.com/docs/puppet/latest/types/file.html#file-attribute-replace > > > > > > > > > > > > > > On Thu, Jan 28, 2021 at 9:57 AM Steve McKuhr > > > > > > > <[email protected]> wrote: > > > > > > > I'd like to initialize a user config file once, at software > > > > > > > install time, then allow application admins to manage the file > > > > > > > contents via web interface (add/remove users, etc.) - I have come > > > > > > > up with the following: > > > > > > > > > > > > > > file { 'users': > > > > > > > ensure => present, > > > > > > > content => template('my-template'), > > > > > > > validate_cmd => '/bin/test ! -f users.control', > > > > > > > } > > > > > > > file { 'users.control': > > > > > > > ensure => present, > > > > > > > content => "puppet managed", > > > > > > > require => File['users'], > > > > > > > } > > > > > > > > > > > > > > The above code works ok, however I was wondering if there is a > > > > > > > more elegant solution. > > > > > > > > > > > > > > Thanks, > > > > > > > Steve > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > You received this message because you are subscribed to the > > > > > > > Google Groups "Puppet Users" group. > > > > > > > To unsubscribe from this group and stop receiving emails from it, > > > > > > > send an email to [email protected]. > > > > > > > To view this discussion on the web visit > > > > > > > https://groups.google.com/d/msgid/puppet-users/fb1ae2b4-f220-4d18-864b-aafbadb44b14n%40googlegroups.com. > > > > > > > > > > > > > > -- > > > > > > > You received this message because you are subscribed to the > > > > > > > Google Groups "Puppet Users" group. > > > > > > > To unsubscribe from this group and stop receiving emails from it, > > > > > > > send an email to [email protected]. > > > > > > > To view this discussion on the web visit > > > > > > > https://groups.google.com/d/msgid/puppet-users/CACkW_L5oTmsHiwvmVEisKap7gkUt1P4Gmvh1-%3DBQqNtHHiWAcA%40mail.gmail.com. > > > > > > > > -- > > > > You received this message because you are subscribed to the Google > > > > Groups "Puppet Users" group. > > > > To unsubscribe from this group and stop receiving emails from it, send > > > > an email to [email protected]. > > > > To view this discussion on the web visit > > > > https://groups.google.com/d/msgid/puppet-users/7a518ea8c6214ea01e1ce3d6e76273ddfd576493.camel%40gmail.com. > > > > > > -- > > > You received this message because you are subscribed to the Google Groups > > > "Puppet Users" group. > > > To unsubscribe from this group and stop receiving emails from it, send an > > > email to [email protected]. > > > To view this discussion on the web visit > > > https://groups.google.com/d/msgid/puppet-users/CABaapw%2B3od6HtGXb8bGMncUXZWuiZW46frSfL62S%3DgjyqcJimg%40mail.gmail.com. -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/cba957331249c9505d7c4b687ae27fd8fe62826b.camel%40gmail.com.
