Well conventionally nodes are defined in the nodes.pp file, and the appropriate node would probably inherit from a template of a node which includes that class.
Personally for the level of flexibility, I use puppet dashboard with ENC configured. This basically means I have a web dashboard within which I can easily assign and deassign various classes from nodes trivially.
|