Eu não diria que é uma má ideia, mas você realmente precisa parar de usar constantes em todo o seu código (qualquer coisa que comece com uma letra maiúscula no Ruby é uma constante).
Para depurar seu problema, você provavelmente desejará usar a opção --trace
para sua invocação do puppetmaster, para que ele imprima um backtrace em vez de comer a exceção real e fornecer uma mensagem de erro inútil. Você tem uma pilha de desreferenciamento ocorrendo em map
calls; meu palpite seria que você entendeu mal parte da estrutura de dados que sai da API e seu código está tropeçando nesse mal-entendido. Acione um depurador (ou espalhe generosamente puts
pelo seu código) e você verá o que está errado em um curto espaço de tempo.