A quick puppet config. I always run into issues where I need a node to be in multiple groups in my nodes.pp I have solved this by creating a generic template assigned to everything and use a format like this: (assume I want to push to machines named node1, node3, node5)
if ($hostname == 'node1') or ($hostname == 'node3') or ($hostname == 'node5') {
#do something like push a file etc..
}