Você pode usar um recurso exec com refreshonly => true que é notificado quando o arquivo sources.list é alterado. E que a classe que contém o recurso de gerenciamento de arquivos e o recurso exec seja require dos recursos package que precisam deles.
A maneira que eu recomendaria abordar isso de maneira mais simples seria gerenciar as fontes por meio do apt::source tipo de recurso no apt module da Puppet Labs , que lida com a atualização também.