Sempre que possível, usar uma solução "foo.d" é preferível. No entanto, quando duas receitas precisam fazer alterações no mesmo arquivo, é necessário selecionar uma receita para ser o controlador e, em seguida, usar atributos para gerar o arquivo a partir de um modelo.
Você pode substituir e definir atributos na configuração de receita, função, ambiente ou nó, com um esquema de precedência complicado. Consulte o link
Para gerenciar os usuários do sudo, eu dou uma olhada no link do livro de receitas da comunidade para ver se ele atende às suas necessidades .