Могу ли я выбрать иерархию на основе ее имени в файле hiera.yaml в кукольном файле? - PullRequest
0 голосов
/ 09 июля 2019

Я использую hiera5 и хочу читать иерархии одной из групп на основе их имен.Например, в настоящее время у меня есть:

version: 5
defaults:
  datadir: "/"
  data_hash: yaml_data
hierarchy:
  - name: "ABC"
    paths:
      - "env/env-data1.yaml"
      - "env/env-data2.yaml"
      - "env/env-data3.yaml"

Я хочу добавить несколько иерархий, таких как:

hierarchy:
  - name: "ABC"
    paths:
      - "env/env-data1.yaml"
      - "env/env-data2.yaml"
      - "env/env-data3.yaml"
  - name: "DEF"
    paths:
      - "env/env-data4.yaml"
      - "env/env-data5.yaml"
      - "env/env-data6.yaml"
  - name: "GHI"
    paths:
      - "env/env-data7.yaml"
      - "env/env-data8.yaml"
      - "env/env-data9.yaml"

И читать файлы только из одной из групп за раз, скажем, просто «ABC'.

Есть ли способ передать имя иерархии в качестве параметра при вызове кукольного сценария?

Дополнительная информация:
Я запускаю сценарий оболочки от jenkins, который запускает сценарий кукол.

puppet apply --hiera_config=${WORKSPACE}/hiera.yaml ${WORKSPACE}/puppet-script.pp

Заранее спасибо!

1 Ответ

1 голос
/ 10 июля 2019

Я хочу добавить несколько иерархий, например: [...]

Синтаксис в порядке, но он не описывает несколько иерархий.Он описывает одну многоуровневую иерархию (что на самом деле является обычным случаем).Наличие нескольких уровней - это то, что делает его иерархическим - это отличительная черта Hiera по сравнению с другими механизмами внешних данных, которыми обладал Puppet.

И чтение файлов только из одной из групп за разскажем просто «ABC».

Нет, не происходит.Hiera не работает таким образом.

Есть ли способ передать имя иерархии в качестве параметра при вызове кукольного сценария?

Нет, но вы можете указать другой hiera.yaml файл конфигурации, как вы уже продемонстрировали.Если вам нужны разные иерархии для разных прогонов, определите каждую в своем (полном) файле конфигурации и выберите файл конфигурации для каждого использования.

...