Если я понимаю проблему, вы должны быть в состоянии сделать что-то вроде этого:
$dirmngr_apt_source = ...
class { 'apt':
purge => {
"/etc/apt/sources.list" => true
}
}
Apt::Source[$dirmngr_apt_source] -> Package['dirmngr']
Дальнейшее объяснение:
- Переменная
$dirmngr_apt_source
предназначена для заполнения источником Apt, в котором находится пакет dirmngr. (Полный отказ от ответственности: я не знаю много об Ubuntu.)
- Хотя класс Apt объявляет ресурсы
Apt::Source[$dirmngr_apt_source]
и Package['dirmngr']
, вы все равно можете объявить отношения между этими ресурсами извне класса, как я делал там.
Кроме того, это, на мой взгляд, немного хак, и похоже, что это, возможно, ошибка или недостаток дизайна в модуле Apt.
То есть, учитывая, что модуль Apt управляет источниками Apt узла Linux, а пакет dirmngr зависит от источников Apt, в модуле не должно быть предположения, что пакет dirmngr может быть найден до конфигурирования Удачные источники. (Или если это допустимое предположение, то, возможно, ему нужна лучшая документация?)
Итак, вы можете рассмотреть вопрос об ошибке или проверить, есть ли она уже.