all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:fe1e:5179
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: e96bfaaa-95e7-4d07-a8ba-3e8d88d1a1a4
        host_id: 55633341e2323245483187cac115f046b03a9f9bdd80b43c7e9345ac
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:fe1e:5179
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.0.100
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.193.58
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:fe1e:5179
        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 flake8 explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-jobs/.zuul.yaml@main#32>'
      - '<Job flake8 explicit: None implied: None source: osism/python-osism/.zuul.yaml@main#71>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: f83d01cd6969462c8f076c07814350fc
      build_refs:
      - branch: main
        change: '1493'
        change_message: "Fix SONiC port channel peer type detection for single device
          configs\n\nWhen generating SONiC configuration for a single device, the
          peer type detection for port channel interfaces was incorrectly identifying
          connected spine/superspine devices as \"external\" instead of \"internal\".\r\n\r\nThis
          occurred because the device_as_mapping only contained AS numbers for devices
          being configured in the current sync operation. When only a single device
          was configured, the AS numbers for connected devices were missing from the
          mapping.\r\n\r\nThe fix extends the _determine_peer_type function to:\r\n-
          Check if the connected device is a spine/superspine when not in mapping\r\n-
          Find the spine group the connected device belongs to\r\n- Calculate the
          correct AS number for the entire spine group\r\n- Use this AS number for
          proper internal/external peer detection\r\n\r\nThis ensures port channel
          BGP neighbors are correctly identified as internal peers when both devices
          belong to the same spine group, even when configuring devices individually.\r\n\r\nAI-assisted:
          Claude Code"
        change_url: https://github.com/osism/python-osism/pull/1493
        commit_id: cbf11de2de359dd8be442243e494aefc18b0b388
        patchset: cbf11de2de359dd8be442243e494aefc18b0b388
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/python-osism
          name: osism/python-osism
          short_name: python-osism
        src_dir: src/github.com/osism/python-osism
        topic: null
      buildset: 85df21beff9942d183faaf72202fea00
      buildset_refs:
      - branch: main
        change: '1493'
        change_message: "Fix SONiC port channel peer type detection for single device
          configs\n\nWhen generating SONiC configuration for a single device, the
          peer type detection for port channel interfaces was incorrectly identifying
          connected spine/superspine devices as \"external\" instead of \"internal\".\r\n\r\nThis
          occurred because the device_as_mapping only contained AS numbers for devices
          being configured in the current sync operation. When only a single device
          was configured, the AS numbers for connected devices were missing from the
          mapping.\r\n\r\nThe fix extends the _determine_peer_type function to:\r\n-
          Check if the connected device is a spine/superspine when not in mapping\r\n-
          Find the spine group the connected device belongs to\r\n- Calculate the
          correct AS number for the entire spine group\r\n- Use this AS number for
          proper internal/external peer detection\r\n\r\nThis ensures port channel
          BGP neighbors are correctly identified as internal peers when both devices
          belong to the same spine group, even when configuring devices individually.\r\n\r\nAI-assisted:
          Claude Code"
        change_url: https://github.com/osism/python-osism/pull/1493
        commit_id: cbf11de2de359dd8be442243e494aefc18b0b388
        patchset: cbf11de2de359dd8be442243e494aefc18b0b388
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/python-osism
          name: osism/python-osism
          short_name: python-osism
        src_dir: src/github.com/osism/python-osism
        topic: null
      change: '1493'
      change_message: "Fix SONiC port channel peer type detection for single device
        configs\n\nWhen generating SONiC configuration for a single device, the peer
        type detection for port channel interfaces was incorrectly identifying connected
        spine/superspine devices as \"external\" instead of \"internal\".\r\n\r\nThis
        occurred because the device_as_mapping only contained AS numbers for devices
        being configured in the current sync operation. When only a single device
        was configured, the AS numbers for connected devices were missing from the
        mapping.\r\n\r\nThe fix extends the _determine_peer_type function to:\r\n-
        Check if the connected device is a spine/superspine when not in mapping\r\n-
        Find the spine group the connected device belongs to\r\n- Calculate the correct
        AS number for the entire spine group\r\n- Use this AS number for proper internal/external
        peer detection\r\n\r\nThis ensures port channel BGP neighbors are correctly
        identified as internal peers when both devices belong to the same spine group,
        even when configuring devices individually.\r\n\r\nAI-assisted: Claude Code"
      change_url: https://github.com/osism/python-osism/pull/1493
      child_jobs: []
      commit_id: cbf11de2de359dd8be442243e494aefc18b0b388
      event_id: cc4f82b0-4f56-11f0-884c-8e3a5b7aab53
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/f83d01cd6969462c8f076c07814350fc/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/f83d01cd6969462c8f076c07814350fc/work/logs
        result_data_file: /var/lib/zuul/builds/f83d01cd6969462c8f076c07814350fc/work/results.json
        src_root: /var/lib/zuul/builds/f83d01cd6969462c8f076c07814350fc/work/src
        work_root: /var/lib/zuul/builds/f83d01cd6969462c8f076c07814350fc/work
      include_vars: []
      items:
      - branch: main
        change: '1493'
        change_message: "Fix SONiC port channel peer type detection for single device
          configs\n\nWhen generating SONiC configuration for a single device, the
          peer type detection for port channel interfaces was incorrectly identifying
          connected spine/superspine devices as \"external\" instead of \"internal\".\r\n\r\nThis
          occurred because the device_as_mapping only contained AS numbers for devices
          being configured in the current sync operation. When only a single device
          was configured, the AS numbers for connected devices were missing from the
          mapping.\r\n\r\nThe fix extends the _determine_peer_type function to:\r\n-
          Check if the connected device is a spine/superspine when not in mapping\r\n-
          Find the spine group the connected device belongs to\r\n- Calculate the
          correct AS number for the entire spine group\r\n- Use this AS number for
          proper internal/external peer detection\r\n\r\nThis ensures port channel
          BGP neighbors are correctly identified as internal peers when both devices
          belong to the same spine group, even when configuring devices individually.\r\n\r\nAI-assisted:
          Claude Code"
        change_url: https://github.com/osism/python-osism/pull/1493
        commit_id: cbf11de2de359dd8be442243e494aefc18b0b388
        patchset: cbf11de2de359dd8be442243e494aefc18b0b388
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/python-osism
          name: osism/python-osism
          short_name: python-osism
          src_dir: src/github.com/osism/python-osism
        topic: null
      job: flake8
      jobtags: []
      max_attempts: 3
      message: Rml4IFNPTmlDIHBvcnQgY2hhbm5lbCBwZWVyIHR5cGUgZGV0ZWN0aW9uIGZvciBzaW5nbGUgZGV2aWNlIGNvbmZpZ3MKCldoZW4gZ2VuZXJhdGluZyBTT05pQyBjb25maWd1cmF0aW9uIGZvciBhIHNpbmdsZSBkZXZpY2UsIHRoZSBwZWVyIHR5cGUgZGV0ZWN0aW9uIGZvciBwb3J0IGNoYW5uZWwgaW50ZXJmYWNlcyB3YXMgaW5jb3JyZWN0bHkgaWRlbnRpZnlpbmcgY29ubmVjdGVkIHNwaW5lL3N1cGVyc3BpbmUgZGV2aWNlcyBhcyAiZXh0ZXJuYWwiIGluc3RlYWQgb2YgImludGVybmFsIi4NCg0KVGhpcyBvY2N1cnJlZCBiZWNhdXNlIHRoZSBkZXZpY2VfYXNfbWFwcGluZyBvbmx5IGNvbnRhaW5lZCBBUyBudW1iZXJzIGZvciBkZXZpY2VzIGJlaW5nIGNvbmZpZ3VyZWQgaW4gdGhlIGN1cnJlbnQgc3luYyBvcGVyYXRpb24uIFdoZW4gb25seSBhIHNpbmdsZSBkZXZpY2Ugd2FzIGNvbmZpZ3VyZWQsIHRoZSBBUyBudW1iZXJzIGZvciBjb25uZWN0ZWQgZGV2aWNlcyB3ZXJlIG1pc3NpbmcgZnJvbSB0aGUgbWFwcGluZy4NCg0KVGhlIGZpeCBleHRlbmRzIHRoZSBfZGV0ZXJtaW5lX3BlZXJfdHlwZSBmdW5jdGlvbiB0bzoNCi0gQ2hlY2sgaWYgdGhlIGNvbm5lY3RlZCBkZXZpY2UgaXMgYSBzcGluZS9zdXBlcnNwaW5lIHdoZW4gbm90IGluIG1hcHBpbmcNCi0gRmluZCB0aGUgc3BpbmUgZ3JvdXAgdGhlIGNvbm5lY3RlZCBkZXZpY2UgYmVsb25ncyB0bw0KLSBDYWxjdWxhdGUgdGhlIGNvcnJlY3QgQVMgbnVtYmVyIGZvciB0aGUgZW50aXJlIHNwaW5lIGdyb3VwDQotIFVzZSB0aGlzIEFTIG51bWJlciBmb3IgcHJvcGVyIGludGVybmFsL2V4dGVybmFsIHBlZXIgZGV0ZWN0aW9uDQoNClRoaXMgZW5zdXJlcyBwb3J0IGNoYW5uZWwgQkdQIG5laWdoYm9ycyBhcmUgY29ycmVjdGx5IGlkZW50aWZpZWQgYXMgaW50ZXJuYWwgcGVlcnMgd2hlbiBib3RoIGRldmljZXMgYmVsb25nIHRvIHRoZSBzYW1lIHNwaW5lIGdyb3VwLCBldmVuIHdoZW4gY29uZmlndXJpbmcgZGV2aWNlcyBpbmRpdmlkdWFsbHkuDQoNCkFJLWFzc2lzdGVkOiBDbGF1ZGUgQ29kZQ==
      patchset: cbf11de2de359dd8be442243e494aefc18b0b388
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: caa0df55ed55158f32903d317317ac95db4da6ce
          trusted/project_1/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 397240f42127868e42e86e6aeb120c2cb092d117
          untrusted/project_0/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 95400903ba18e86e546004cbff0716a23812e65c
          untrusted/project_1/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: caa0df55ed55158f32903d317317ac95db4da6ce
          untrusted/project_2/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 397240f42127868e42e86e6aeb120c2cb092d117
        playbooks:
        - path: untrusted/project_0/github.com/osism/zuul-jobs/playbooks/flake8/run.yaml
          roles:
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/playbook_0/role_0/zuul-jobs
            link_target: untrusted/project_0/github.com/osism/zuul-jobs
            role_path: ansible/playbook_0/role_0/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/playbook_0/role_1/zuul-config
            link_target: untrusted/project_1/github.com/osism/zuul-config
            role_path: ansible/playbook_0/role_1/zuul-config/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/playbook_0/role_2/openinfra-zuul-jobs
            link_target: untrusted/project_2/github.com/osism/openinfra-zuul-jobs
            role_path: ansible/playbook_0/role_2/openinfra-zuul-jobs/roles
      post_review: false
      post_timeout: null
      pre_timeout: null
      project:
        canonical_hostname: github.com
        canonical_name: github.com/osism/python-osism
        name: osism/python-osism
        short_name: python-osism
        src_dir: src/github.com/osism/python-osism
      projects:
        github.com/osism/python-osism:
          canonical_hostname: github.com
          canonical_name: github.com/osism/python-osism
          checkout: main
          checkout_description: zuul branch
          commit: 166ccec57db7b5104fb5956d12d3d41c212db5b2
          name: osism/python-osism
          required: false
          short_name: python-osism
          src_dir: src/github.com/osism/python-osism
      ref: refs/pull/1493/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
