Ask Your Question

How to freeze compilation

asked 2017-09-20 07:50:47 -0600

puser gravatar image

How can I stop nodes from getting updated catalogs? Ideally I would make a REST call to the puppet master which would stop any new catalog compilation for all nodes ( or specified environment ). If I cannot do with REST, is there a command I can run on them master to force clients to use their cached version until told otherwise?


edit retag flag offensive close merge delete


noob asks for `noop` (x.X) AFAIK there's no such call but maybe you utilize an ENC which is easier to manipulate?

Kai Burghardt gravatar imageKai Burghardt ( 2017-09-21 08:28:06 -0600 )edit

3 Answers

Sort by ยป oldest newest most voted

answered 2017-09-25 22:03:09 -0600

reesek gravatar image

Depending on the context of your use case, perhaps take a look at Puppet Orchestrator:

edit flag offensive delete link more


This is exactly what I was looking for, thank you.

puser gravatar imagepuser ( 2017-09-26 06:45:47 -0600 )edit

answered 2017-09-25 08:52:47 -0600

erichymowitz gravatar image

As far as I know (which isn't very far), puppet agents don't have a "cached" version of their catalog. They contact the master for a catalog, and the master provides one or it doesn't.

The answers that come to mind are:

  1. Create a test environment, so that the "production" catalog/data being retrieved by the nodes doesn't change while you make your updates

  2. Create a fake node, so that your real nodes aren't getting whatever updates are being tested.

  3. Stop runningpuppet on the nodes, and they won't request any updated catalogs.

edit flag offensive delete link more


you can disable puppet runs on a node by node basis, but it won't continue to enforce the previous catalog. puppet agent --disable "Stopping puppet runs" One other option would be to 'freeze' a puppet environment, and point those nodes to the 'frozen' environment

DarylW gravatar imageDarylW ( 2017-09-25 11:20:12 -0600 )edit

answered 2017-09-25 11:18:50 -0600

DarylW gravatar image

If a node cannot reach it's master, it will use the previously cached catalog. I don't think there is a way to 'freeze' a node while it still has healthy communication with the master, other than potentially setting the 'noop' mode to true will it will run against a new catalog, but do nothing.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2017-09-20 07:50:47 -0600

Seen: 67 times

Last updated: Sep 25 '17