Isso é muito bonito como eu faço. Dependendo da situação exata, provavelmente haverá alguns outros comandos para executar (instalando Ruby, Puppet), mas em geral eu só tenho um script deploy shell na raiz do repositório que faz o necessário, incluindo um Puppet inicial correr para obter a máquina bootstrapped.