all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:fee9:bed3
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: af8dd6bb-5680-475b-9b10-de7d0af4a511
        host_id: 0d3d02185f810c959252bd1d303ec55040bf5bb0b401cceef814c3a7
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:fee9:bed3
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.0.108
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.192.107
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:fee9:bed3
        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 python-black explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-jobs/.zuul.yaml@main#54>'
      - '<Job python-black explicit: None implied: None source: osism/release/.zuul.yaml@main#14>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: c5a7dae65afa40148dc8c82659496416
      build_refs:
      - branch: main
        change: '2640'
        change_message: "latest: use unmaintained 2024.1 sources\n\n> [!IMPORTANT]\n>
          Cross-repo change. **Merge this PR first**, before the companion change
          in\n> `container-images-kolla`. Rationale in [Merge order](#merge-order)
          below \u2014\n> the reverse order builds successfully while silently dropping
          nine fixes.\n\nOpenStack 2024.1 (Caracal) is in the unmaintained phase upstream:
          the\n`stable/2024.1` branches were renamed to `unmaintained/2024.1`. The\nper-project
          refs in `latest/openstack-2024.1.yml` still pointed at\n`stable-2024.1`,
          which is the name of the branch artifact on\n`tarballs.opendev.org` that
          the 2024.1 container images are built from.\n\nThose artifacts still resolve,
          but opendev stopped regenerating them at the\nrename, so they are frozen
          at the final `stable/2024.1` state. Nothing fails \u2014\nthe frozen tarball
          is still served, `wget` succeeds and `kolla-build` reports\nno error \u2014
          so the 2024.1 images have silently been built from Sep/Oct 2025\nsources
          ever since.\n\n## Impact\n\nNo upstream fix merged to `unmaintained/2024.1`
          can reach a 2024.1 image.\n\nConfirmed by inspecting the published image
          rather than its metadata: the\n`kolla/neutron-server:2024.1` image rebuilt
          on 2026-07-30 ships\n`neutron-24.2.2.dev23`, and its `onboard_network_subnets`
          still has no\nownership check \u2014 it remains vulnerable to CVE-2026-55707,
          whose fix is\nmerged upstream on `unmaintained/2024.1`.\n\n- https://osism.tech/docs/appendix/security/ossa-2026-032/\n-
          https://bugs.launchpad.net/neutron/+bug/2152113\n- https://review.opendev.org/c/openstack/neutron/+/999186\n\nCounting
          only commits that touch runtime code (`neutron/` excluding\n`neutron/tests/`),
          14 neutron fixes are missing from published 2024.1 images\nbeyond the two
          OSISM carries downstream. Among them a second security fix\n(`b0411e51be`,
          PF GET/PUT parent floating IP validation \u2014 backported\ndownstream for
          2024.2 but never for 2024.1), an OVN security-group rule that\ncan silently
          fail to apply (`37553716ea`), and a data-loss bug\n(`4f27134e92`). Every
          other 2024.1 project is frozen the same way; keystone\nis 12 commits behind,
          nova and cinder at least 19 and 4.\n\n## Change\n\nPoint the 21 `openstack_projects`
          refs at `unmaintained-2024.1`, which opendev\ndoes keep current. `gnocchi`
          stays on `stable/4.6` \u2014 it follows its own branch\nnaming and is unaffected.\n\n##
          Verification\n\n- All 21 projects plus `requirements` were confirmed to
          have an\n  `unmaintained-2024.1` artifact (HTTP 200 each). This matters
          because\n  `003-patch.sh` runs `wget ... || exit 2`, so a single missing
          artifact\n  would break the build.\n- `templates/<version>/kolla-build.conf.j2`
          interpolates the ref straight into\n  `location = tarballs/{{ project.repository
          }}-{{ project.version }}.tar.gz`,\n  so the new value resolves to `<project>-unmaintained-2024.1.tar.gz`.\n-
          The post-change patch set was applied against the unmaintained tarballs
          the\n  way `003-patch.sh` does it (cumulative, `sort` order): keystone 4/4,
          nova\n  1/1, cinder 1/1, neutron-dynamic-routing 1/1, neutron none remaining
          \u2014 all\n  apply.\n- `neutron-unmaintained-2024.1.tar.gz` was extracted
          and confirmed to contain\n  the ownership check.\n\n## Merge order\n\nThere
          is no `gate` pipeline, so the two PRs cannot be co-merged and one order\nhas
          to be chosen.\n\n| Order | Effect in the window between merges |\n|---|---|\n|
          **This PR first** | New refs while the nine now-upstream patches are still
          present \u2192 `003-patch.sh` fails on an already-applied patch. Loud, and
          nothing bad ships. A red `periodic-midnight` in between is expected. |\n|
          Companion first | Patches removed while refs are still frozen \u2192 builds
          succeed and **silently drop nine security fixes** from published 2024.1
          images. |\n\n## Notes\n\n- No precedent: no `latest/openstack-*.yml` has
          previously had its\n  `openstack_projects` refs moved off `stable-<version>`.
          2024.2 stays on a\n  frozen `stable-2024.2` tarball plus downstream patches,
          which is forced\n  there \u2014 it is EOL and has no `unmaintained` branch.
          2024.1 still has one,\n  which is what makes this possible.\n- Limited lifespan:
          when 2024.1 reaches EOL its branch is deleted and the\n  build falls back
          to a frozen tarball plus patches, as 2024.2 is now. This\n  buys a maintained
          window; it does not remove the pattern. A build-time\n  staleness check
          would.\n- `UpgradeImpact`: rolling `:2024.1` images advance roughly nine
          months of\n  upstream commits across 21 projects. That is the intent, but
          it is a larger\n  delta than a normal rebuild.\n\n## Companion PR\n\n- osism/container-images-kolla#PLACEHOLDER\n\n\U0001F916
          Generated with [Claude Code](https://claude.com/claude-code)"
        change_url: https://github.com/osism/release/pull/2640
        commit_id: 2bd5ee6145f42d3997a584fe1603e182af464619
        patchset: 2bd5ee6145f42d3997a584fe1603e182af464619
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          name: osism/release
          short_name: release
        src_dir: src/github.com/osism/release
        topic: null
      buildset: 24bfba132adf440faf94d79ba174a537
      buildset_refs:
      - branch: main
        change: '2640'
        change_message: "latest: use unmaintained 2024.1 sources\n\n> [!IMPORTANT]\n>
          Cross-repo change. **Merge this PR first**, before the companion change
          in\n> `container-images-kolla`. Rationale in [Merge order](#merge-order)
          below \u2014\n> the reverse order builds successfully while silently dropping
          nine fixes.\n\nOpenStack 2024.1 (Caracal) is in the unmaintained phase upstream:
          the\n`stable/2024.1` branches were renamed to `unmaintained/2024.1`. The\nper-project
          refs in `latest/openstack-2024.1.yml` still pointed at\n`stable-2024.1`,
          which is the name of the branch artifact on\n`tarballs.opendev.org` that
          the 2024.1 container images are built from.\n\nThose artifacts still resolve,
          but opendev stopped regenerating them at the\nrename, so they are frozen
          at the final `stable/2024.1` state. Nothing fails \u2014\nthe frozen tarball
          is still served, `wget` succeeds and `kolla-build` reports\nno error \u2014
          so the 2024.1 images have silently been built from Sep/Oct 2025\nsources
          ever since.\n\n## Impact\n\nNo upstream fix merged to `unmaintained/2024.1`
          can reach a 2024.1 image.\n\nConfirmed by inspecting the published image
          rather than its metadata: the\n`kolla/neutron-server:2024.1` image rebuilt
          on 2026-07-30 ships\n`neutron-24.2.2.dev23`, and its `onboard_network_subnets`
          still has no\nownership check \u2014 it remains vulnerable to CVE-2026-55707,
          whose fix is\nmerged upstream on `unmaintained/2024.1`.\n\n- https://osism.tech/docs/appendix/security/ossa-2026-032/\n-
          https://bugs.launchpad.net/neutron/+bug/2152113\n- https://review.opendev.org/c/openstack/neutron/+/999186\n\nCounting
          only commits that touch runtime code (`neutron/` excluding\n`neutron/tests/`),
          14 neutron fixes are missing from published 2024.1 images\nbeyond the two
          OSISM carries downstream. Among them a second security fix\n(`b0411e51be`,
          PF GET/PUT parent floating IP validation \u2014 backported\ndownstream for
          2024.2 but never for 2024.1), an OVN security-group rule that\ncan silently
          fail to apply (`37553716ea`), and a data-loss bug\n(`4f27134e92`). Every
          other 2024.1 project is frozen the same way; keystone\nis 12 commits behind,
          nova and cinder at least 19 and 4.\n\n## Change\n\nPoint the 21 `openstack_projects`
          refs at `unmaintained-2024.1`, which opendev\ndoes keep current. `gnocchi`
          stays on `stable/4.6` \u2014 it follows its own branch\nnaming and is unaffected.\n\n##
          Verification\n\n- All 21 projects plus `requirements` were confirmed to
          have an\n  `unmaintained-2024.1` artifact (HTTP 200 each). This matters
          because\n  `003-patch.sh` runs `wget ... || exit 2`, so a single missing
          artifact\n  would break the build.\n- `templates/<version>/kolla-build.conf.j2`
          interpolates the ref straight into\n  `location = tarballs/{{ project.repository
          }}-{{ project.version }}.tar.gz`,\n  so the new value resolves to `<project>-unmaintained-2024.1.tar.gz`.\n-
          The post-change patch set was applied against the unmaintained tarballs
          the\n  way `003-patch.sh` does it (cumulative, `sort` order): keystone 4/4,
          nova\n  1/1, cinder 1/1, neutron-dynamic-routing 1/1, neutron none remaining
          \u2014 all\n  apply.\n- `neutron-unmaintained-2024.1.tar.gz` was extracted
          and confirmed to contain\n  the ownership check.\n\n## Merge order\n\nThere
          is no `gate` pipeline, so the two PRs cannot be co-merged and one order\nhas
          to be chosen.\n\n| Order | Effect in the window between merges |\n|---|---|\n|
          **This PR first** | New refs while the nine now-upstream patches are still
          present \u2192 `003-patch.sh` fails on an already-applied patch. Loud, and
          nothing bad ships. A red `periodic-midnight` in between is expected. |\n|
          Companion first | Patches removed while refs are still frozen \u2192 builds
          succeed and **silently drop nine security fixes** from published 2024.1
          images. |\n\n## Notes\n\n- No precedent: no `latest/openstack-*.yml` has
          previously had its\n  `openstack_projects` refs moved off `stable-<version>`.
          2024.2 stays on a\n  frozen `stable-2024.2` tarball plus downstream patches,
          which is forced\n  there \u2014 it is EOL and has no `unmaintained` branch.
          2024.1 still has one,\n  which is what makes this possible.\n- Limited lifespan:
          when 2024.1 reaches EOL its branch is deleted and the\n  build falls back
          to a frozen tarball plus patches, as 2024.2 is now. This\n  buys a maintained
          window; it does not remove the pattern. A build-time\n  staleness check
          would.\n- `UpgradeImpact`: rolling `:2024.1` images advance roughly nine
          months of\n  upstream commits across 21 projects. That is the intent, but
          it is a larger\n  delta than a normal rebuild.\n\n## Companion PR\n\n- osism/container-images-kolla#PLACEHOLDER\n\n\U0001F916
          Generated with [Claude Code](https://claude.com/claude-code)"
        change_url: https://github.com/osism/release/pull/2640
        commit_id: 2bd5ee6145f42d3997a584fe1603e182af464619
        patchset: 2bd5ee6145f42d3997a584fe1603e182af464619
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          name: osism/release
          short_name: release
        src_dir: src/github.com/osism/release
        topic: null
      change: '2640'
      change_message: "latest: use unmaintained 2024.1 sources\n\n> [!IMPORTANT]\n>
        Cross-repo change. **Merge this PR first**, before the companion change in\n>
        `container-images-kolla`. Rationale in [Merge order](#merge-order) below \u2014\n>
        the reverse order builds successfully while silently dropping nine fixes.\n\nOpenStack
        2024.1 (Caracal) is in the unmaintained phase upstream: the\n`stable/2024.1`
        branches were renamed to `unmaintained/2024.1`. The\nper-project refs in `latest/openstack-2024.1.yml`
        still pointed at\n`stable-2024.1`, which is the name of the branch artifact
        on\n`tarballs.opendev.org` that the 2024.1 container images are built from.\n\nThose
        artifacts still resolve, but opendev stopped regenerating them at the\nrename,
        so they are frozen at the final `stable/2024.1` state. Nothing fails \u2014\nthe
        frozen tarball is still served, `wget` succeeds and `kolla-build` reports\nno
        error \u2014 so the 2024.1 images have silently been built from Sep/Oct 2025\nsources
        ever since.\n\n## Impact\n\nNo upstream fix merged to `unmaintained/2024.1`
        can reach a 2024.1 image.\n\nConfirmed by inspecting the published image rather
        than its metadata: the\n`kolla/neutron-server:2024.1` image rebuilt on 2026-07-30
        ships\n`neutron-24.2.2.dev23`, and its `onboard_network_subnets` still has
        no\nownership check \u2014 it remains vulnerable to CVE-2026-55707, whose
        fix is\nmerged upstream on `unmaintained/2024.1`.\n\n- https://osism.tech/docs/appendix/security/ossa-2026-032/\n-
        https://bugs.launchpad.net/neutron/+bug/2152113\n- https://review.opendev.org/c/openstack/neutron/+/999186\n\nCounting
        only commits that touch runtime code (`neutron/` excluding\n`neutron/tests/`),
        14 neutron fixes are missing from published 2024.1 images\nbeyond the two
        OSISM carries downstream. Among them a second security fix\n(`b0411e51be`,
        PF GET/PUT parent floating IP validation \u2014 backported\ndownstream for
        2024.2 but never for 2024.1), an OVN security-group rule that\ncan silently
        fail to apply (`37553716ea`), and a data-loss bug\n(`4f27134e92`). Every other
        2024.1 project is frozen the same way; keystone\nis 12 commits behind, nova
        and cinder at least 19 and 4.\n\n## Change\n\nPoint the 21 `openstack_projects`
        refs at `unmaintained-2024.1`, which opendev\ndoes keep current. `gnocchi`
        stays on `stable/4.6` \u2014 it follows its own branch\nnaming and is unaffected.\n\n##
        Verification\n\n- All 21 projects plus `requirements` were confirmed to have
        an\n  `unmaintained-2024.1` artifact (HTTP 200 each). This matters because\n
        \ `003-patch.sh` runs `wget ... || exit 2`, so a single missing artifact\n
        \ would break the build.\n- `templates/<version>/kolla-build.conf.j2` interpolates
        the ref straight into\n  `location = tarballs/{{ project.repository }}-{{
        project.version }}.tar.gz`,\n  so the new value resolves to `<project>-unmaintained-2024.1.tar.gz`.\n-
        The post-change patch set was applied against the unmaintained tarballs the\n
        \ way `003-patch.sh` does it (cumulative, `sort` order): keystone 4/4, nova\n
        \ 1/1, cinder 1/1, neutron-dynamic-routing 1/1, neutron none remaining \u2014
        all\n  apply.\n- `neutron-unmaintained-2024.1.tar.gz` was extracted and confirmed
        to contain\n  the ownership check.\n\n## Merge order\n\nThere is no `gate`
        pipeline, so the two PRs cannot be co-merged and one order\nhas to be chosen.\n\n|
        Order | Effect in the window between merges |\n|---|---|\n| **This PR first**
        | New refs while the nine now-upstream patches are still present \u2192 `003-patch.sh`
        fails on an already-applied patch. Loud, and nothing bad ships. A red `periodic-midnight`
        in between is expected. |\n| Companion first | Patches removed while refs
        are still frozen \u2192 builds succeed and **silently drop nine security fixes**
        from published 2024.1 images. |\n\n## Notes\n\n- No precedent: no `latest/openstack-*.yml`
        has previously had its\n  `openstack_projects` refs moved off `stable-<version>`.
        2024.2 stays on a\n  frozen `stable-2024.2` tarball plus downstream patches,
        which is forced\n  there \u2014 it is EOL and has no `unmaintained` branch.
        2024.1 still has one,\n  which is what makes this possible.\n- Limited lifespan:
        when 2024.1 reaches EOL its branch is deleted and the\n  build falls back
        to a frozen tarball plus patches, as 2024.2 is now. This\n  buys a maintained
        window; it does not remove the pattern. A build-time\n  staleness check would.\n-
        `UpgradeImpact`: rolling `:2024.1` images advance roughly nine months of\n
        \ upstream commits across 21 projects. That is the intent, but it is a larger\n
        \ delta than a normal rebuild.\n\n## Companion PR\n\n- osism/container-images-kolla#PLACEHOLDER\n\n\U0001F916
        Generated with [Claude Code](https://claude.com/claude-code)"
      change_url: https://github.com/osism/release/pull/2640
      child_jobs: []
      commit_id: 2bd5ee6145f42d3997a584fe1603e182af464619
      event_id: d23f7940-8c55-11f1-95d4-b934139ea33d
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/c5a7dae65afa40148dc8c82659496416/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/c5a7dae65afa40148dc8c82659496416/work/logs
        result_data_file: /var/lib/zuul/builds/c5a7dae65afa40148dc8c82659496416/work/results.json
        src_root: /var/lib/zuul/builds/c5a7dae65afa40148dc8c82659496416/work/src
        work_root: /var/lib/zuul/builds/c5a7dae65afa40148dc8c82659496416/work
      include_vars: []
      items:
      - branch: main
        change: '2640'
        change_message: "latest: use unmaintained 2024.1 sources\n\n> [!IMPORTANT]\n>
          Cross-repo change. **Merge this PR first**, before the companion change
          in\n> `container-images-kolla`. Rationale in [Merge order](#merge-order)
          below \u2014\n> the reverse order builds successfully while silently dropping
          nine fixes.\n\nOpenStack 2024.1 (Caracal) is in the unmaintained phase upstream:
          the\n`stable/2024.1` branches were renamed to `unmaintained/2024.1`. The\nper-project
          refs in `latest/openstack-2024.1.yml` still pointed at\n`stable-2024.1`,
          which is the name of the branch artifact on\n`tarballs.opendev.org` that
          the 2024.1 container images are built from.\n\nThose artifacts still resolve,
          but opendev stopped regenerating them at the\nrename, so they are frozen
          at the final `stable/2024.1` state. Nothing fails \u2014\nthe frozen tarball
          is still served, `wget` succeeds and `kolla-build` reports\nno error \u2014
          so the 2024.1 images have silently been built from Sep/Oct 2025\nsources
          ever since.\n\n## Impact\n\nNo upstream fix merged to `unmaintained/2024.1`
          can reach a 2024.1 image.\n\nConfirmed by inspecting the published image
          rather than its metadata: the\n`kolla/neutron-server:2024.1` image rebuilt
          on 2026-07-30 ships\n`neutron-24.2.2.dev23`, and its `onboard_network_subnets`
          still has no\nownership check \u2014 it remains vulnerable to CVE-2026-55707,
          whose fix is\nmerged upstream on `unmaintained/2024.1`.\n\n- https://osism.tech/docs/appendix/security/ossa-2026-032/\n-
          https://bugs.launchpad.net/neutron/+bug/2152113\n- https://review.opendev.org/c/openstack/neutron/+/999186\n\nCounting
          only commits that touch runtime code (`neutron/` excluding\n`neutron/tests/`),
          14 neutron fixes are missing from published 2024.1 images\nbeyond the two
          OSISM carries downstream. Among them a second security fix\n(`b0411e51be`,
          PF GET/PUT parent floating IP validation \u2014 backported\ndownstream for
          2024.2 but never for 2024.1), an OVN security-group rule that\ncan silently
          fail to apply (`37553716ea`), and a data-loss bug\n(`4f27134e92`). Every
          other 2024.1 project is frozen the same way; keystone\nis 12 commits behind,
          nova and cinder at least 19 and 4.\n\n## Change\n\nPoint the 21 `openstack_projects`
          refs at `unmaintained-2024.1`, which opendev\ndoes keep current. `gnocchi`
          stays on `stable/4.6` \u2014 it follows its own branch\nnaming and is unaffected.\n\n##
          Verification\n\n- All 21 projects plus `requirements` were confirmed to
          have an\n  `unmaintained-2024.1` artifact (HTTP 200 each). This matters
          because\n  `003-patch.sh` runs `wget ... || exit 2`, so a single missing
          artifact\n  would break the build.\n- `templates/<version>/kolla-build.conf.j2`
          interpolates the ref straight into\n  `location = tarballs/{{ project.repository
          }}-{{ project.version }}.tar.gz`,\n  so the new value resolves to `<project>-unmaintained-2024.1.tar.gz`.\n-
          The post-change patch set was applied against the unmaintained tarballs
          the\n  way `003-patch.sh` does it (cumulative, `sort` order): keystone 4/4,
          nova\n  1/1, cinder 1/1, neutron-dynamic-routing 1/1, neutron none remaining
          \u2014 all\n  apply.\n- `neutron-unmaintained-2024.1.tar.gz` was extracted
          and confirmed to contain\n  the ownership check.\n\n## Merge order\n\nThere
          is no `gate` pipeline, so the two PRs cannot be co-merged and one order\nhas
          to be chosen.\n\n| Order | Effect in the window between merges |\n|---|---|\n|
          **This PR first** | New refs while the nine now-upstream patches are still
          present \u2192 `003-patch.sh` fails on an already-applied patch. Loud, and
          nothing bad ships. A red `periodic-midnight` in between is expected. |\n|
          Companion first | Patches removed while refs are still frozen \u2192 builds
          succeed and **silently drop nine security fixes** from published 2024.1
          images. |\n\n## Notes\n\n- No precedent: no `latest/openstack-*.yml` has
          previously had its\n  `openstack_projects` refs moved off `stable-<version>`.
          2024.2 stays on a\n  frozen `stable-2024.2` tarball plus downstream patches,
          which is forced\n  there \u2014 it is EOL and has no `unmaintained` branch.
          2024.1 still has one,\n  which is what makes this possible.\n- Limited lifespan:
          when 2024.1 reaches EOL its branch is deleted and the\n  build falls back
          to a frozen tarball plus patches, as 2024.2 is now. This\n  buys a maintained
          window; it does not remove the pattern. A build-time\n  staleness check
          would.\n- `UpgradeImpact`: rolling `:2024.1` images advance roughly nine
          months of\n  upstream commits across 21 projects. That is the intent, but
          it is a larger\n  delta than a normal rebuild.\n\n## Companion PR\n\n- osism/container-images-kolla#PLACEHOLDER\n\n\U0001F916
          Generated with [Claude Code](https://claude.com/claude-code)"
        change_url: https://github.com/osism/release/pull/2640
        commit_id: 2bd5ee6145f42d3997a584fe1603e182af464619
        patchset: 2bd5ee6145f42d3997a584fe1603e182af464619
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          name: osism/release
          short_name: release
          src_dir: src/github.com/osism/release
        topic: null
      job: python-black
      jobtags: []
      max_attempts: 3
      message: bGF0ZXN0OiB1c2UgdW5tYWludGFpbmVkIDIwMjQuMSBzb3VyY2VzCgo+IFshSU1QT1JUQU5UXQo+IENyb3NzLXJlcG8gY2hhbmdlLiAqKk1lcmdlIHRoaXMgUFIgZmlyc3QqKiwgYmVmb3JlIHRoZSBjb21wYW5pb24gY2hhbmdlIGluCj4gYGNvbnRhaW5lci1pbWFnZXMta29sbGFgLiBSYXRpb25hbGUgaW4gW01lcmdlIG9yZGVyXSgjbWVyZ2Utb3JkZXIpIGJlbG93IOKAlAo+IHRoZSByZXZlcnNlIG9yZGVyIGJ1aWxkcyBzdWNjZXNzZnVsbHkgd2hpbGUgc2lsZW50bHkgZHJvcHBpbmcgbmluZSBmaXhlcy4KCk9wZW5TdGFjayAyMDI0LjEgKENhcmFjYWwpIGlzIGluIHRoZSB1bm1haW50YWluZWQgcGhhc2UgdXBzdHJlYW06IHRoZQpgc3RhYmxlLzIwMjQuMWAgYnJhbmNoZXMgd2VyZSByZW5hbWVkIHRvIGB1bm1haW50YWluZWQvMjAyNC4xYC4gVGhlCnBlci1wcm9qZWN0IHJlZnMgaW4gYGxhdGVzdC9vcGVuc3RhY2stMjAyNC4xLnltbGAgc3RpbGwgcG9pbnRlZCBhdApgc3RhYmxlLTIwMjQuMWAsIHdoaWNoIGlzIHRoZSBuYW1lIG9mIHRoZSBicmFuY2ggYXJ0aWZhY3Qgb24KYHRhcmJhbGxzLm9wZW5kZXYub3JnYCB0aGF0IHRoZSAyMDI0LjEgY29udGFpbmVyIGltYWdlcyBhcmUgYnVpbHQgZnJvbS4KClRob3NlIGFydGlmYWN0cyBzdGlsbCByZXNvbHZlLCBidXQgb3BlbmRldiBzdG9wcGVkIHJlZ2VuZXJhdGluZyB0aGVtIGF0IHRoZQpyZW5hbWUsIHNvIHRoZXkgYXJlIGZyb3plbiBhdCB0aGUgZmluYWwgYHN0YWJsZS8yMDI0LjFgIHN0YXRlLiBOb3RoaW5nIGZhaWxzIOKAlAp0aGUgZnJvemVuIHRhcmJhbGwgaXMgc3RpbGwgc2VydmVkLCBgd2dldGAgc3VjY2VlZHMgYW5kIGBrb2xsYS1idWlsZGAgcmVwb3J0cwpubyBlcnJvciDigJQgc28gdGhlIDIwMjQuMSBpbWFnZXMgaGF2ZSBzaWxlbnRseSBiZWVuIGJ1aWx0IGZyb20gU2VwL09jdCAyMDI1CnNvdXJjZXMgZXZlciBzaW5jZS4KCiMjIEltcGFjdAoKTm8gdXBzdHJlYW0gZml4IG1lcmdlZCB0byBgdW5tYWludGFpbmVkLzIwMjQuMWAgY2FuIHJlYWNoIGEgMjAyNC4xIGltYWdlLgoKQ29uZmlybWVkIGJ5IGluc3BlY3RpbmcgdGhlIHB1Ymxpc2hlZCBpbWFnZSByYXRoZXIgdGhhbiBpdHMgbWV0YWRhdGE6IHRoZQpga29sbGEvbmV1dHJvbi1zZXJ2ZXI6MjAyNC4xYCBpbWFnZSByZWJ1aWx0IG9uIDIwMjYtMDctMzAgc2hpcHMKYG5ldXRyb24tMjQuMi4yLmRldjIzYCwgYW5kIGl0cyBgb25ib2FyZF9uZXR3b3JrX3N1Ym5ldHNgIHN0aWxsIGhhcyBubwpvd25lcnNoaXAgY2hlY2sg4oCUIGl0IHJlbWFpbnMgdnVsbmVyYWJsZSB0byBDVkUtMjAyNi01NTcwNywgd2hvc2UgZml4IGlzCm1lcmdlZCB1cHN0cmVhbSBvbiBgdW5tYWludGFpbmVkLzIwMjQuMWAuCgotIGh0dHBzOi8vb3Npc20udGVjaC9kb2NzL2FwcGVuZGl4L3NlY3VyaXR5L29zc2EtMjAyNi0wMzIvCi0gaHR0cHM6Ly9idWdzLmxhdW5jaHBhZC5uZXQvbmV1dHJvbi8rYnVnLzIxNTIxMTMKLSBodHRwczovL3Jldmlldy5vcGVuZGV2Lm9yZy9jL29wZW5zdGFjay9uZXV0cm9uLysvOTk5MTg2CgpDb3VudGluZyBvbmx5IGNvbW1pdHMgdGhhdCB0b3VjaCBydW50aW1lIGNvZGUgKGBuZXV0cm9uL2AgZXhjbHVkaW5nCmBuZXV0cm9uL3Rlc3RzL2ApLCAxNCBuZXV0cm9uIGZpeGVzIGFyZSBtaXNzaW5nIGZyb20gcHVibGlzaGVkIDIwMjQuMSBpbWFnZXMKYmV5b25kIHRoZSB0d28gT1NJU00gY2FycmllcyBkb3duc3RyZWFtLiBBbW9uZyB0aGVtIGEgc2Vjb25kIHNlY3VyaXR5IGZpeAooYGIwNDExZTUxYmVgLCBQRiBHRVQvUFVUIHBhcmVudCBmbG9hdGluZyBJUCB2YWxpZGF0aW9uIOKAlCBiYWNrcG9ydGVkCmRvd25zdHJlYW0gZm9yIDIwMjQuMiBidXQgbmV2ZXIgZm9yIDIwMjQuMSksIGFuIE9WTiBzZWN1cml0eS1ncm91cCBydWxlIHRoYXQKY2FuIHNpbGVudGx5IGZhaWwgdG8gYXBwbHkgKGAzNzU1MzcxNmVhYCksIGFuZCBhIGRhdGEtbG9zcyBidWcKKGA0ZjI3MTM0ZTkyYCkuIEV2ZXJ5IG90aGVyIDIwMjQuMSBwcm9qZWN0IGlzIGZyb3plbiB0aGUgc2FtZSB3YXk7IGtleXN0b25lCmlzIDEyIGNvbW1pdHMgYmVoaW5kLCBub3ZhIGFuZCBjaW5kZXIgYXQgbGVhc3QgMTkgYW5kIDQuCgojIyBDaGFuZ2UKClBvaW50IHRoZSAyMSBgb3BlbnN0YWNrX3Byb2plY3RzYCByZWZzIGF0IGB1bm1haW50YWluZWQtMjAyNC4xYCwgd2hpY2ggb3BlbmRldgpkb2VzIGtlZXAgY3VycmVudC4gYGdub2NjaGlgIHN0YXlzIG9uIGBzdGFibGUvNC42YCDigJQgaXQgZm9sbG93cyBpdHMgb3duIGJyYW5jaApuYW1pbmcgYW5kIGlzIHVuYWZmZWN0ZWQuCgojIyBWZXJpZmljYXRpb24KCi0gQWxsIDIxIHByb2plY3RzIHBsdXMgYHJlcXVpcmVtZW50c2Agd2VyZSBjb25maXJtZWQgdG8gaGF2ZSBhbgogIGB1bm1haW50YWluZWQtMjAyNC4xYCBhcnRpZmFjdCAoSFRUUCAyMDAgZWFjaCkuIFRoaXMgbWF0dGVycyBiZWNhdXNlCiAgYDAwMy1wYXRjaC5zaGAgcnVucyBgd2dldCAuLi4gfHwgZXhpdCAyYCwgc28gYSBzaW5nbGUgbWlzc2luZyBhcnRpZmFjdAogIHdvdWxkIGJyZWFrIHRoZSBidWlsZC4KLSBgdGVtcGxhdGVzLzx2ZXJzaW9uPi9rb2xsYS1idWlsZC5jb25mLmoyYCBpbnRlcnBvbGF0ZXMgdGhlIHJlZiBzdHJhaWdodCBpbnRvCiAgYGxvY2F0aW9uID0gdGFyYmFsbHMve3sgcHJvamVjdC5yZXBvc2l0b3J5IH19LXt7IHByb2plY3QudmVyc2lvbiB9fS50YXIuZ3pgLAogIHNvIHRoZSBuZXcgdmFsdWUgcmVzb2x2ZXMgdG8gYDxwcm9qZWN0Pi11bm1haW50YWluZWQtMjAyNC4xLnRhci5nemAuCi0gVGhlIHBvc3QtY2hhbmdlIHBhdGNoIHNldCB3YXMgYXBwbGllZCBhZ2FpbnN0IHRoZSB1bm1haW50YWluZWQgdGFyYmFsbHMgdGhlCiAgd2F5IGAwMDMtcGF0Y2guc2hgIGRvZXMgaXQgKGN1bXVsYXRpdmUsIGBzb3J0YCBvcmRlcik6IGtleXN0b25lIDQvNCwgbm92YQogIDEvMSwgY2luZGVyIDEvMSwgbmV1dHJvbi1keW5hbWljLXJvdXRpbmcgMS8xLCBuZXV0cm9uIG5vbmUgcmVtYWluaW5nIOKAlCBhbGwKICBhcHBseS4KLSBgbmV1dHJvbi11bm1haW50YWluZWQtMjAyNC4xLnRhci5nemAgd2FzIGV4dHJhY3RlZCBhbmQgY29uZmlybWVkIHRvIGNvbnRhaW4KICB0aGUgb3duZXJzaGlwIGNoZWNrLgoKIyMgTWVyZ2Ugb3JkZXIKClRoZXJlIGlzIG5vIGBnYXRlYCBwaXBlbGluZSwgc28gdGhlIHR3byBQUnMgY2Fubm90IGJlIGNvLW1lcmdlZCBhbmQgb25lIG9yZGVyCmhhcyB0byBiZSBjaG9zZW4uCgp8IE9yZGVyIHwgRWZmZWN0IGluIHRoZSB3aW5kb3cgYmV0d2VlbiBtZXJnZXMgfAp8LS0tfC0tLXwKfCAqKlRoaXMgUFIgZmlyc3QqKiB8IE5ldyByZWZzIHdoaWxlIHRoZSBuaW5lIG5vdy11cHN0cmVhbSBwYXRjaGVzIGFyZSBzdGlsbCBwcmVzZW50IOKGkiBgMDAzLXBhdGNoLnNoYCBmYWlscyBvbiBhbiBhbHJlYWR5LWFwcGxpZWQgcGF0Y2guIExvdWQsIGFuZCBub3RoaW5nIGJhZCBzaGlwcy4gQSByZWQgYHBlcmlvZGljLW1pZG5pZ2h0YCBpbiBiZXR3ZWVuIGlzIGV4cGVjdGVkLiB8CnwgQ29tcGFuaW9uIGZpcnN0IHwgUGF0Y2hlcyByZW1vdmVkIHdoaWxlIHJlZnMgYXJlIHN0aWxsIGZyb3plbiDihpIgYnVpbGRzIHN1Y2NlZWQgYW5kICoqc2lsZW50bHkgZHJvcCBuaW5lIHNlY3VyaXR5IGZpeGVzKiogZnJvbSBwdWJsaXNoZWQgMjAyNC4xIGltYWdlcy4gfAoKIyMgTm90ZXMKCi0gTm8gcHJlY2VkZW50OiBubyBgbGF0ZXN0L29wZW5zdGFjay0qLnltbGAgaGFzIHByZXZpb3VzbHkgaGFkIGl0cwogIGBvcGVuc3RhY2tfcHJvamVjdHNgIHJlZnMgbW92ZWQgb2ZmIGBzdGFibGUtPHZlcnNpb24+YC4gMjAyNC4yIHN0YXlzIG9uIGEKICBmcm96ZW4gYHN0YWJsZS0yMDI0LjJgIHRhcmJhbGwgcGx1cyBkb3duc3RyZWFtIHBhdGNoZXMsIHdoaWNoIGlzIGZvcmNlZAogIHRoZXJlIOKAlCBpdCBpcyBFT0wgYW5kIGhhcyBubyBgdW5tYWludGFpbmVkYCBicmFuY2guIDIwMjQuMSBzdGlsbCBoYXMgb25lLAogIHdoaWNoIGlzIHdoYXQgbWFrZXMgdGhpcyBwb3NzaWJsZS4KLSBMaW1pdGVkIGxpZmVzcGFuOiB3aGVuIDIwMjQuMSByZWFjaGVzIEVPTCBpdHMgYnJhbmNoIGlzIGRlbGV0ZWQgYW5kIHRoZQogIGJ1aWxkIGZhbGxzIGJhY2sgdG8gYSBmcm96ZW4gdGFyYmFsbCBwbHVzIHBhdGNoZXMsIGFzIDIwMjQuMiBpcyBub3cuIFRoaXMKICBidXlzIGEgbWFpbnRhaW5lZCB3aW5kb3c7IGl0IGRvZXMgbm90IHJlbW92ZSB0aGUgcGF0dGVybi4gQSBidWlsZC10aW1lCiAgc3RhbGVuZXNzIGNoZWNrIHdvdWxkLgotIGBVcGdyYWRlSW1wYWN0YDogcm9sbGluZyBgOjIwMjQuMWAgaW1hZ2VzIGFkdmFuY2Ugcm91Z2hseSBuaW5lIG1vbnRocyBvZgogIHVwc3RyZWFtIGNvbW1pdHMgYWNyb3NzIDIxIHByb2plY3RzLiBUaGF0IGlzIHRoZSBpbnRlbnQsIGJ1dCBpdCBpcyBhIGxhcmdlcgogIGRlbHRhIHRoYW4gYSBub3JtYWwgcmVidWlsZC4KCiMjIENvbXBhbmlvbiBQUgoKLSBvc2lzbS9jb250YWluZXItaW1hZ2VzLWtvbGxhI1BMQUNFSE9MREVSCgrwn6SWIEdlbmVyYXRlZCB3aXRoIFtDbGF1ZGUgQ29kZV0oaHR0cHM6Ly9jbGF1ZGUuY29tL2NsYXVkZS1jb2RlKQ==
      patchset: 2bd5ee6145f42d3997a584fe1603e182af464619
      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: dcb06ea8a3ad422cc9d98b376216617b2daa6a02
          untrusted/project_0/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: dcb06ea8a3ad422cc9d98b376216617b2daa6a02
          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/python-black/run.yml
          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/release
        name: osism/release
        short_name: release
        src_dir: src/github.com/osism/release
      projects:
        github.com/osism/release:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          checkout: main
          checkout_description: zuul branch
          commit: 3ce6b8005f0ad4005da54ee766481127dbd598ee
          name: osism/release
          required: false
          short_name: release
          src_dir: src/github.com/osism/release
      ref: refs/pull/2640/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
