all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:feed:8ca9
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: cddcd4d9-96c6-4b80-bc9f-ed6e7e2066eb
        host_id: 7f2607eceb24f4583c6f9496c53c64b51afe50de5eacda4379b21c42
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:feed:8ca9
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.7.201
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.192.19
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:feed:8ca9
        region: null
        slot: null
  vars:
    zuul:
      _inheritance_path:
      - '<Job base explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-config/zuul.d/jobs.yaml@main#2>'
      - '<Job ansible-lint explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-jobs/.zuul.yaml@main#7>'
      - '<Job ansible-lint explicit: None implied: None source: osism/testbed/.zuul.yaml@main#325>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: faf9d2b3b3d74b18949d133ed03adc19
      build_refs:
      - branch: main
        change: '2922'
        change_message: 'manager: define internal_interface for seed path


          ## Problem


          The `osism_api_host` override in the manager environment

          (`environments/manager/configuration.yml`) dereferences

          `internal_interface`, which is only defined in

          `inventory/group_vars/testbed-managers.yml`. The seed-container path

          (`osism update manager`) runs the manager play with the reduced

          `environments/manager` inventory and extra-var set, which does **not**

          load that group_vars file.


          As a result `internal_interface` is undefined, `osism_api_host`

          collapses to `AnsibleUndefined`, and the first `ipwrap` site in

          `docker-compose.yml.j2` raises:


          ```

          AnsibleFilterError: Unrecognized type <class ...AnsibleUndefined> for ipwrap
          filter <value>

          ```


          failing `TASK [osism.services.manager : Copy docker-compose.yml file]`

          during manager upgrades via the seed path, while the orchestrator

          deploy path (full inventory) works.


          This is the next layer of the seed-path onion after the host-key

          (#2916) and operator-key (#2917) fixes, which advanced the play far

          enough to reach this template task.


          ## Fix


          Define `internal_interface` in

          `environments/manager/configuration.yml`, mirroring the group_vars

          definition, so `osism_api_host` resolves in the seed-path variable

          context. The referenced local fact

          (`ansible_local.testbed_network_devices.management`) is installed on

          the manager during bootstrap and is available whenever facts are

          gathered, so no additional inventory or fact wiring is required.


          This does not affect the orchestrator path, which does not load this

          file and keeps using the group_vars definition.'
        change_url: https://github.com/osism/testbed/pull/2922
        commit_id: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
        patchset: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/testbed
          name: osism/testbed
          short_name: testbed
        src_dir: src/github.com/osism/testbed
        topic: null
      buildset: dc564e885b504811a365a9dbbabc604b
      buildset_refs:
      - branch: main
        change: '2922'
        change_message: 'manager: define internal_interface for seed path


          ## Problem


          The `osism_api_host` override in the manager environment

          (`environments/manager/configuration.yml`) dereferences

          `internal_interface`, which is only defined in

          `inventory/group_vars/testbed-managers.yml`. The seed-container path

          (`osism update manager`) runs the manager play with the reduced

          `environments/manager` inventory and extra-var set, which does **not**

          load that group_vars file.


          As a result `internal_interface` is undefined, `osism_api_host`

          collapses to `AnsibleUndefined`, and the first `ipwrap` site in

          `docker-compose.yml.j2` raises:


          ```

          AnsibleFilterError: Unrecognized type <class ...AnsibleUndefined> for ipwrap
          filter <value>

          ```


          failing `TASK [osism.services.manager : Copy docker-compose.yml file]`

          during manager upgrades via the seed path, while the orchestrator

          deploy path (full inventory) works.


          This is the next layer of the seed-path onion after the host-key

          (#2916) and operator-key (#2917) fixes, which advanced the play far

          enough to reach this template task.


          ## Fix


          Define `internal_interface` in

          `environments/manager/configuration.yml`, mirroring the group_vars

          definition, so `osism_api_host` resolves in the seed-path variable

          context. The referenced local fact

          (`ansible_local.testbed_network_devices.management`) is installed on

          the manager during bootstrap and is available whenever facts are

          gathered, so no additional inventory or fact wiring is required.


          This does not affect the orchestrator path, which does not load this

          file and keeps using the group_vars definition.'
        change_url: https://github.com/osism/testbed/pull/2922
        commit_id: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
        patchset: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/testbed
          name: osism/testbed
          short_name: testbed
        src_dir: src/github.com/osism/testbed
        topic: null
      change: '2922'
      change_message: 'manager: define internal_interface for seed path


        ## Problem


        The `osism_api_host` override in the manager environment

        (`environments/manager/configuration.yml`) dereferences

        `internal_interface`, which is only defined in

        `inventory/group_vars/testbed-managers.yml`. The seed-container path

        (`osism update manager`) runs the manager play with the reduced

        `environments/manager` inventory and extra-var set, which does **not**

        load that group_vars file.


        As a result `internal_interface` is undefined, `osism_api_host`

        collapses to `AnsibleUndefined`, and the first `ipwrap` site in

        `docker-compose.yml.j2` raises:


        ```

        AnsibleFilterError: Unrecognized type <class ...AnsibleUndefined> for ipwrap
        filter <value>

        ```


        failing `TASK [osism.services.manager : Copy docker-compose.yml file]`

        during manager upgrades via the seed path, while the orchestrator

        deploy path (full inventory) works.


        This is the next layer of the seed-path onion after the host-key

        (#2916) and operator-key (#2917) fixes, which advanced the play far

        enough to reach this template task.


        ## Fix


        Define `internal_interface` in

        `environments/manager/configuration.yml`, mirroring the group_vars

        definition, so `osism_api_host` resolves in the seed-path variable

        context. The referenced local fact

        (`ansible_local.testbed_network_devices.management`) is installed on

        the manager during bootstrap and is available whenever facts are

        gathered, so no additional inventory or fact wiring is required.


        This does not affect the orchestrator path, which does not load this

        file and keeps using the group_vars definition.'
      change_url: https://github.com/osism/testbed/pull/2922
      child_jobs: []
      commit_id: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
      event_id: 4aea1b60-753c-11f1-98e1-d466f5260bf7
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/faf9d2b3b3d74b18949d133ed03adc19/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/faf9d2b3b3d74b18949d133ed03adc19/work/logs
        result_data_file: /var/lib/zuul/builds/faf9d2b3b3d74b18949d133ed03adc19/work/results.json
        src_root: /var/lib/zuul/builds/faf9d2b3b3d74b18949d133ed03adc19/work/src
        work_root: /var/lib/zuul/builds/faf9d2b3b3d74b18949d133ed03adc19/work
      include_vars: []
      items:
      - branch: main
        change: '2922'
        change_message: 'manager: define internal_interface for seed path


          ## Problem


          The `osism_api_host` override in the manager environment

          (`environments/manager/configuration.yml`) dereferences

          `internal_interface`, which is only defined in

          `inventory/group_vars/testbed-managers.yml`. The seed-container path

          (`osism update manager`) runs the manager play with the reduced

          `environments/manager` inventory and extra-var set, which does **not**

          load that group_vars file.


          As a result `internal_interface` is undefined, `osism_api_host`

          collapses to `AnsibleUndefined`, and the first `ipwrap` site in

          `docker-compose.yml.j2` raises:


          ```

          AnsibleFilterError: Unrecognized type <class ...AnsibleUndefined> for ipwrap
          filter <value>

          ```


          failing `TASK [osism.services.manager : Copy docker-compose.yml file]`

          during manager upgrades via the seed path, while the orchestrator

          deploy path (full inventory) works.


          This is the next layer of the seed-path onion after the host-key

          (#2916) and operator-key (#2917) fixes, which advanced the play far

          enough to reach this template task.


          ## Fix


          Define `internal_interface` in

          `environments/manager/configuration.yml`, mirroring the group_vars

          definition, so `osism_api_host` resolves in the seed-path variable

          context. The referenced local fact

          (`ansible_local.testbed_network_devices.management`) is installed on

          the manager during bootstrap and is available whenever facts are

          gathered, so no additional inventory or fact wiring is required.


          This does not affect the orchestrator path, which does not load this

          file and keeps using the group_vars definition.'
        change_url: https://github.com/osism/testbed/pull/2922
        commit_id: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
        patchset: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/testbed
          name: osism/testbed
          short_name: testbed
          src_dir: src/github.com/osism/testbed
        topic: null
      job: ansible-lint
      jobtags: []
      max_attempts: 3
      message: bWFuYWdlcjogZGVmaW5lIGludGVybmFsX2ludGVyZmFjZSBmb3Igc2VlZCBwYXRoCgojIyBQcm9ibGVtCgpUaGUgYG9zaXNtX2FwaV9ob3N0YCBvdmVycmlkZSBpbiB0aGUgbWFuYWdlciBlbnZpcm9ubWVudAooYGVudmlyb25tZW50cy9tYW5hZ2VyL2NvbmZpZ3VyYXRpb24ueW1sYCkgZGVyZWZlcmVuY2VzCmBpbnRlcm5hbF9pbnRlcmZhY2VgLCB3aGljaCBpcyBvbmx5IGRlZmluZWQgaW4KYGludmVudG9yeS9ncm91cF92YXJzL3Rlc3RiZWQtbWFuYWdlcnMueW1sYC4gVGhlIHNlZWQtY29udGFpbmVyIHBhdGgKKGBvc2lzbSB1cGRhdGUgbWFuYWdlcmApIHJ1bnMgdGhlIG1hbmFnZXIgcGxheSB3aXRoIHRoZSByZWR1Y2VkCmBlbnZpcm9ubWVudHMvbWFuYWdlcmAgaW52ZW50b3J5IGFuZCBleHRyYS12YXIgc2V0LCB3aGljaCBkb2VzICoqbm90KioKbG9hZCB0aGF0IGdyb3VwX3ZhcnMgZmlsZS4KCkFzIGEgcmVzdWx0IGBpbnRlcm5hbF9pbnRlcmZhY2VgIGlzIHVuZGVmaW5lZCwgYG9zaXNtX2FwaV9ob3N0YApjb2xsYXBzZXMgdG8gYEFuc2libGVVbmRlZmluZWRgLCBhbmQgdGhlIGZpcnN0IGBpcHdyYXBgIHNpdGUgaW4KYGRvY2tlci1jb21wb3NlLnltbC5qMmAgcmFpc2VzOgoKYGBgCkFuc2libGVGaWx0ZXJFcnJvcjogVW5yZWNvZ25pemVkIHR5cGUgPGNsYXNzIC4uLkFuc2libGVVbmRlZmluZWQ+IGZvciBpcHdyYXAgZmlsdGVyIDx2YWx1ZT4KYGBgCgpmYWlsaW5nIGBUQVNLIFtvc2lzbS5zZXJ2aWNlcy5tYW5hZ2VyIDogQ29weSBkb2NrZXItY29tcG9zZS55bWwgZmlsZV1gCmR1cmluZyBtYW5hZ2VyIHVwZ3JhZGVzIHZpYSB0aGUgc2VlZCBwYXRoLCB3aGlsZSB0aGUgb3JjaGVzdHJhdG9yCmRlcGxveSBwYXRoIChmdWxsIGludmVudG9yeSkgd29ya3MuCgpUaGlzIGlzIHRoZSBuZXh0IGxheWVyIG9mIHRoZSBzZWVkLXBhdGggb25pb24gYWZ0ZXIgdGhlIGhvc3Qta2V5CigjMjkxNikgYW5kIG9wZXJhdG9yLWtleSAoIzI5MTcpIGZpeGVzLCB3aGljaCBhZHZhbmNlZCB0aGUgcGxheSBmYXIKZW5vdWdoIHRvIHJlYWNoIHRoaXMgdGVtcGxhdGUgdGFzay4KCiMjIEZpeAoKRGVmaW5lIGBpbnRlcm5hbF9pbnRlcmZhY2VgIGluCmBlbnZpcm9ubWVudHMvbWFuYWdlci9jb25maWd1cmF0aW9uLnltbGAsIG1pcnJvcmluZyB0aGUgZ3JvdXBfdmFycwpkZWZpbml0aW9uLCBzbyBgb3Npc21fYXBpX2hvc3RgIHJlc29sdmVzIGluIHRoZSBzZWVkLXBhdGggdmFyaWFibGUKY29udGV4dC4gVGhlIHJlZmVyZW5jZWQgbG9jYWwgZmFjdAooYGFuc2libGVfbG9jYWwudGVzdGJlZF9uZXR3b3JrX2RldmljZXMubWFuYWdlbWVudGApIGlzIGluc3RhbGxlZCBvbgp0aGUgbWFuYWdlciBkdXJpbmcgYm9vdHN0cmFwIGFuZCBpcyBhdmFpbGFibGUgd2hlbmV2ZXIgZmFjdHMgYXJlCmdhdGhlcmVkLCBzbyBubyBhZGRpdGlvbmFsIGludmVudG9yeSBvciBmYWN0IHdpcmluZyBpcyByZXF1aXJlZC4KClRoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBvcmNoZXN0cmF0b3IgcGF0aCwgd2hpY2ggZG9lcyBub3QgbG9hZCB0aGlzCmZpbGUgYW5kIGtlZXBzIHVzaW5nIHRoZSBncm91cF92YXJzIGRlZmluaXRpb24u
      patchset: 9bf1ed01bc00d713103b1966cd22a18a3f78169e
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: 71b711c422c10c242a8f785dc6d41ed9d12e9cd3
          trusted/project_1/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 242732586e2cba04d04867d3e302888c766bc231
          trusted/project_2/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 1d71e58c93442038e695a5d883d57a603182c7ae
          untrusted/project_0/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 1d71e58c93442038e695a5d883d57a603182c7ae
          untrusted/project_1/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: 71b711c422c10c242a8f785dc6d41ed9d12e9cd3
          untrusted/project_2/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 242732586e2cba04d04867d3e302888c766bc231
        playbooks:
        - path: untrusted/project_0/github.com/osism/zuul-jobs/playbooks/ansible-lint/run.yaml
          roles:
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/playbook_0/role_0/zuul-config
            link_target: untrusted/project_1/github.com/osism/zuul-config
            role_path: ansible/playbook_0/role_0/zuul-config/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/playbook_0/role_1/openinfra-zuul-jobs
            link_target: untrusted/project_2/github.com/osism/openinfra-zuul-jobs
            role_path: ansible/playbook_0/role_1/openinfra-zuul-jobs/roles
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/playbook_0/role_2/zuul-jobs
            link_target: untrusted/project_0/github.com/osism/zuul-jobs
            role_path: ansible/playbook_0/role_2/zuul-jobs/roles
      post_review: false
      post_timeout: 1800
      pre_timeout: null
      project:
        canonical_hostname: github.com
        canonical_name: github.com/osism/testbed
        name: osism/testbed
        short_name: testbed
        src_dir: src/github.com/osism/testbed
      projects:
        github.com/osism/testbed:
          canonical_hostname: github.com
          canonical_name: github.com/osism/testbed
          checkout: main
          checkout_description: zuul branch
          commit: 0ac859577b36319673d0040dad9b706ac045f91b
          name: osism/testbed
          required: false
          short_name: testbed
          src_dir: src/github.com/osism/testbed
      ref: refs/pull/2922/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
