GCP Deployment Manager - удалить правило брандмауэра, если существует - PullRequest
0 голосов
/ 11 декабря 2018

Я пытаюсь удалить некоторые правила брандмауэра (правила по умолчанию), только если они существуют с использованием приведенной ниже конфигурации диспетчера развертывания GCP, но я получаю некоторые ошибки, любая помощь будет принята:

default_vpc_list.jinja:

       resources:

    - name: def_firw
      action: gcp-types/compute-v1:compute.firewalls.list  
      properties:
        filter: (name = "default*")


    {% if "($(ref.def_firw.items[0]))"|length > 0 %}     
    - name: firewall-delete-internal
      action: gcp-types/compute-v1:compute.firewalls.delete
      metadata:
        dependsOn: 
        - def_firw
      properties:
        firewall: $(ref.def_firw.items[0].name)
    {% endif %}

    outputs:
    - name: fw_rules
      value: $(ref.def_firw.items[0].name) 

Здесьтакое файл yaml:

imports:
- path: jinja/default_vpc_list.jinja
  name: default_vpc_list.jinja

resources:

- name: default_vpc_list
  type: default_vpc_list.jinja

И ошибка получена с этим кодом:

The reference 'items[0].name' is not found, reason: The resource 'def_firw' exists, but the reference value does not, details: Missing property in path $['ref']['def_firw']['items']

ОБНОВЛЕНИЕ: принял обходной путь и установил runtimePolicy: CREATE, который будет запускаться только тогда, когда ресурссоздано:

- name: delete-default-private-route
  action: gcp-types/compute-v1:compute.routes.delete
  metadata:
    dependsOn: 
    - defaultRoutelist  
    runtimePolicy:
    - CREATE
  properties:
    route: $(ref.defaultRoutelist.items[0].name) 

1 Ответ

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

Обнаружен обходной путь для запуска удаления только на ресурсе CREATE, больше нет необходимости вносить листинг, см. Выше Обновление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...