BOSH CLI Ожидалось найти карту по пути, но найден «[] интерфейс {}»

Очень похоже на другой вопрос, но есть небольшие отличия. Пробовал принятый ответ и все еще не повезло.

Я получаю эту ошибку, когда запускаю команду:

bosh -d prometheus deploy -n pfg-prometheus-boshrelease/manifests/prometheus.yml -o replace_vars.yml

Ожидается найти карту по пути '/instance_groups/name=prometheus2/jobs/name=prometheus2/properties/prometheus/scrape_configs/job_name=bosh/static_configs/targets?' но нашел '[]интерфейс {}'

replace_vars.yml:

- type: replace
  path: /instance_groups/name=prometheus2/jobs/name=prometheus2/properties/prometheus/scrape_configs/job_name=bosh/static_configs/targets?/-
  value: 192.168.123.26:9190

Раздел манифеста:

- name: prometheus2
    properties:
      prometheus:
        rule_files:
        - ...
        scrape_configs:
        - file_sd_configs:
          - files:
            - /var/vcap/store/bosh_exporter/bosh_target_groups.json
          job_name: prometheus
          relabel_configs:
          - action: keep
            ...
          - regex: (.*)
            ...
        - job_name: bosh
          scrape_interval: 2m
          scrape_timeout: 1m
          static_configs:
          - targets:
            - localhost:9190

Каким будет правильный путь?

РЕДАКТИРОВАТЬ: я просмотрел файлы Bosh cli ops, но не могу найти пример как мой.


person Austin L    schedule 22.05.2020    source источник


Ответы (1)


Я также несколько раз сталкивался с этим и так и не нашел решения для этого варианта использования. Что я обычно делаю в качестве обходного пути, так это заменяю один шаг вверх. Для вашего примера:

/tmp/replace-vars.yml:

- type: replace
  path: /instance_groups/name=prometheus2/jobs/name=prometheus2/properties/prometheus/scrape_configs/job_name=bosh/static_configs/0
  value:
    targets:
    - 192.168.123.26:9190
    - localhost:9190

/tmp/test-manifest.yml:

instance_groups:
- name: prometheus2
  jobs:
    - name: prometheus2
      properties:
        prometheus:
          rule_files:
          - abc
          scrape_configs:
          - file_sd_configs:
          - files:
            - /var/vcap/store/bosh_exporter/bosh_target_groups.json
          job_name: prometheus
          relabel_configs:
          - action: keep
          - regex: (.*)
          - job_name: bosh
          scrape_interval: 2m
          scrape_timeout: 1m
          static_configs:
          - targets:
            - localhost:9190

Интерполировано bosh int /tmp/test-manifest.yml -o /tmp/replace-vars.yml:

instance_groups:
- jobs:
  - name: prometheus2
      properties:
        prometheus:
          rule_files:
          - abc
          scrape_configs:
          - file_sd_configs:
          - files:
            - /var/vcap/store/bosh_exporter/bosh_target_groups.json
          job_name: prometheus
          relabel_configs:
          - action: keep
          - regex: (.*)
          - job_name: bosh
          scrape_interval: 2m
          scrape_timeout: 1m
          static_configs:
          - targets:
            - 192.168.123.26:9190
            - localhost:9190
  name: prometheus2
person muehsi    schedule 10.06.2020