Переопределить переменную в yaml - PullRequest
0 голосов
/ 23 января 2019

У меня есть конфигурационный файл yml, который выглядит следующим образом:

default: &default
  aws_access_key: <%= ENV['AWS_ACCESS_KEY'] %>
  aws_secret_key: <%= ENV['AWS_SECRET_KEY'] %>
  region: <%= ENV['AWS_REGION'] %>
  aws_s3_bucket: <%= ENV['AWS_S3_BUCKET'] %>
  aws_s3_host: "https://s3-eu-west-1.amazonaws.com/"

development:
  <<: *default

Я хочу в development расширить все значения по умолчанию, но переопределить имя сегмента. Как я могу этого достичь? Возможно, это очень простой вопрос, но я не смог найти ничего связанного.

1 Ответ

0 голосов
/ 23 января 2019

Если вы можете использовать Python, это очень просто:

import yaml

# read your first file
with open("basefile.yaml", 'r') as f:
    conf = yaml.load(f)

# read your second file
with open("devfile.yaml", 'r') as f:
    devconf = yaml.load(f)

# update the first dictionnary with the values of the second
conf.update(devconf)

# write it in a new file
with open("result.yaml", 'w+') as f:
    yaml.dump(conf, f)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...