all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:fe7b:8ba3
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: ffac6156-a730-457f-a000-ed84db192a8a
        host_id: de4c9765152b8ccf16bcbbf90e33fb083884dc744cc344501046bc88
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:fe7b:8ba3
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.0.108
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.193.63
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:fe7b:8ba3
        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-osism-test-setup explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/python-osism/.zuul.yaml@main#128>'
      - '<Job python-osism-test-setup explicit: None implied: None source: osism/python-osism/.zuul.yaml@main#138>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: 6a7570317c0a478da1a98299308d4d43
      build_refs:
      - branch: main
        change: '2275'
        change_message: "vault view: show plain content for non-encrypted files\n\nPreviously
          `osism vault view` invoked `ansible-vault view` directly,\r\nwhich exits
          with an error when the file is not vault-encrypted. Now\r\nthe command reads
          the file once, checks for the `$ANSIBLE_VAULT`\r\nheader, and either delegates
          to `ansible-vault view` or prints the\r\nplain content with a warning.\r\n\r\nMissing
          files and permission errors are surfaced with a clear log\r\nmessage and
          a non-zero exit code instead of silently falling through\r\nto the plain-content
          path.\r\n\r\nAdds unit tests for ``View.take_action`` covering the encrypted,\r\nplain-file,
          missing-file, and permission-denied code paths, plus\r\nparametrized coverage
          for multiple `$ANSIBLE_VAULT` header variants.\r\n\r\nCloses osism/issues#1362\r\n\r\nAI-assisted:
          Claude Code"
        change_url: https://github.com/osism/python-osism/pull/2275
        commit_id: d21a402bb31e5c7b7caf922b50c75f1583538cac
        patchset: d21a402bb31e5c7b7caf922b50c75f1583538cac
        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: b716bee0c02a48759656d49e6592be45
      buildset_refs:
      - branch: main
        change: '2275'
        change_message: "vault view: show plain content for non-encrypted files\n\nPreviously
          `osism vault view` invoked `ansible-vault view` directly,\r\nwhich exits
          with an error when the file is not vault-encrypted. Now\r\nthe command reads
          the file once, checks for the `$ANSIBLE_VAULT`\r\nheader, and either delegates
          to `ansible-vault view` or prints the\r\nplain content with a warning.\r\n\r\nMissing
          files and permission errors are surfaced with a clear log\r\nmessage and
          a non-zero exit code instead of silently falling through\r\nto the plain-content
          path.\r\n\r\nAdds unit tests for ``View.take_action`` covering the encrypted,\r\nplain-file,
          missing-file, and permission-denied code paths, plus\r\nparametrized coverage
          for multiple `$ANSIBLE_VAULT` header variants.\r\n\r\nCloses osism/issues#1362\r\n\r\nAI-assisted:
          Claude Code"
        change_url: https://github.com/osism/python-osism/pull/2275
        commit_id: d21a402bb31e5c7b7caf922b50c75f1583538cac
        patchset: d21a402bb31e5c7b7caf922b50c75f1583538cac
        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: '2275'
      change_message: "vault view: show plain content for non-encrypted files\n\nPreviously
        `osism vault view` invoked `ansible-vault view` directly,\r\nwhich exits with
        an error when the file is not vault-encrypted. Now\r\nthe command reads the
        file once, checks for the `$ANSIBLE_VAULT`\r\nheader, and either delegates
        to `ansible-vault view` or prints the\r\nplain content with a warning.\r\n\r\nMissing
        files and permission errors are surfaced with a clear log\r\nmessage and a
        non-zero exit code instead of silently falling through\r\nto the plain-content
        path.\r\n\r\nAdds unit tests for ``View.take_action`` covering the encrypted,\r\nplain-file,
        missing-file, and permission-denied code paths, plus\r\nparametrized coverage
        for multiple `$ANSIBLE_VAULT` header variants.\r\n\r\nCloses osism/issues#1362\r\n\r\nAI-assisted:
        Claude Code"
      change_url: https://github.com/osism/python-osism/pull/2275
      child_jobs: []
      commit_id: d21a402bb31e5c7b7caf922b50c75f1583538cac
      event_id: 4a9bfd00-52ae-11f1-9191-cd0731049eb9
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/6a7570317c0a478da1a98299308d4d43/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/6a7570317c0a478da1a98299308d4d43/work/logs
        result_data_file: /var/lib/zuul/builds/6a7570317c0a478da1a98299308d4d43/work/results.json
        src_root: /var/lib/zuul/builds/6a7570317c0a478da1a98299308d4d43/work/src
        work_root: /var/lib/zuul/builds/6a7570317c0a478da1a98299308d4d43/work
      include_vars: []
      items:
      - branch: main
        change: '2275'
        change_message: "vault view: show plain content for non-encrypted files\n\nPreviously
          `osism vault view` invoked `ansible-vault view` directly,\r\nwhich exits
          with an error when the file is not vault-encrypted. Now\r\nthe command reads
          the file once, checks for the `$ANSIBLE_VAULT`\r\nheader, and either delegates
          to `ansible-vault view` or prints the\r\nplain content with a warning.\r\n\r\nMissing
          files and permission errors are surfaced with a clear log\r\nmessage and
          a non-zero exit code instead of silently falling through\r\nto the plain-content
          path.\r\n\r\nAdds unit tests for ``View.take_action`` covering the encrypted,\r\nplain-file,
          missing-file, and permission-denied code paths, plus\r\nparametrized coverage
          for multiple `$ANSIBLE_VAULT` header variants.\r\n\r\nCloses osism/issues#1362\r\n\r\nAI-assisted:
          Claude Code"
        change_url: https://github.com/osism/python-osism/pull/2275
        commit_id: d21a402bb31e5c7b7caf922b50c75f1583538cac
        patchset: d21a402bb31e5c7b7caf922b50c75f1583538cac
        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: python-osism-test-setup
      jobtags: []
      max_attempts: 3
      message: dmF1bHQgdmlldzogc2hvdyBwbGFpbiBjb250ZW50IGZvciBub24tZW5jcnlwdGVkIGZpbGVzCgpQcmV2aW91c2x5IGBvc2lzbSB2YXVsdCB2aWV3YCBpbnZva2VkIGBhbnNpYmxlLXZhdWx0IHZpZXdgIGRpcmVjdGx5LA0Kd2hpY2ggZXhpdHMgd2l0aCBhbiBlcnJvciB3aGVuIHRoZSBmaWxlIGlzIG5vdCB2YXVsdC1lbmNyeXB0ZWQuIE5vdw0KdGhlIGNvbW1hbmQgcmVhZHMgdGhlIGZpbGUgb25jZSwgY2hlY2tzIGZvciB0aGUgYCRBTlNJQkxFX1ZBVUxUYA0KaGVhZGVyLCBhbmQgZWl0aGVyIGRlbGVnYXRlcyB0byBgYW5zaWJsZS12YXVsdCB2aWV3YCBvciBwcmludHMgdGhlDQpwbGFpbiBjb250ZW50IHdpdGggYSB3YXJuaW5nLg0KDQpNaXNzaW5nIGZpbGVzIGFuZCBwZXJtaXNzaW9uIGVycm9ycyBhcmUgc3VyZmFjZWQgd2l0aCBhIGNsZWFyIGxvZw0KbWVzc2FnZSBhbmQgYSBub24temVybyBleGl0IGNvZGUgaW5zdGVhZCBvZiBzaWxlbnRseSBmYWxsaW5nIHRocm91Z2gNCnRvIHRoZSBwbGFpbi1jb250ZW50IHBhdGguDQoNCkFkZHMgdW5pdCB0ZXN0cyBmb3IgYGBWaWV3LnRha2VfYWN0aW9uYGAgY292ZXJpbmcgdGhlIGVuY3J5cHRlZCwNCnBsYWluLWZpbGUsIG1pc3NpbmctZmlsZSwgYW5kIHBlcm1pc3Npb24tZGVuaWVkIGNvZGUgcGF0aHMsIHBsdXMNCnBhcmFtZXRyaXplZCBjb3ZlcmFnZSBmb3IgbXVsdGlwbGUgYCRBTlNJQkxFX1ZBVUxUYCBoZWFkZXIgdmFyaWFudHMuDQoNCkNsb3NlcyBvc2lzbS9pc3N1ZXMjMTM2Mg0KDQpBSS1hc3Npc3RlZDogQ2xhdWRlIENvZGU=
      patchset: d21a402bb31e5c7b7caf922b50c75f1583538cac
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: 58f24f5b479e15eb2d520850d27e3b1b6fc66aa6
          trusted/project_1/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 038dd8b856c62af4433c8477c5cb3d0480847059
          trusted/project_2/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 0c74c57cedff2b36bb37ca68a5338d1c49991496
          untrusted/project_0/github.com/osism/python-osism:
            canonical_name: github.com/osism/python-osism
            checkout: main
            commit: a0b782cd4e9703586c0b664c53d01774f55d209e
          untrusted/project_1/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: 58f24f5b479e15eb2d520850d27e3b1b6fc66aa6
          untrusted/project_2/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 038dd8b856c62af4433c8477c5cb3d0480847059
          untrusted/project_3/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 0c74c57cedff2b36bb37ca68a5338d1c49991496
        playbooks:
        - path: untrusted/project_0/github.com/osism/python-osism/playbooks/test-setup.yml
          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
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/playbook_0/role_3/zuul-jobs
            link_target: untrusted/project_3/github.com/osism/zuul-jobs
            role_path: ansible/playbook_0/role_3/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: a0b782cd4e9703586c0b664c53d01774f55d209e
          name: osism/python-osism
          required: false
          short_name: python-osism
          src_dir: src/github.com/osism/python-osism
      ref: refs/pull/2275/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
