all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:fe34:b8e7
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: 2f94b93c-9a66-47da-ade5-64ee702109a9
        host_id: ea231daa1e899519b2913f0036770c325ddb4f23e60dfb5fd174bdda
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:fe34:b8e7
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.0.109
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.192.215
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:fe34:b8e7
        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 mypy explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-jobs/.zuul.yaml@main#42>'
      - '<Job mypy explicit: None implied: None source: osism/python-osism/.zuul.yaml@main#133>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: 6eef297ba3174753a8a3236eb9401f7b
      build_refs:
      - branch: main
        change: '1792'
        change_message: "Fix SONiC format 400G to 4x100G breakout detection\n\nExtends
          the 400G breakout detection to SONiC format interfaces (Ethernet0, Ethernet2,
          Ethernet4, Ethernet6), completing the implementation started in ea885fb.\r\n\r\nThe
          previous commit added 400G breakout support for EthX/Y/Z format interfaces
          but missed adding the same logic to the SONiC format detection section.
          This caused devices configured with SONiC-style interface names to not generate
          proper BREAKOUT_CFG entries.\r\n\r\nKey changes:\r\n- Detect SONiC 400G
          breakout pattern (ports increment by 2)\r\n- Validate 8-lane master port
          in port_config before processing\r\n- Check for 100G speed on each breakout
          port\r\n- Generate correct BREAKOUT_CFG with \"4x100G\" mode\r\n- Calculate
          physical port using (base_port // 8) + 1 logic\r\n- Add debug logging for
          400G breakout detection\r\n\r\nTechnical implementation:\r\n- Base port
          calculation: (port_num // 8) * 8\r\n- Port iteration: Ethernet0, 2, 4, 6
          (i * 2 increment)\r\n- Speed validation: 100000 Mbps per port\r\n- Unique
          group_key: \"sonic_400g_{base}\" vs \"sonic_std_{base}\"\r\n- Maintains
          backward compatibility with standard breakout (\u226450G)\r\n\r\nFixes detection
          for devices like Accton-AS9726-32D with 400G ports broken out to 4x100G
          in NetBox."
        change_url: https://github.com/osism/python-osism/pull/1792
        commit_id: bc70d75e891a8a965b23f14aee976e09b6b1ed19
        patchset: bc70d75e891a8a965b23f14aee976e09b6b1ed19
        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: 59f11c5b3d5d416c9508d4db958d6593
      buildset_refs:
      - branch: main
        change: '1792'
        change_message: "Fix SONiC format 400G to 4x100G breakout detection\n\nExtends
          the 400G breakout detection to SONiC format interfaces (Ethernet0, Ethernet2,
          Ethernet4, Ethernet6), completing the implementation started in ea885fb.\r\n\r\nThe
          previous commit added 400G breakout support for EthX/Y/Z format interfaces
          but missed adding the same logic to the SONiC format detection section.
          This caused devices configured with SONiC-style interface names to not generate
          proper BREAKOUT_CFG entries.\r\n\r\nKey changes:\r\n- Detect SONiC 400G
          breakout pattern (ports increment by 2)\r\n- Validate 8-lane master port
          in port_config before processing\r\n- Check for 100G speed on each breakout
          port\r\n- Generate correct BREAKOUT_CFG with \"4x100G\" mode\r\n- Calculate
          physical port using (base_port // 8) + 1 logic\r\n- Add debug logging for
          400G breakout detection\r\n\r\nTechnical implementation:\r\n- Base port
          calculation: (port_num // 8) * 8\r\n- Port iteration: Ethernet0, 2, 4, 6
          (i * 2 increment)\r\n- Speed validation: 100000 Mbps per port\r\n- Unique
          group_key: \"sonic_400g_{base}\" vs \"sonic_std_{base}\"\r\n- Maintains
          backward compatibility with standard breakout (\u226450G)\r\n\r\nFixes detection
          for devices like Accton-AS9726-32D with 400G ports broken out to 4x100G
          in NetBox."
        change_url: https://github.com/osism/python-osism/pull/1792
        commit_id: bc70d75e891a8a965b23f14aee976e09b6b1ed19
        patchset: bc70d75e891a8a965b23f14aee976e09b6b1ed19
        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: '1792'
      change_message: "Fix SONiC format 400G to 4x100G breakout detection\n\nExtends
        the 400G breakout detection to SONiC format interfaces (Ethernet0, Ethernet2,
        Ethernet4, Ethernet6), completing the implementation started in ea885fb.\r\n\r\nThe
        previous commit added 400G breakout support for EthX/Y/Z format interfaces
        but missed adding the same logic to the SONiC format detection section. This
        caused devices configured with SONiC-style interface names to not generate
        proper BREAKOUT_CFG entries.\r\n\r\nKey changes:\r\n- Detect SONiC 400G breakout
        pattern (ports increment by 2)\r\n- Validate 8-lane master port in port_config
        before processing\r\n- Check for 100G speed on each breakout port\r\n- Generate
        correct BREAKOUT_CFG with \"4x100G\" mode\r\n- Calculate physical port using
        (base_port // 8) + 1 logic\r\n- Add debug logging for 400G breakout detection\r\n\r\nTechnical
        implementation:\r\n- Base port calculation: (port_num // 8) * 8\r\n- Port
        iteration: Ethernet0, 2, 4, 6 (i * 2 increment)\r\n- Speed validation: 100000
        Mbps per port\r\n- Unique group_key: \"sonic_400g_{base}\" vs \"sonic_std_{base}\"\r\n-
        Maintains backward compatibility with standard breakout (\u226450G)\r\n\r\nFixes
        detection for devices like Accton-AS9726-32D with 400G ports broken out to
        4x100G in NetBox."
      change_url: https://github.com/osism/python-osism/pull/1792
      child_jobs: []
      commit_id: bc70d75e891a8a965b23f14aee976e09b6b1ed19
      event_id: 0b291ce0-ba27-11f0-9437-077c451e5843
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/6eef297ba3174753a8a3236eb9401f7b/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/6eef297ba3174753a8a3236eb9401f7b/work/logs
        result_data_file: /var/lib/zuul/builds/6eef297ba3174753a8a3236eb9401f7b/work/results.json
        src_root: /var/lib/zuul/builds/6eef297ba3174753a8a3236eb9401f7b/work/src
        work_root: /var/lib/zuul/builds/6eef297ba3174753a8a3236eb9401f7b/work
      include_vars: []
      items:
      - branch: main
        change: '1792'
        change_message: "Fix SONiC format 400G to 4x100G breakout detection\n\nExtends
          the 400G breakout detection to SONiC format interfaces (Ethernet0, Ethernet2,
          Ethernet4, Ethernet6), completing the implementation started in ea885fb.\r\n\r\nThe
          previous commit added 400G breakout support for EthX/Y/Z format interfaces
          but missed adding the same logic to the SONiC format detection section.
          This caused devices configured with SONiC-style interface names to not generate
          proper BREAKOUT_CFG entries.\r\n\r\nKey changes:\r\n- Detect SONiC 400G
          breakout pattern (ports increment by 2)\r\n- Validate 8-lane master port
          in port_config before processing\r\n- Check for 100G speed on each breakout
          port\r\n- Generate correct BREAKOUT_CFG with \"4x100G\" mode\r\n- Calculate
          physical port using (base_port // 8) + 1 logic\r\n- Add debug logging for
          400G breakout detection\r\n\r\nTechnical implementation:\r\n- Base port
          calculation: (port_num // 8) * 8\r\n- Port iteration: Ethernet0, 2, 4, 6
          (i * 2 increment)\r\n- Speed validation: 100000 Mbps per port\r\n- Unique
          group_key: \"sonic_400g_{base}\" vs \"sonic_std_{base}\"\r\n- Maintains
          backward compatibility with standard breakout (\u226450G)\r\n\r\nFixes detection
          for devices like Accton-AS9726-32D with 400G ports broken out to 4x100G
          in NetBox."
        change_url: https://github.com/osism/python-osism/pull/1792
        commit_id: bc70d75e891a8a965b23f14aee976e09b6b1ed19
        patchset: bc70d75e891a8a965b23f14aee976e09b6b1ed19
        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: mypy
      jobtags: []
      max_attempts: 3
      message: Rml4IFNPTmlDIGZvcm1hdCA0MDBHIHRvIDR4MTAwRyBicmVha291dCBkZXRlY3Rpb24KCkV4dGVuZHMgdGhlIDQwMEcgYnJlYWtvdXQgZGV0ZWN0aW9uIHRvIFNPTmlDIGZvcm1hdCBpbnRlcmZhY2VzIChFdGhlcm5ldDAsIEV0aGVybmV0MiwgRXRoZXJuZXQ0LCBFdGhlcm5ldDYpLCBjb21wbGV0aW5nIHRoZSBpbXBsZW1lbnRhdGlvbiBzdGFydGVkIGluIGVhODg1ZmIuDQoNClRoZSBwcmV2aW91cyBjb21taXQgYWRkZWQgNDAwRyBicmVha291dCBzdXBwb3J0IGZvciBFdGhYL1kvWiBmb3JtYXQgaW50ZXJmYWNlcyBidXQgbWlzc2VkIGFkZGluZyB0aGUgc2FtZSBsb2dpYyB0byB0aGUgU09OaUMgZm9ybWF0IGRldGVjdGlvbiBzZWN0aW9uLiBUaGlzIGNhdXNlZCBkZXZpY2VzIGNvbmZpZ3VyZWQgd2l0aCBTT05pQy1zdHlsZSBpbnRlcmZhY2UgbmFtZXMgdG8gbm90IGdlbmVyYXRlIHByb3BlciBCUkVBS09VVF9DRkcgZW50cmllcy4NCg0KS2V5IGNoYW5nZXM6DQotIERldGVjdCBTT05pQyA0MDBHIGJyZWFrb3V0IHBhdHRlcm4gKHBvcnRzIGluY3JlbWVudCBieSAyKQ0KLSBWYWxpZGF0ZSA4LWxhbmUgbWFzdGVyIHBvcnQgaW4gcG9ydF9jb25maWcgYmVmb3JlIHByb2Nlc3NpbmcNCi0gQ2hlY2sgZm9yIDEwMEcgc3BlZWQgb24gZWFjaCBicmVha291dCBwb3J0DQotIEdlbmVyYXRlIGNvcnJlY3QgQlJFQUtPVVRfQ0ZHIHdpdGggIjR4MTAwRyIgbW9kZQ0KLSBDYWxjdWxhdGUgcGh5c2ljYWwgcG9ydCB1c2luZyAoYmFzZV9wb3J0IC8vIDgpICsgMSBsb2dpYw0KLSBBZGQgZGVidWcgbG9nZ2luZyBmb3IgNDAwRyBicmVha291dCBkZXRlY3Rpb24NCg0KVGVjaG5pY2FsIGltcGxlbWVudGF0aW9uOg0KLSBCYXNlIHBvcnQgY2FsY3VsYXRpb246IChwb3J0X251bSAvLyA4KSAqIDgNCi0gUG9ydCBpdGVyYXRpb246IEV0aGVybmV0MCwgMiwgNCwgNiAoaSAqIDIgaW5jcmVtZW50KQ0KLSBTcGVlZCB2YWxpZGF0aW9uOiAxMDAwMDAgTWJwcyBwZXIgcG9ydA0KLSBVbmlxdWUgZ3JvdXBfa2V5OiAic29uaWNfNDAwZ197YmFzZX0iIHZzICJzb25pY19zdGRfe2Jhc2V9Ig0KLSBNYWludGFpbnMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aXRoIHN0YW5kYXJkIGJyZWFrb3V0ICjiiaQ1MEcpDQoNCkZpeGVzIGRldGVjdGlvbiBmb3IgZGV2aWNlcyBsaWtlIEFjY3Rvbi1BUzk3MjYtMzJEIHdpdGggNDAwRyBwb3J0cyBicm9rZW4gb3V0IHRvIDR4MTAwRyBpbiBOZXRCb3gu
      patchset: bc70d75e891a8a965b23f14aee976e09b6b1ed19
      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: 3f5938e6b0934cbeb0ac6533a4c1487d32af3210
          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/mypy/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: 8d0677fd39fe14927971aeafd23791581a833cf0
          name: osism/python-osism
          required: false
          short_name: python-osism
          src_dir: src/github.com/osism/python-osism
      ref: refs/pull/1792/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
