Notice: Local environment: 'production' doesn't match server specified node environment 'passfix', switching agent to 'passfix'.
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Applying configuration version '1539886469'
Notice: /Stage[main]/Users::mypassword/User[bob]/password: created password
Notice: Applied catalog in 4.52 seconds
[root@tlistmrrh511 ~]#
[root@tlistmrrh511 ~]# puppet agent -tv
Notice: Local environment: 'production' doesn't match server specified node environment 'passfix', switching agent to 'passfix'.
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Applying configuration version '1539886484'
Notice: /Stage[main]/Users::myassword/User[bob]/password: created password
Notice: Applied catalog in 4.36 seconds
I have tried a number of ways to get this work inside puppet without using exec. Searching on this came up with creating custom facts to get the hash or hierra, which we don't use, to do this step. Having user hashes available as a fact won't pass an audit either. Basically this all needs to happen on the Puppet master and be pushed to all clients.
It seems that Puppet has a way to compare the old has with the new one when the hash is put between ' ', but I'm passing in a var.
I don't see any indication of why it is failing the comparrison. I have even set passwd => generate(... and it behaves the same way.
What am I doing wrong here? It is quite frustrating.
Thanks