ansible не может получить доступ к gcp_compute_instance_fact Ошибка была: «объект списка» не имеет атрибута «accessConfigs» - PullRequest
0 голосов
/ 21 июня 2019

У меня проблема при попытке получить доступ к выводу, который я получил от gcp_compute_instance_fact. Я считаю, что проблема очень похожа на эту проблему .Однако я не могу по-настоящему понять или применить решение к моей проблеме

Нет проблем, если я использую {{item.name}} или {{item.cpuPlatform}} Однако если я использую {{item.networkInterfaces.accessConfigs.natIP}}, или что-то, что с [], тогда у меня будут проблемы.

- name: " a instance facts"
  gcp_compute_instance_facts:

  -...something

  register: instancefact


- name: debug
  debug:
    msg: |
     {{ item.name }}
     {{ item.cpuPlatform }}
     {{ item.networkInterfaces.accessConfigs.natIP }}
  with_items:
  - "{{ instancefact['items'] }}"

Вывод gcp_compute_instance_facts:

ok: [localhost] => {
    "msg": {
        "changed": false,
        "failed": false,
        "items": [
            {
                "cpuPlatform": "Intel Broadwell",
                "creationTimestamp": "2019-06-20T23:02:12.798-07:00",
                "deletionProtection": false,
                "name": "linux-instance",
                "networkInterfaces": [
                    {
                        "accessConfigs": [
                            {
                                "kind": "compute#accessConfig",
                                "name": "External NAT",
                                "natIP": "35.240.203.148",
                                "networkTier": "PREMIUM",
                                "type": "ONE_TO_ONE_NAT"
                            }
                        ],
                        "fingerprint": "5KNJt2icG1Q=",
                        "kind": "compute#networkInterface",
                        "name": "nic0",
                        "network": "https://www.googleapis.com/compute/v1/projects/infra/global/networks/xx-network",
                        "networkIP": "10.240.0.2"
                    }
                ],

-- truncated --

ожидаемый результат: {{item.networkInterfaces.accessConfigs.natIP}} должен вывести 35.240.203.148

фактический результат: "msg": "Задача включает параметр с неопределенной переменной. Ошибка была: у" объекта списка "нет атрибута" accessConfigs«

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