Se você já está usando o Puppet para gerenciar esse usuário, basta usar o atributo 'grupos' para determinar em quais grupos um usuário está. Se o usuário estiver em grupos que não são gerenciados pelo fantoche, você deseja para definir a associação como 'mínimo', o que apenas garantiria que o usuário esteja nos grupos especificados (não sobrescreveria nenhum grupo existente).
Por exemplo:
user { "someuser":
groups => [ 'wheel', 'othergroup' ],
membership => 'minimum',
}
Isso é explicado um pouco mais na referência de tipos: link