Não há uma maneira fácil de fazer isso com sua configuração atual. O Puppet só verifica se o RPM_A versão 2.0 está instalado. Se ele vê que está instalado e na versão desejada, o seu trabalho é praticamente baixo.
Como quando o Puppet / Yum atualiza o pacote RPM_A de 1.0 para 2.0, a menos que exista uma dependência específica no RPM_A que diz que ele precisa de versões mais novas específicas do RPM_B e RPM_C, o yum não irá buscar as novas versões do RPM_B e RPM_C. Ele verá os pacotes como já instalados e, como você está apenas querendo atualizar o RPM_A, não é necessário obter as novas versões do RPM_B e do RPM_C.
Existem algumas maneiras de fazer o que você quer:
-
Se você é a pessoa que está compilando RPM_A, é possível colocar os requisitos de versão específicos para RPM_B e RPM_C no arquivo de especificação, para que o yum os busque quando o RPM_A for atualizado.
-
Você pode criar tipos de pacote para RPM_B e RPM_C e colocá-los em seu manifesto e fazer com que o RPM_A dependa deles.
-
Crie algum pacote meta que exista apenas para listar as verões específicas de RPM_A, RPM_B e RPM_C que você precisa instalar. Essa opção é meio burra, já que é basicamente a mesma coisa que a opção 2, mas você está fazendo o mesmo trabalho em um arquivo de especificações, em vez de um manifesto de fantoche.