Отказ, пытающийся управлять способными источниками с Марионеткой

Я пытаюсь заставить Марионетку управлять моим Debian способный sources.list, однако, сбои компиляции каталога с этой ошибкой:

Ошибка: не Мог получить каталог от удаленного сервера: Ошибка 400 на СЕРВЕРЕ::: склонный:: config_files не является хешем или массивом при доступе к нему со списком в/etc/puppet/environments/production/modules/apt/manifests/setting.pp:45 на узле [имя хоста]

Я понятия не имею, где я должен обеспечить:: склонный:: config_files или что я должен был бы вставить его. Мои декларации содержат следующее:

# site.pp
node <hostname> {
  include roles::myrole
}

# myrole.pp
class roles::myrole.pp {
  include profiles::apt
}

# apt.pp
class profiles::apt {

  # Get our apt sources out of Hiera.
  $hiera_apt_sources = hiera_hash(apt_sources)

  # Create our apt sources.
  create_resources(apt::source, $hiera_apt_sources)

}

# hieradata (yaml)
apt_sources:
  'debian_stable':
    location: 'ftp.be.debian.org/debian/'
    release: 'stable'
    repos: 'main contrib non-free'
  'debian_security':
    location: 'security.debian.org'
    release: 'updates'
    repos: 'main contrib non-free'

Я пропускаю что-то очевидное здесь? Я просмотрел документацию в штамповочном прессе и это сообщение Puppetlabs и некоторые другие хиты на Google.

Я также пытался include apt в apt.pp, но напрасно.

0
задан 4 May 2015 в 17:34
1 ответ

Оказывается, проблема была в пространстве имен.

Для того, чтобы это работало, мне нужно вызвать МОДУЛЬ 'apt'. Указав include apt или class {'apt':} в классе profiles :: apt , он пытается включить или вызвать себя. Переход на класс {':: apt':} (абсолютное имя) устраняет проблему.

0
ответ дан 5 December 2019 в 12:46

Теги

Похожие вопросы