all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    ubuntu-noble:
      ansible_connection: ssh
      ansible_host: 199.204.45.157
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      docker_version: 24.0.9
      molecule_scenario: docker
      nodepool:
        az: nova
        cloud: public
        external_id: cb15f4d4-dc88-49b8-ab42-6527a5582eb4
        host_id: c3960d6808d44d1eb7d41ff8f195b627bd14b6a9ca83ea7250fd5db8
        interface_ip: 199.204.45.157
        label: ubuntu-noble
        node_properties: {}
        private_ipv4: 199.204.45.157
        private_ipv6: null
        provider: yul1
        public_ipv4: 199.204.45.157
        public_ipv6: 2604:e100:1:0:f816:3eff:fee6:7530
        region: ca-ymq-1
        slot: null
      zuul_node:
        az: nova
        cloud: public
        external_id: cb15f4d4-dc88-49b8-ab42-6527a5582eb4
        host_id: c3960d6808d44d1eb7d41ff8f195b627bd14b6a9ca83ea7250fd5db8
        interface_ip: 199.204.45.157
        label: ubuntu-noble
        node_properties: {}
        private_ipv4: 199.204.45.157
        private_ipv6: null
        provider: yul1
        public_ipv4: 199.204.45.157
        public_ipv6: 2604:e100:1:0:f816:3eff:fee6:7530
        region: ca-ymq-1
        slot: null
        uuid: null
  vars:
    docker_version: 24.0.9
    molecule_scenario: docker
    zuul:
      _inheritance_path:
      - '<Job base explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/zuul-config/zuul.d/jobs.yaml@main#1>'
      - '<Job molecule explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/zuul-jobs/zuul.d/ansible-jobs.yaml@main#1>'
      - '<Job ansible-collection-containers-molecule explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/ansible-collection-containers/.zuul.yaml@main#1>'
      - '<Job ansible-collection-containers-molecule-docker explicit: None implied:
        {MatchAny:{ImpliedBranchMatcher:main}} source: vexxhost/ansible-collection-containers/.zuul.yaml@main#39>'
      - '<Job ansible-collection-containers-molecule-docker-ubuntu-noble explicit:
        None implied: {MatchAny:{ImpliedBranchMatcher:main}} source: vexxhost/ansible-collection-containers/.zuul.yaml@main#66>'
      - '<Job ansible-collection-containers-molecule-docker-ubuntu-noble explicit:
        None implied: None source: vexxhost/ansible-collection-containers/.zuul.yaml@main#136>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: 0d11ddd0d97246cf88dad74e6fdd597b
      build_refs:
      - branch: main
        change: '123'
        change_message: "fix(containerd): temporarily exclude broken containerd 1.7.31
          on focal\n\n## Problem\n\n`ansible-collection-containers-molecule-containerd-ubuntu-focal`
          has been failing on every PR since #109 merged (2025-04-18), with 62/96
          critest cases failing during container creation:\n\n```\nAppArmor parser
          error for /tmp/cri-containerd.apparmor.dXXX at line 2:\nCould not open 'abi/3.0':
          No such file or directory\n```\n\n## Root cause\n\ncontainerd **1.7.31**
          changed [`contrib/apparmor/template.go`](https://github.com/containerd/containerd/blob/v1.7.31/contrib/apparmor/template.go#L43)
          to **unconditionally** emit `abi <abi/3.0>,` as line 2 of the default container
          AppArmor profile.\n\nPreviously (\u2264 1.7.30) this line was only emitted
          when `macroExists(\"abi/3.0\")` returned true (i.e. when `/etc/apparmor.d/abi/3.0`
          was present).\n\nUbuntu 20.04 (focal) ships AppArmor **2.13.x**, which does
          not understand the `abi <...>,` directive and aborts profile load. Every
          container creation on focal then fails because containerd cannot apply its
          default profile.\n\nPR #109 (`chore(deps): update containerd`) bumped `containerd_latest_v1`
          to 1.7.31, silently breaking focal.\n\n## Fix (temporary)\n\nThis is a **temporary
          workaround**, not a permanent pin. The upstream regression has already been
          fixed and backported to `release/1.7`:\n\n- containerd/containerd#13268
          \u2014 fix on `main`\n- containerd/containerd#13273 \u2014 backport to `release/1.7`
          (will ship in 1.7.32)\n\nSo as soon as 1.7.32 is released and added to `containerd_archive_checksums`,
          focal can go back to using the latest 1.7.x without any further action.\n\nTo
          make that automatic, this PR adds a `containerd_focal_excluded_versions`
          list (currently `[\"1.7.31\"]`) and selects the latest 1.7.x that is **not**
          in it as `containerd_focal_version`. Today that resolves to 1.7.30; once
          1.7.32 lands it will resolve to 1.7.32 with no code change required, and
          the exclusion entry can simply be dropped.\n\nNoble and other distros continue
          to use `containerd_latest` (currently 2.x) and are unaffected.\n\n## Note
          on already-released versions\n\nv1.6.6 of this collection has already been
          cut with the broken default (1.7.31 selected on focal), so we operate under
          the assumption that it has been deployed in places. We deliberately do **not**
          roll anything back; existing focal hosts that landed on 1.7.31 will self-heal
          on their next `containerd` role run once 1.7.32 ships (or sooner, by overriding
          `containerd_focal_excluded_versions` locally).\n\n## Alternatives considered\n\n1.
          **Drop focal from CI** \u2014 focal is still supported by the role; out
          of scope for a CI fix.\n2. **Hard-pin focal to 1.7.30** \u2014 would require
          a manual bump for every future 1.7.x release; reviewers wouldn't notice
          the staleness until something else broke.\n3. **Patch the AppArmor profile
          post-install** \u2014 fragile; containerd regenerates the profile on each
          container start.\n\n## Verification\n\nAfter this PR, `containerd-ubuntu-focal`
          should go green. `containerd-ubuntu-noble` is unaffected (uses `containerd_latest`
          2.x).\n\nRefs: #122 (where this regression was first investigated).\n"
        change_url: https://github.com/vexxhost/ansible-collection-containers/pull/123
        commit_id: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
        patchset: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/ansible-collection-containers
          name: vexxhost/ansible-collection-containers
          short_name: ansible-collection-containers
          src_dir: src/github.com/vexxhost/ansible-collection-containers
        src_dir: src/github.com/vexxhost/ansible-collection-containers
        topic: null
      buildset: f0a383f4b88c4db39de64c6c38c3fd2a
      buildset_refs:
      - branch: main
        change: '123'
        change_message: "fix(containerd): temporarily exclude broken containerd 1.7.31
          on focal\n\n## Problem\n\n`ansible-collection-containers-molecule-containerd-ubuntu-focal`
          has been failing on every PR since #109 merged (2025-04-18), with 62/96
          critest cases failing during container creation:\n\n```\nAppArmor parser
          error for /tmp/cri-containerd.apparmor.dXXX at line 2:\nCould not open 'abi/3.0':
          No such file or directory\n```\n\n## Root cause\n\ncontainerd **1.7.31**
          changed [`contrib/apparmor/template.go`](https://github.com/containerd/containerd/blob/v1.7.31/contrib/apparmor/template.go#L43)
          to **unconditionally** emit `abi <abi/3.0>,` as line 2 of the default container
          AppArmor profile.\n\nPreviously (\u2264 1.7.30) this line was only emitted
          when `macroExists(\"abi/3.0\")` returned true (i.e. when `/etc/apparmor.d/abi/3.0`
          was present).\n\nUbuntu 20.04 (focal) ships AppArmor **2.13.x**, which does
          not understand the `abi <...>,` directive and aborts profile load. Every
          container creation on focal then fails because containerd cannot apply its
          default profile.\n\nPR #109 (`chore(deps): update containerd`) bumped `containerd_latest_v1`
          to 1.7.31, silently breaking focal.\n\n## Fix (temporary)\n\nThis is a **temporary
          workaround**, not a permanent pin. The upstream regression has already been
          fixed and backported to `release/1.7`:\n\n- containerd/containerd#13268
          \u2014 fix on `main`\n- containerd/containerd#13273 \u2014 backport to `release/1.7`
          (will ship in 1.7.32)\n\nSo as soon as 1.7.32 is released and added to `containerd_archive_checksums`,
          focal can go back to using the latest 1.7.x without any further action.\n\nTo
          make that automatic, this PR adds a `containerd_focal_excluded_versions`
          list (currently `[\"1.7.31\"]`) and selects the latest 1.7.x that is **not**
          in it as `containerd_focal_version`. Today that resolves to 1.7.30; once
          1.7.32 lands it will resolve to 1.7.32 with no code change required, and
          the exclusion entry can simply be dropped.\n\nNoble and other distros continue
          to use `containerd_latest` (currently 2.x) and are unaffected.\n\n## Note
          on already-released versions\n\nv1.6.6 of this collection has already been
          cut with the broken default (1.7.31 selected on focal), so we operate under
          the assumption that it has been deployed in places. We deliberately do **not**
          roll anything back; existing focal hosts that landed on 1.7.31 will self-heal
          on their next `containerd` role run once 1.7.32 ships (or sooner, by overriding
          `containerd_focal_excluded_versions` locally).\n\n## Alternatives considered\n\n1.
          **Drop focal from CI** \u2014 focal is still supported by the role; out
          of scope for a CI fix.\n2. **Hard-pin focal to 1.7.30** \u2014 would require
          a manual bump for every future 1.7.x release; reviewers wouldn't notice
          the staleness until something else broke.\n3. **Patch the AppArmor profile
          post-install** \u2014 fragile; containerd regenerates the profile on each
          container start.\n\n## Verification\n\nAfter this PR, `containerd-ubuntu-focal`
          should go green. `containerd-ubuntu-noble` is unaffected (uses `containerd_latest`
          2.x).\n\nRefs: #122 (where this regression was first investigated).\n"
        change_url: https://github.com/vexxhost/ansible-collection-containers/pull/123
        commit_id: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
        patchset: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/ansible-collection-containers
          name: vexxhost/ansible-collection-containers
          short_name: ansible-collection-containers
          src_dir: src/github.com/vexxhost/ansible-collection-containers
        src_dir: src/github.com/vexxhost/ansible-collection-containers
        topic: null
      change: '123'
      change_message: "fix(containerd): temporarily exclude broken containerd 1.7.31
        on focal\n\n## Problem\n\n`ansible-collection-containers-molecule-containerd-ubuntu-focal`
        has been failing on every PR since #109 merged (2025-04-18), with 62/96 critest
        cases failing during container creation:\n\n```\nAppArmor parser error for
        /tmp/cri-containerd.apparmor.dXXX at line 2:\nCould not open 'abi/3.0': No
        such file or directory\n```\n\n## Root cause\n\ncontainerd **1.7.31** changed
        [`contrib/apparmor/template.go`](https://github.com/containerd/containerd/blob/v1.7.31/contrib/apparmor/template.go#L43)
        to **unconditionally** emit `abi <abi/3.0>,` as line 2 of the default container
        AppArmor profile.\n\nPreviously (\u2264 1.7.30) this line was only emitted
        when `macroExists(\"abi/3.0\")` returned true (i.e. when `/etc/apparmor.d/abi/3.0`
        was present).\n\nUbuntu 20.04 (focal) ships AppArmor **2.13.x**, which does
        not understand the `abi <...>,` directive and aborts profile load. Every container
        creation on focal then fails because containerd cannot apply its default profile.\n\nPR
        #109 (`chore(deps): update containerd`) bumped `containerd_latest_v1` to 1.7.31,
        silently breaking focal.\n\n## Fix (temporary)\n\nThis is a **temporary workaround**,
        not a permanent pin. The upstream regression has already been fixed and backported
        to `release/1.7`:\n\n- containerd/containerd#13268 \u2014 fix on `main`\n-
        containerd/containerd#13273 \u2014 backport to `release/1.7` (will ship in
        1.7.32)\n\nSo as soon as 1.7.32 is released and added to `containerd_archive_checksums`,
        focal can go back to using the latest 1.7.x without any further action.\n\nTo
        make that automatic, this PR adds a `containerd_focal_excluded_versions` list
        (currently `[\"1.7.31\"]`) and selects the latest 1.7.x that is **not** in
        it as `containerd_focal_version`. Today that resolves to 1.7.30; once 1.7.32
        lands it will resolve to 1.7.32 with no code change required, and the exclusion
        entry can simply be dropped.\n\nNoble and other distros continue to use `containerd_latest`
        (currently 2.x) and are unaffected.\n\n## Note on already-released versions\n\nv1.6.6
        of this collection has already been cut with the broken default (1.7.31 selected
        on focal), so we operate under the assumption that it has been deployed in
        places. We deliberately do **not** roll anything back; existing focal hosts
        that landed on 1.7.31 will self-heal on their next `containerd` role run once
        1.7.32 ships (or sooner, by overriding `containerd_focal_excluded_versions`
        locally).\n\n## Alternatives considered\n\n1. **Drop focal from CI** \u2014
        focal is still supported by the role; out of scope for a CI fix.\n2. **Hard-pin
        focal to 1.7.30** \u2014 would require a manual bump for every future 1.7.x
        release; reviewers wouldn't notice the staleness until something else broke.\n3.
        **Patch the AppArmor profile post-install** \u2014 fragile; containerd regenerates
        the profile on each container start.\n\n## Verification\n\nAfter this PR,
        `containerd-ubuntu-focal` should go green. `containerd-ubuntu-noble` is unaffected
        (uses `containerd_latest` 2.x).\n\nRefs: #122 (where this regression was first
        investigated).\n"
      change_url: https://github.com/vexxhost/ansible-collection-containers/pull/123
      child_jobs: []
      commit_id: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
      event_id: dc61fe80-42cb-11f1-988f-93e08c803a2a
      executor:
        hostname: 0a8996d2b663
        inventory_file: /var/lib/zuul/builds/0d11ddd0d97246cf88dad74e6fdd597b/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/0d11ddd0d97246cf88dad74e6fdd597b/work/logs
        result_data_file: /var/lib/zuul/builds/0d11ddd0d97246cf88dad74e6fdd597b/work/results.json
        src_root: /var/lib/zuul/builds/0d11ddd0d97246cf88dad74e6fdd597b/work/src
        work_root: /var/lib/zuul/builds/0d11ddd0d97246cf88dad74e6fdd597b/work
      include_vars: []
      items:
      - branch: main
        change: '123'
        change_message: "fix(containerd): temporarily exclude broken containerd 1.7.31
          on focal\n\n## Problem\n\n`ansible-collection-containers-molecule-containerd-ubuntu-focal`
          has been failing on every PR since #109 merged (2025-04-18), with 62/96
          critest cases failing during container creation:\n\n```\nAppArmor parser
          error for /tmp/cri-containerd.apparmor.dXXX at line 2:\nCould not open 'abi/3.0':
          No such file or directory\n```\n\n## Root cause\n\ncontainerd **1.7.31**
          changed [`contrib/apparmor/template.go`](https://github.com/containerd/containerd/blob/v1.7.31/contrib/apparmor/template.go#L43)
          to **unconditionally** emit `abi <abi/3.0>,` as line 2 of the default container
          AppArmor profile.\n\nPreviously (\u2264 1.7.30) this line was only emitted
          when `macroExists(\"abi/3.0\")` returned true (i.e. when `/etc/apparmor.d/abi/3.0`
          was present).\n\nUbuntu 20.04 (focal) ships AppArmor **2.13.x**, which does
          not understand the `abi <...>,` directive and aborts profile load. Every
          container creation on focal then fails because containerd cannot apply its
          default profile.\n\nPR #109 (`chore(deps): update containerd`) bumped `containerd_latest_v1`
          to 1.7.31, silently breaking focal.\n\n## Fix (temporary)\n\nThis is a **temporary
          workaround**, not a permanent pin. The upstream regression has already been
          fixed and backported to `release/1.7`:\n\n- containerd/containerd#13268
          \u2014 fix on `main`\n- containerd/containerd#13273 \u2014 backport to `release/1.7`
          (will ship in 1.7.32)\n\nSo as soon as 1.7.32 is released and added to `containerd_archive_checksums`,
          focal can go back to using the latest 1.7.x without any further action.\n\nTo
          make that automatic, this PR adds a `containerd_focal_excluded_versions`
          list (currently `[\"1.7.31\"]`) and selects the latest 1.7.x that is **not**
          in it as `containerd_focal_version`. Today that resolves to 1.7.30; once
          1.7.32 lands it will resolve to 1.7.32 with no code change required, and
          the exclusion entry can simply be dropped.\n\nNoble and other distros continue
          to use `containerd_latest` (currently 2.x) and are unaffected.\n\n## Note
          on already-released versions\n\nv1.6.6 of this collection has already been
          cut with the broken default (1.7.31 selected on focal), so we operate under
          the assumption that it has been deployed in places. We deliberately do **not**
          roll anything back; existing focal hosts that landed on 1.7.31 will self-heal
          on their next `containerd` role run once 1.7.32 ships (or sooner, by overriding
          `containerd_focal_excluded_versions` locally).\n\n## Alternatives considered\n\n1.
          **Drop focal from CI** \u2014 focal is still supported by the role; out
          of scope for a CI fix.\n2. **Hard-pin focal to 1.7.30** \u2014 would require
          a manual bump for every future 1.7.x release; reviewers wouldn't notice
          the staleness until something else broke.\n3. **Patch the AppArmor profile
          post-install** \u2014 fragile; containerd regenerates the profile on each
          container start.\n\n## Verification\n\nAfter this PR, `containerd-ubuntu-focal`
          should go green. `containerd-ubuntu-noble` is unaffected (uses `containerd_latest`
          2.x).\n\nRefs: #122 (where this regression was first investigated).\n"
        change_url: https://github.com/vexxhost/ansible-collection-containers/pull/123
        commit_id: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
        patchset: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/ansible-collection-containers
          name: vexxhost/ansible-collection-containers
          short_name: ansible-collection-containers
          src_dir: src/github.com/vexxhost/ansible-collection-containers
        topic: null
      job: ansible-collection-containers-molecule-docker-ubuntu-noble
      jobtags: []
      max_attempts: 3
      message: Zml4KGNvbnRhaW5lcmQpOiB0ZW1wb3JhcmlseSBleGNsdWRlIGJyb2tlbiBjb250YWluZXJkIDEuNy4zMSBvbiBmb2NhbAoKIyMgUHJvYmxlbQoKYGFuc2libGUtY29sbGVjdGlvbi1jb250YWluZXJzLW1vbGVjdWxlLWNvbnRhaW5lcmQtdWJ1bnR1LWZvY2FsYCBoYXMgYmVlbiBmYWlsaW5nIG9uIGV2ZXJ5IFBSIHNpbmNlICMxMDkgbWVyZ2VkICgyMDI1LTA0LTE4KSwgd2l0aCA2Mi85NiBjcml0ZXN0IGNhc2VzIGZhaWxpbmcgZHVyaW5nIGNvbnRhaW5lciBjcmVhdGlvbjoKCmBgYApBcHBBcm1vciBwYXJzZXIgZXJyb3IgZm9yIC90bXAvY3JpLWNvbnRhaW5lcmQuYXBwYXJtb3IuZFhYWCBhdCBsaW5lIDI6CkNvdWxkIG5vdCBvcGVuICdhYmkvMy4wJzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpgYGAKCiMjIFJvb3QgY2F1c2UKCmNvbnRhaW5lcmQgKioxLjcuMzEqKiBjaGFuZ2VkIFtgY29udHJpYi9hcHBhcm1vci90ZW1wbGF0ZS5nb2BdKGh0dHBzOi8vZ2l0aHViLmNvbS9jb250YWluZXJkL2NvbnRhaW5lcmQvYmxvYi92MS43LjMxL2NvbnRyaWIvYXBwYXJtb3IvdGVtcGxhdGUuZ28jTDQzKSB0byAqKnVuY29uZGl0aW9uYWxseSoqIGVtaXQgYGFiaSA8YWJpLzMuMD4sYCBhcyBsaW5lIDIgb2YgdGhlIGRlZmF1bHQgY29udGFpbmVyIEFwcEFybW9yIHByb2ZpbGUuCgpQcmV2aW91c2x5ICjiiaQgMS43LjMwKSB0aGlzIGxpbmUgd2FzIG9ubHkgZW1pdHRlZCB3aGVuIGBtYWNyb0V4aXN0cygiYWJpLzMuMCIpYCByZXR1cm5lZCB0cnVlIChpLmUuIHdoZW4gYC9ldGMvYXBwYXJtb3IuZC9hYmkvMy4wYCB3YXMgcHJlc2VudCkuCgpVYnVudHUgMjAuMDQgKGZvY2FsKSBzaGlwcyBBcHBBcm1vciAqKjIuMTMueCoqLCB3aGljaCBkb2VzIG5vdCB1bmRlcnN0YW5kIHRoZSBgYWJpIDwuLi4+LGAgZGlyZWN0aXZlIGFuZCBhYm9ydHMgcHJvZmlsZSBsb2FkLiBFdmVyeSBjb250YWluZXIgY3JlYXRpb24gb24gZm9jYWwgdGhlbiBmYWlscyBiZWNhdXNlIGNvbnRhaW5lcmQgY2Fubm90IGFwcGx5IGl0cyBkZWZhdWx0IHByb2ZpbGUuCgpQUiAjMTA5IChgY2hvcmUoZGVwcyk6IHVwZGF0ZSBjb250YWluZXJkYCkgYnVtcGVkIGBjb250YWluZXJkX2xhdGVzdF92MWAgdG8gMS43LjMxLCBzaWxlbnRseSBicmVha2luZyBmb2NhbC4KCiMjIEZpeCAodGVtcG9yYXJ5KQoKVGhpcyBpcyBhICoqdGVtcG9yYXJ5IHdvcmthcm91bmQqKiwgbm90IGEgcGVybWFuZW50IHBpbi4gVGhlIHVwc3RyZWFtIHJlZ3Jlc3Npb24gaGFzIGFscmVhZHkgYmVlbiBmaXhlZCBhbmQgYmFja3BvcnRlZCB0byBgcmVsZWFzZS8xLjdgOgoKLSBjb250YWluZXJkL2NvbnRhaW5lcmQjMTMyNjgg4oCUIGZpeCBvbiBgbWFpbmAKLSBjb250YWluZXJkL2NvbnRhaW5lcmQjMTMyNzMg4oCUIGJhY2twb3J0IHRvIGByZWxlYXNlLzEuN2AgKHdpbGwgc2hpcCBpbiAxLjcuMzIpCgpTbyBhcyBzb29uIGFzIDEuNy4zMiBpcyByZWxlYXNlZCBhbmQgYWRkZWQgdG8gYGNvbnRhaW5lcmRfYXJjaGl2ZV9jaGVja3N1bXNgLCBmb2NhbCBjYW4gZ28gYmFjayB0byB1c2luZyB0aGUgbGF0ZXN0IDEuNy54IHdpdGhvdXQgYW55IGZ1cnRoZXIgYWN0aW9uLgoKVG8gbWFrZSB0aGF0IGF1dG9tYXRpYywgdGhpcyBQUiBhZGRzIGEgYGNvbnRhaW5lcmRfZm9jYWxfZXhjbHVkZWRfdmVyc2lvbnNgIGxpc3QgKGN1cnJlbnRseSBgWyIxLjcuMzEiXWApIGFuZCBzZWxlY3RzIHRoZSBsYXRlc3QgMS43LnggdGhhdCBpcyAqKm5vdCoqIGluIGl0IGFzIGBjb250YWluZXJkX2ZvY2FsX3ZlcnNpb25gLiBUb2RheSB0aGF0IHJlc29sdmVzIHRvIDEuNy4zMDsgb25jZSAxLjcuMzIgbGFuZHMgaXQgd2lsbCByZXNvbHZlIHRvIDEuNy4zMiB3aXRoIG5vIGNvZGUgY2hhbmdlIHJlcXVpcmVkLCBhbmQgdGhlIGV4Y2x1c2lvbiBlbnRyeSBjYW4gc2ltcGx5IGJlIGRyb3BwZWQuCgpOb2JsZSBhbmQgb3RoZXIgZGlzdHJvcyBjb250aW51ZSB0byB1c2UgYGNvbnRhaW5lcmRfbGF0ZXN0YCAoY3VycmVudGx5IDIueCkgYW5kIGFyZSB1bmFmZmVjdGVkLgoKIyMgTm90ZSBvbiBhbHJlYWR5LXJlbGVhc2VkIHZlcnNpb25zCgp2MS42LjYgb2YgdGhpcyBjb2xsZWN0aW9uIGhhcyBhbHJlYWR5IGJlZW4gY3V0IHdpdGggdGhlIGJyb2tlbiBkZWZhdWx0ICgxLjcuMzEgc2VsZWN0ZWQgb24gZm9jYWwpLCBzbyB3ZSBvcGVyYXRlIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgaXQgaGFzIGJlZW4gZGVwbG95ZWQgaW4gcGxhY2VzLiBXZSBkZWxpYmVyYXRlbHkgZG8gKipub3QqKiByb2xsIGFueXRoaW5nIGJhY2s7IGV4aXN0aW5nIGZvY2FsIGhvc3RzIHRoYXQgbGFuZGVkIG9uIDEuNy4zMSB3aWxsIHNlbGYtaGVhbCBvbiB0aGVpciBuZXh0IGBjb250YWluZXJkYCByb2xlIHJ1biBvbmNlIDEuNy4zMiBzaGlwcyAob3Igc29vbmVyLCBieSBvdmVycmlkaW5nIGBjb250YWluZXJkX2ZvY2FsX2V4Y2x1ZGVkX3ZlcnNpb25zYCBsb2NhbGx5KS4KCiMjIEFsdGVybmF0aXZlcyBjb25zaWRlcmVkCgoxLiAqKkRyb3AgZm9jYWwgZnJvbSBDSSoqIOKAlCBmb2NhbCBpcyBzdGlsbCBzdXBwb3J0ZWQgYnkgdGhlIHJvbGU7IG91dCBvZiBzY29wZSBmb3IgYSBDSSBmaXguCjIuICoqSGFyZC1waW4gZm9jYWwgdG8gMS43LjMwKiog4oCUIHdvdWxkIHJlcXVpcmUgYSBtYW51YWwgYnVtcCBmb3IgZXZlcnkgZnV0dXJlIDEuNy54IHJlbGVhc2U7IHJldmlld2VycyB3b3VsZG4ndCBub3RpY2UgdGhlIHN0YWxlbmVzcyB1bnRpbCBzb21ldGhpbmcgZWxzZSBicm9rZS4KMy4gKipQYXRjaCB0aGUgQXBwQXJtb3IgcHJvZmlsZSBwb3N0LWluc3RhbGwqKiDigJQgZnJhZ2lsZTsgY29udGFpbmVyZCByZWdlbmVyYXRlcyB0aGUgcHJvZmlsZSBvbiBlYWNoIGNvbnRhaW5lciBzdGFydC4KCiMjIFZlcmlmaWNhdGlvbgoKQWZ0ZXIgdGhpcyBQUiwgYGNvbnRhaW5lcmQtdWJ1bnR1LWZvY2FsYCBzaG91bGQgZ28gZ3JlZW4uIGBjb250YWluZXJkLXVidW50dS1ub2JsZWAgaXMgdW5hZmZlY3RlZCAodXNlcyBgY29udGFpbmVyZF9sYXRlc3RgIDIueCkuCgpSZWZzOiAjMTIyICh3aGVyZSB0aGlzIHJlZ3Jlc3Npb24gd2FzIGZpcnN0IGludmVzdGlnYXRlZCkuCg==
      patchset: 705aa2ca9b9a3666a4ad263503c9b20ba238d3a8
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/vexxhost/zuul-config:
            canonical_name: github.com/vexxhost/zuul-config
            checkout: main
            commit: 298983cd1253e6833abdb49d87d912527e0e6597
          trusted/project_1/opendev.org/zuul/zuul-jobs:
            canonical_name: opendev.org/zuul/zuul-jobs
            checkout: master
            commit: 9f5c1d680d573485f0ccdb18d2184d4f1d446419
          trusted/project_2/github.com/vexxhost/zuul-jobs:
            canonical_name: github.com/vexxhost/zuul-jobs
            checkout: main
            commit: a6e68243e02ef030ce5e75f8b67630880c475f33
          untrusted/project_0/github.com/vexxhost/zuul-jobs:
            canonical_name: github.com/vexxhost/zuul-jobs
            checkout: main
            commit: a6e68243e02ef030ce5e75f8b67630880c475f33
          untrusted/project_1/github.com/vexxhost/zuul-config:
            canonical_name: github.com/vexxhost/zuul-config
            checkout: main
            commit: 298983cd1253e6833abdb49d87d912527e0e6597
          untrusted/project_2/opendev.org/zuul/zuul-jobs:
            canonical_name: opendev.org/zuul/zuul-jobs
            checkout: master
            commit: 9f5c1d680d573485f0ccdb18d2184d4f1d446419
        playbooks:
        - path: untrusted/project_0/github.com/vexxhost/zuul-jobs/playbooks/molecule/run.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/playbook_0/role_1/zuul-jobs
            link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs
            role_path: ansible/playbook_0/role_1/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/vexxhost/zuul-jobs
            role_path: ansible/playbook_0/role_2/zuul-jobs/roles
        post_playbooks:
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/post.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/post_playbook_0/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_0/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_0/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_0/role_2/zuul-jobs/roles
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/post-logs.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/post_playbook_1/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_1/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_1/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_1/role_2/zuul-jobs/roles
        pre_playbooks:
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/pre.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/pre_playbook_0/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_0/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/pre_playbook_0/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_0/role_2/zuul-jobs/roles
        - path: untrusted/project_0/github.com/vexxhost/zuul-jobs/playbooks/molecule/pre.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/pre_playbook_1/role_1/zuul-jobs
            link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_1/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/pre_playbook_1/role_2/zuul-jobs
            link_target: untrusted/project_0/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_1/role_2/zuul-jobs/roles
      post_review: false
      post_timeout: null
      pre_timeout: null
      project:
        canonical_hostname: github.com
        canonical_name: github.com/vexxhost/ansible-collection-containers
        name: vexxhost/ansible-collection-containers
        short_name: ansible-collection-containers
        src_dir: src/github.com/vexxhost/ansible-collection-containers
      projects:
        github.com/vexxhost/ansible-collection-containers:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/ansible-collection-containers
          checkout: main
          checkout_description: zuul branch
          commit: b34395c4b1f81761720aa9d5462919741605b1f7
          name: vexxhost/ansible-collection-containers
          required: false
          short_name: ansible-collection-containers
          src_dir: src/github.com/vexxhost/ansible-collection-containers
      ref: refs/pull/123/head
      resources: {}
      tenant: oss
      timeout: 1800
      topic: null
      voting: true
