>_ IzzyLab

Практическое задание

Раздели окружения через anchors

сложно

В /root/config.yml опиши общий блок настроек как YAML-anchor (&defaults) и два окружения dev и prod, которые его подключают через <<: *defaults и переопределяют по одному полю.

Что потренируешь:
  • yaml
  • anchors
  • aliases
  • merge key
  • dry

Разбор темы

YAML-якоря — способ не дублировать одинаковые куски конфига: &имя помечает значение как анкор, а *имя в другом месте вставляет его копию (алиас). Отдельно существует merge-ключ <<: — он не кладёт анкор целиком отдельным полем, а вливает его пары ключ-значение в текущую мапу, будто ты выписал их вручную; после мёржа сам ключ << в структуре не остаётся. Порядок важен: анкор должен быть определён раньше по документу, чем алиас на него, а поля, записанные рядом с <<:, переопределяют пришедшие из анкора.

Что проверяется

  1. YAML валиден
  2. Anchor и merge использованы

Как это выглядит