all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:fece:f2c3
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: 4de68dda-6cb2-4c80-a65e-5c302f3c3e0b
        host_id: 7f2607eceb24f4583c6f9496c53c64b51afe50de5eacda4379b21c42
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:fece:f2c3
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.7.182
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.193.158
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:fece:f2c3
        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 yamllint explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-jobs/.zuul.yaml@main#59>'
      - '<Job yamllint explicit: None implied: None source: osism/openstack-simple-stress/.zuul.yaml@main#11>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: 72c1381241b3434ca9e67b46f6a7a0c6
      build_refs:
      - branch: main
        change: '331'
        change_message: "chore(deps): update dependency cryptography to v50 [security]\n\nThis
          PR contains the following updates:\n\n| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/)
          | [Confidence](https://docs.renovatebot.com/merge-confidence/) |\n|---|---|---|---|\n|
          [cryptography](https://redirect.github.com/pyca/cryptography) ([changelog](https://cryptography.io/en/latest/changelog/))
          | `==49.0.0` \u2192 `==50.0.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/cryptography/50.0.0?slim=true)
          | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/cryptography/49.0.0/50.0.0?slim=true)
          |\n\n---\n\n### cryptography: PKCS#7 EnvelopedData decryption exposes a
          Bleichenbacher oracle through distinguishable errors and timing\n[CVE-2026-69247](https://nvd.nist.gov/vuln/detail/CVE-2026-69247)
          / [GHSA-g6cj-pr64-35w5](https://redirect.github.com/advisories/GHSA-g6cj-pr64-35w5)\n\n<details>\n<summary>More
          information</summary>\n\n#### Details\n##### Summary\n\n`pkcs7_decrypt_der`,
          `pkcs7_decrypt_pem`, and `pkcs7_decrypt_smime` reported the\noutcome of
          decrypting a `RecipientInfo`'s `encryptedKey` in several\ndistinguishable
          ways, one of which disclosed the exact length recovered from the\nRSA operation.
          The same distinction was also observable by timing. An\napplication that
          decrypts attacker-supplied `EnvelopedData` and reflects the\noutcome gives
          the attacker a Bleichenbacher oracle against the\ncontent-encryption key.\n\nIntroduced
          in 44.0.0. Fixed in 50.0.0.\n\n##### Details\n\nDecryption ran as: RSA PKCS#1
          v1.5 decrypt of `encryptedKey` \u2192 build an AES\ncipher from the result
          \u2192 AES-CBC decrypt and PKCS#7 unpad. Each stage failed\ndifferently,
          with no RFC 3218 mitigation:\n\n1. invalid RSA padding \u2192 `Decryption
          failed`\n2. valid padding, bad key length \u2192 `Invalid key size (N) for
          AES.`, disclosing `N`\n3. correct length, wrong key \u2192 `Invalid padding
          bytes.`\n4. the real key \u2192 plaintext\n\nCase 1 is reachable only where
          the linked library lacks implicit rejection:\nOpenSSL 3.0 and 3.1, LibreSSL,
          and BoringSSL. On OpenSSL 3.2+, used in our wheels,\ninvalid padding instead
          returns a synthetic plaintext of\npseudorandom length, so the error channel
          does not distinguish conforming\nciphertexts.\n\nExploitation requires a
          service that auto-decrypts untrusted `EnvelopedData`\nmatching the victim
          certificate and answers adaptively at high volume, such as\nan S/MIME gateway
          or mail filter.\n\n##### Fix\n\nPer RFC 3218, the content-encryption algorithm
          is now resolved before the\nprivate key is used, so the expected key length
          is known in advance. If the RSA\ndecryption fails or recovers a key of the
          wrong length, a random key of the\nexpected length is substituted and decryption
          continues down an identical path.\nAll failures now report identically and
          perform the same work.\n\n##### Not addressed by this fix\n\n`EnvelopedData`
          does not authenticate its content. Tampering with\n`encryptedContent` alone
          yields a CBC padding oracle that recovers plaintext at\nroughly 256 queries
          per byte, without recovering any key, on every backend. This\nis a property
          of PKCS#7 rather than of this implementation, cannot be fixed in\nthe library,
          and is now documented.\n\n##### Credit\n\nReported by @&#8203;X1AOxiang.\n\n####
          Severity\n- CVSS Score: 8.2 / 10 (High)\n- Vector String: `CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N`\n\n####
          References\n- [https://github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5](https://redirect.github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5)\n-
          [https://github.com/pyca/cryptography/pull/15369](https://redirect.github.com/pyca/cryptography/pull/15369)\n-
          [https://github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f](https://redirect.github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f)\n-
          [https://github.com/pyca/cryptography](https://redirect.github.com/pyca/cryptography)\n\nThis
          data is provided by [OSV](https://osv.dev/vulnerability/GHSA-g6cj-pr64-35w5)
          and the [GitHub Advisory Database](https://redirect.github.com/github/advisory-database)
          ([CC-BY 4.0](https://redirect.github.com/github/advisory-database/blob/main/LICENSE.md)).\n</details>\n\n---\n\n###
          Release Notes\n\n<details>\n<summary>pyca/cryptography (cryptography)</summary>\n\n###
          [`v50.0.0`](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n[Compare
          Source](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/osism/openstack-simple-stress).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4zLjIiLCJ1cGRhdGVkSW5WZXIiOiI0NC4zLjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInJlbm92YXRlIl19-->\n"
        change_url: https://github.com/osism/openstack-simple-stress/pull/331
        commit_id: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
        patchset: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/openstack-simple-stress
          name: osism/openstack-simple-stress
          short_name: openstack-simple-stress
        src_dir: src/github.com/osism/openstack-simple-stress
        topic: null
      buildset: 4e303229829e490f8787b911b4b3684e
      buildset_refs:
      - branch: main
        change: '331'
        change_message: "chore(deps): update dependency cryptography to v50 [security]\n\nThis
          PR contains the following updates:\n\n| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/)
          | [Confidence](https://docs.renovatebot.com/merge-confidence/) |\n|---|---|---|---|\n|
          [cryptography](https://redirect.github.com/pyca/cryptography) ([changelog](https://cryptography.io/en/latest/changelog/))
          | `==49.0.0` \u2192 `==50.0.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/cryptography/50.0.0?slim=true)
          | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/cryptography/49.0.0/50.0.0?slim=true)
          |\n\n---\n\n### cryptography: PKCS#7 EnvelopedData decryption exposes a
          Bleichenbacher oracle through distinguishable errors and timing\n[CVE-2026-69247](https://nvd.nist.gov/vuln/detail/CVE-2026-69247)
          / [GHSA-g6cj-pr64-35w5](https://redirect.github.com/advisories/GHSA-g6cj-pr64-35w5)\n\n<details>\n<summary>More
          information</summary>\n\n#### Details\n##### Summary\n\n`pkcs7_decrypt_der`,
          `pkcs7_decrypt_pem`, and `pkcs7_decrypt_smime` reported the\noutcome of
          decrypting a `RecipientInfo`'s `encryptedKey` in several\ndistinguishable
          ways, one of which disclosed the exact length recovered from the\nRSA operation.
          The same distinction was also observable by timing. An\napplication that
          decrypts attacker-supplied `EnvelopedData` and reflects the\noutcome gives
          the attacker a Bleichenbacher oracle against the\ncontent-encryption key.\n\nIntroduced
          in 44.0.0. Fixed in 50.0.0.\n\n##### Details\n\nDecryption ran as: RSA PKCS#1
          v1.5 decrypt of `encryptedKey` \u2192 build an AES\ncipher from the result
          \u2192 AES-CBC decrypt and PKCS#7 unpad. Each stage failed\ndifferently,
          with no RFC 3218 mitigation:\n\n1. invalid RSA padding \u2192 `Decryption
          failed`\n2. valid padding, bad key length \u2192 `Invalid key size (N) for
          AES.`, disclosing `N`\n3. correct length, wrong key \u2192 `Invalid padding
          bytes.`\n4. the real key \u2192 plaintext\n\nCase 1 is reachable only where
          the linked library lacks implicit rejection:\nOpenSSL 3.0 and 3.1, LibreSSL,
          and BoringSSL. On OpenSSL 3.2+, used in our wheels,\ninvalid padding instead
          returns a synthetic plaintext of\npseudorandom length, so the error channel
          does not distinguish conforming\nciphertexts.\n\nExploitation requires a
          service that auto-decrypts untrusted `EnvelopedData`\nmatching the victim
          certificate and answers adaptively at high volume, such as\nan S/MIME gateway
          or mail filter.\n\n##### Fix\n\nPer RFC 3218, the content-encryption algorithm
          is now resolved before the\nprivate key is used, so the expected key length
          is known in advance. If the RSA\ndecryption fails or recovers a key of the
          wrong length, a random key of the\nexpected length is substituted and decryption
          continues down an identical path.\nAll failures now report identically and
          perform the same work.\n\n##### Not addressed by this fix\n\n`EnvelopedData`
          does not authenticate its content. Tampering with\n`encryptedContent` alone
          yields a CBC padding oracle that recovers plaintext at\nroughly 256 queries
          per byte, without recovering any key, on every backend. This\nis a property
          of PKCS#7 rather than of this implementation, cannot be fixed in\nthe library,
          and is now documented.\n\n##### Credit\n\nReported by @&#8203;X1AOxiang.\n\n####
          Severity\n- CVSS Score: 8.2 / 10 (High)\n- Vector String: `CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N`\n\n####
          References\n- [https://github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5](https://redirect.github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5)\n-
          [https://github.com/pyca/cryptography/pull/15369](https://redirect.github.com/pyca/cryptography/pull/15369)\n-
          [https://github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f](https://redirect.github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f)\n-
          [https://github.com/pyca/cryptography](https://redirect.github.com/pyca/cryptography)\n\nThis
          data is provided by [OSV](https://osv.dev/vulnerability/GHSA-g6cj-pr64-35w5)
          and the [GitHub Advisory Database](https://redirect.github.com/github/advisory-database)
          ([CC-BY 4.0](https://redirect.github.com/github/advisory-database/blob/main/LICENSE.md)).\n</details>\n\n---\n\n###
          Release Notes\n\n<details>\n<summary>pyca/cryptography (cryptography)</summary>\n\n###
          [`v50.0.0`](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n[Compare
          Source](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/osism/openstack-simple-stress).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4zLjIiLCJ1cGRhdGVkSW5WZXIiOiI0NC4zLjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInJlbm92YXRlIl19-->\n"
        change_url: https://github.com/osism/openstack-simple-stress/pull/331
        commit_id: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
        patchset: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/openstack-simple-stress
          name: osism/openstack-simple-stress
          short_name: openstack-simple-stress
        src_dir: src/github.com/osism/openstack-simple-stress
        topic: null
      change: '331'
      change_message: "chore(deps): update dependency cryptography to v50 [security]\n\nThis
        PR contains the following updates:\n\n| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/)
        | [Confidence](https://docs.renovatebot.com/merge-confidence/) |\n|---|---|---|---|\n|
        [cryptography](https://redirect.github.com/pyca/cryptography) ([changelog](https://cryptography.io/en/latest/changelog/))
        | `==49.0.0` \u2192 `==50.0.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/cryptography/50.0.0?slim=true)
        | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/cryptography/49.0.0/50.0.0?slim=true)
        |\n\n---\n\n### cryptography: PKCS#7 EnvelopedData decryption exposes a Bleichenbacher
        oracle through distinguishable errors and timing\n[CVE-2026-69247](https://nvd.nist.gov/vuln/detail/CVE-2026-69247)
        / [GHSA-g6cj-pr64-35w5](https://redirect.github.com/advisories/GHSA-g6cj-pr64-35w5)\n\n<details>\n<summary>More
        information</summary>\n\n#### Details\n##### Summary\n\n`pkcs7_decrypt_der`,
        `pkcs7_decrypt_pem`, and `pkcs7_decrypt_smime` reported the\noutcome of decrypting
        a `RecipientInfo`'s `encryptedKey` in several\ndistinguishable ways, one of
        which disclosed the exact length recovered from the\nRSA operation. The same
        distinction was also observable by timing. An\napplication that decrypts attacker-supplied
        `EnvelopedData` and reflects the\noutcome gives the attacker a Bleichenbacher
        oracle against the\ncontent-encryption key.\n\nIntroduced in 44.0.0. Fixed
        in 50.0.0.\n\n##### Details\n\nDecryption ran as: RSA PKCS#1 v1.5 decrypt
        of `encryptedKey` \u2192 build an AES\ncipher from the result \u2192 AES-CBC
        decrypt and PKCS#7 unpad. Each stage failed\ndifferently, with no RFC 3218
        mitigation:\n\n1. invalid RSA padding \u2192 `Decryption failed`\n2. valid
        padding, bad key length \u2192 `Invalid key size (N) for AES.`, disclosing
        `N`\n3. correct length, wrong key \u2192 `Invalid padding bytes.`\n4. the
        real key \u2192 plaintext\n\nCase 1 is reachable only where the linked library
        lacks implicit rejection:\nOpenSSL 3.0 and 3.1, LibreSSL, and BoringSSL. On
        OpenSSL 3.2+, used in our wheels,\ninvalid padding instead returns a synthetic
        plaintext of\npseudorandom length, so the error channel does not distinguish
        conforming\nciphertexts.\n\nExploitation requires a service that auto-decrypts
        untrusted `EnvelopedData`\nmatching the victim certificate and answers adaptively
        at high volume, such as\nan S/MIME gateway or mail filter.\n\n##### Fix\n\nPer
        RFC 3218, the content-encryption algorithm is now resolved before the\nprivate
        key is used, so the expected key length is known in advance. If the RSA\ndecryption
        fails or recovers a key of the wrong length, a random key of the\nexpected
        length is substituted and decryption continues down an identical path.\nAll
        failures now report identically and perform the same work.\n\n##### Not addressed
        by this fix\n\n`EnvelopedData` does not authenticate its content. Tampering
        with\n`encryptedContent` alone yields a CBC padding oracle that recovers plaintext
        at\nroughly 256 queries per byte, without recovering any key, on every backend.
        This\nis a property of PKCS#7 rather than of this implementation, cannot be
        fixed in\nthe library, and is now documented.\n\n##### Credit\n\nReported
        by @&#8203;X1AOxiang.\n\n#### Severity\n- CVSS Score: 8.2 / 10 (High)\n- Vector
        String: `CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N`\n\n####
        References\n- [https://github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5](https://redirect.github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5)\n-
        [https://github.com/pyca/cryptography/pull/15369](https://redirect.github.com/pyca/cryptography/pull/15369)\n-
        [https://github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f](https://redirect.github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f)\n-
        [https://github.com/pyca/cryptography](https://redirect.github.com/pyca/cryptography)\n\nThis
        data is provided by [OSV](https://osv.dev/vulnerability/GHSA-g6cj-pr64-35w5)
        and the [GitHub Advisory Database](https://redirect.github.com/github/advisory-database)
        ([CC-BY 4.0](https://redirect.github.com/github/advisory-database/blob/main/LICENSE.md)).\n</details>\n\n---\n\n###
        Release Notes\n\n<details>\n<summary>pyca/cryptography (cryptography)</summary>\n\n###
        [`v50.0.0`](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n[Compare
        Source](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n</details>\n\n---\n\n###
        Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
        At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
        defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
        manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
        conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
        Close this PR and you won't be reminded about this update again.\n\n---\n\n
        - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
        box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
        View the [repository job log](https://developer.mend.io/github/osism/openstack-simple-stress).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4zLjIiLCJ1cGRhdGVkSW5WZXIiOiI0NC4zLjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInJlbm92YXRlIl19-->\n"
      change_url: https://github.com/osism/openstack-simple-stress/pull/331
      child_jobs: []
      commit_id: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
      event_id: 4cfba470-8fa2-11f1-9c68-873289e5dd1e
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/72c1381241b3434ca9e67b46f6a7a0c6/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/72c1381241b3434ca9e67b46f6a7a0c6/work/logs
        result_data_file: /var/lib/zuul/builds/72c1381241b3434ca9e67b46f6a7a0c6/work/results.json
        src_root: /var/lib/zuul/builds/72c1381241b3434ca9e67b46f6a7a0c6/work/src
        work_root: /var/lib/zuul/builds/72c1381241b3434ca9e67b46f6a7a0c6/work
      include_vars: []
      items:
      - branch: main
        change: '331'
        change_message: "chore(deps): update dependency cryptography to v50 [security]\n\nThis
          PR contains the following updates:\n\n| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/)
          | [Confidence](https://docs.renovatebot.com/merge-confidence/) |\n|---|---|---|---|\n|
          [cryptography](https://redirect.github.com/pyca/cryptography) ([changelog](https://cryptography.io/en/latest/changelog/))
          | `==49.0.0` \u2192 `==50.0.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/cryptography/50.0.0?slim=true)
          | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/cryptography/49.0.0/50.0.0?slim=true)
          |\n\n---\n\n### cryptography: PKCS#7 EnvelopedData decryption exposes a
          Bleichenbacher oracle through distinguishable errors and timing\n[CVE-2026-69247](https://nvd.nist.gov/vuln/detail/CVE-2026-69247)
          / [GHSA-g6cj-pr64-35w5](https://redirect.github.com/advisories/GHSA-g6cj-pr64-35w5)\n\n<details>\n<summary>More
          information</summary>\n\n#### Details\n##### Summary\n\n`pkcs7_decrypt_der`,
          `pkcs7_decrypt_pem`, and `pkcs7_decrypt_smime` reported the\noutcome of
          decrypting a `RecipientInfo`'s `encryptedKey` in several\ndistinguishable
          ways, one of which disclosed the exact length recovered from the\nRSA operation.
          The same distinction was also observable by timing. An\napplication that
          decrypts attacker-supplied `EnvelopedData` and reflects the\noutcome gives
          the attacker a Bleichenbacher oracle against the\ncontent-encryption key.\n\nIntroduced
          in 44.0.0. Fixed in 50.0.0.\n\n##### Details\n\nDecryption ran as: RSA PKCS#1
          v1.5 decrypt of `encryptedKey` \u2192 build an AES\ncipher from the result
          \u2192 AES-CBC decrypt and PKCS#7 unpad. Each stage failed\ndifferently,
          with no RFC 3218 mitigation:\n\n1. invalid RSA padding \u2192 `Decryption
          failed`\n2. valid padding, bad key length \u2192 `Invalid key size (N) for
          AES.`, disclosing `N`\n3. correct length, wrong key \u2192 `Invalid padding
          bytes.`\n4. the real key \u2192 plaintext\n\nCase 1 is reachable only where
          the linked library lacks implicit rejection:\nOpenSSL 3.0 and 3.1, LibreSSL,
          and BoringSSL. On OpenSSL 3.2+, used in our wheels,\ninvalid padding instead
          returns a synthetic plaintext of\npseudorandom length, so the error channel
          does not distinguish conforming\nciphertexts.\n\nExploitation requires a
          service that auto-decrypts untrusted `EnvelopedData`\nmatching the victim
          certificate and answers adaptively at high volume, such as\nan S/MIME gateway
          or mail filter.\n\n##### Fix\n\nPer RFC 3218, the content-encryption algorithm
          is now resolved before the\nprivate key is used, so the expected key length
          is known in advance. If the RSA\ndecryption fails or recovers a key of the
          wrong length, a random key of the\nexpected length is substituted and decryption
          continues down an identical path.\nAll failures now report identically and
          perform the same work.\n\n##### Not addressed by this fix\n\n`EnvelopedData`
          does not authenticate its content. Tampering with\n`encryptedContent` alone
          yields a CBC padding oracle that recovers plaintext at\nroughly 256 queries
          per byte, without recovering any key, on every backend. This\nis a property
          of PKCS#7 rather than of this implementation, cannot be fixed in\nthe library,
          and is now documented.\n\n##### Credit\n\nReported by @&#8203;X1AOxiang.\n\n####
          Severity\n- CVSS Score: 8.2 / 10 (High)\n- Vector String: `CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N`\n\n####
          References\n- [https://github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5](https://redirect.github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5)\n-
          [https://github.com/pyca/cryptography/pull/15369](https://redirect.github.com/pyca/cryptography/pull/15369)\n-
          [https://github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f](https://redirect.github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f)\n-
          [https://github.com/pyca/cryptography](https://redirect.github.com/pyca/cryptography)\n\nThis
          data is provided by [OSV](https://osv.dev/vulnerability/GHSA-g6cj-pr64-35w5)
          and the [GitHub Advisory Database](https://redirect.github.com/github/advisory-database)
          ([CC-BY 4.0](https://redirect.github.com/github/advisory-database/blob/main/LICENSE.md)).\n</details>\n\n---\n\n###
          Release Notes\n\n<details>\n<summary>pyca/cryptography (cryptography)</summary>\n\n###
          [`v50.0.0`](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n[Compare
          Source](https://redirect.github.com/pyca/cryptography/compare/49.0.0...50.0.0)\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/osism/openstack-simple-stress).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4zLjIiLCJ1cGRhdGVkSW5WZXIiOiI0NC4zLjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInJlbm92YXRlIl19-->\n"
        change_url: https://github.com/osism/openstack-simple-stress/pull/331
        commit_id: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
        patchset: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/openstack-simple-stress
          name: osism/openstack-simple-stress
          short_name: openstack-simple-stress
          src_dir: src/github.com/osism/openstack-simple-stress
        topic: null
      job: yamllint
      jobtags: []
      max_attempts: 3
      message: Y2hvcmUoZGVwcyk6IHVwZGF0ZSBkZXBlbmRlbmN5IGNyeXB0b2dyYXBoeSB0byB2NTAgW3NlY3VyaXR5XQoKVGhpcyBQUiBjb250YWlucyB0aGUgZm9sbG93aW5nIHVwZGF0ZXM6Cgp8IFBhY2thZ2UgfCBDaGFuZ2UgfCBbQWdlXShodHRwczovL2RvY3MucmVub3ZhdGVib3QuY29tL21lcmdlLWNvbmZpZGVuY2UvKSB8IFtDb25maWRlbmNlXShodHRwczovL2RvY3MucmVub3ZhdGVib3QuY29tL21lcmdlLWNvbmZpZGVuY2UvKSB8CnwtLS18LS0tfC0tLXwtLS18CnwgW2NyeXB0b2dyYXBoeV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3B5Y2EvY3J5cHRvZ3JhcGh5KSAoW2NoYW5nZWxvZ10oaHR0cHM6Ly9jcnlwdG9ncmFwaHkuaW8vZW4vbGF0ZXN0L2NoYW5nZWxvZy8pKSB8IGA9PTQ5LjAuMGAg4oaSIGA9PTUwLjAuMGAgfCAhW2FnZV0oaHR0cHM6Ly9kZXZlbG9wZXIubWVuZC5pby9hcGkvbWMvYmFkZ2VzL2FnZS9weXBpL2NyeXB0b2dyYXBoeS81MC4wLjA/c2xpbT10cnVlKSB8ICFbY29uZmlkZW5jZV0oaHR0cHM6Ly9kZXZlbG9wZXIubWVuZC5pby9hcGkvbWMvYmFkZ2VzL2NvbmZpZGVuY2UvcHlwaS9jcnlwdG9ncmFwaHkvNDkuMC4wLzUwLjAuMD9zbGltPXRydWUpIHwKCi0tLQoKIyMjIGNyeXB0b2dyYXBoeTogUEtDUyM3IEVudmVsb3BlZERhdGEgZGVjcnlwdGlvbiBleHBvc2VzIGEgQmxlaWNoZW5iYWNoZXIgb3JhY2xlIHRocm91Z2ggZGlzdGluZ3Vpc2hhYmxlIGVycm9ycyBhbmQgdGltaW5nCltDVkUtMjAyNi02OTI0N10oaHR0cHM6Ly9udmQubmlzdC5nb3YvdnVsbi9kZXRhaWwvQ1ZFLTIwMjYtNjkyNDcpIC8gW0dIU0EtZzZjai1wcjY0LTM1dzVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9hZHZpc29yaWVzL0dIU0EtZzZjai1wcjY0LTM1dzUpCgo8ZGV0YWlscz4KPHN1bW1hcnk+TW9yZSBpbmZvcm1hdGlvbjwvc3VtbWFyeT4KCiMjIyMgRGV0YWlscwojIyMjIyBTdW1tYXJ5CgpgcGtjczdfZGVjcnlwdF9kZXJgLCBgcGtjczdfZGVjcnlwdF9wZW1gLCBhbmQgYHBrY3M3X2RlY3J5cHRfc21pbWVgIHJlcG9ydGVkIHRoZQpvdXRjb21lIG9mIGRlY3J5cHRpbmcgYSBgUmVjaXBpZW50SW5mb2AncyBgZW5jcnlwdGVkS2V5YCBpbiBzZXZlcmFsCmRpc3Rpbmd1aXNoYWJsZSB3YXlzLCBvbmUgb2Ygd2hpY2ggZGlzY2xvc2VkIHRoZSBleGFjdCBsZW5ndGggcmVjb3ZlcmVkIGZyb20gdGhlClJTQSBvcGVyYXRpb24uIFRoZSBzYW1lIGRpc3RpbmN0aW9uIHdhcyBhbHNvIG9ic2VydmFibGUgYnkgdGltaW5nLiBBbgphcHBsaWNhdGlvbiB0aGF0IGRlY3J5cHRzIGF0dGFja2VyLXN1cHBsaWVkIGBFbnZlbG9wZWREYXRhYCBhbmQgcmVmbGVjdHMgdGhlCm91dGNvbWUgZ2l2ZXMgdGhlIGF0dGFja2VyIGEgQmxlaWNoZW5iYWNoZXIgb3JhY2xlIGFnYWluc3QgdGhlCmNvbnRlbnQtZW5jcnlwdGlvbiBrZXkuCgpJbnRyb2R1Y2VkIGluIDQ0LjAuMC4gRml4ZWQgaW4gNTAuMC4wLgoKIyMjIyMgRGV0YWlscwoKRGVjcnlwdGlvbiByYW4gYXM6IFJTQSBQS0NTIzEgdjEuNSBkZWNyeXB0IG9mIGBlbmNyeXB0ZWRLZXlgIOKGkiBidWlsZCBhbiBBRVMKY2lwaGVyIGZyb20gdGhlIHJlc3VsdCDihpIgQUVTLUNCQyBkZWNyeXB0IGFuZCBQS0NTIzcgdW5wYWQuIEVhY2ggc3RhZ2UgZmFpbGVkCmRpZmZlcmVudGx5LCB3aXRoIG5vIFJGQyAzMjE4IG1pdGlnYXRpb246CgoxLiBpbnZhbGlkIFJTQSBwYWRkaW5nIOKGkiBgRGVjcnlwdGlvbiBmYWlsZWRgCjIuIHZhbGlkIHBhZGRpbmcsIGJhZCBrZXkgbGVuZ3RoIOKGkiBgSW52YWxpZCBrZXkgc2l6ZSAoTikgZm9yIEFFUy5gLCBkaXNjbG9zaW5nIGBOYAozLiBjb3JyZWN0IGxlbmd0aCwgd3Jvbmcga2V5IOKGkiBgSW52YWxpZCBwYWRkaW5nIGJ5dGVzLmAKNC4gdGhlIHJlYWwga2V5IOKGkiBwbGFpbnRleHQKCkNhc2UgMSBpcyByZWFjaGFibGUgb25seSB3aGVyZSB0aGUgbGlua2VkIGxpYnJhcnkgbGFja3MgaW1wbGljaXQgcmVqZWN0aW9uOgpPcGVuU1NMIDMuMCBhbmQgMy4xLCBMaWJyZVNTTCwgYW5kIEJvcmluZ1NTTC4gT24gT3BlblNTTCAzLjIrLCB1c2VkIGluIG91ciB3aGVlbHMsCmludmFsaWQgcGFkZGluZyBpbnN0ZWFkIHJldHVybnMgYSBzeW50aGV0aWMgcGxhaW50ZXh0IG9mCnBzZXVkb3JhbmRvbSBsZW5ndGgsIHNvIHRoZSBlcnJvciBjaGFubmVsIGRvZXMgbm90IGRpc3Rpbmd1aXNoIGNvbmZvcm1pbmcKY2lwaGVydGV4dHMuCgpFeHBsb2l0YXRpb24gcmVxdWlyZXMgYSBzZXJ2aWNlIHRoYXQgYXV0by1kZWNyeXB0cyB1bnRydXN0ZWQgYEVudmVsb3BlZERhdGFgCm1hdGNoaW5nIHRoZSB2aWN0aW0gY2VydGlmaWNhdGUgYW5kIGFuc3dlcnMgYWRhcHRpdmVseSBhdCBoaWdoIHZvbHVtZSwgc3VjaCBhcwphbiBTL01JTUUgZ2F0ZXdheSBvciBtYWlsIGZpbHRlci4KCiMjIyMjIEZpeAoKUGVyIFJGQyAzMjE4LCB0aGUgY29udGVudC1lbmNyeXB0aW9uIGFsZ29yaXRobSBpcyBub3cgcmVzb2x2ZWQgYmVmb3JlIHRoZQpwcml2YXRlIGtleSBpcyB1c2VkLCBzbyB0aGUgZXhwZWN0ZWQga2V5IGxlbmd0aCBpcyBrbm93biBpbiBhZHZhbmNlLiBJZiB0aGUgUlNBCmRlY3J5cHRpb24gZmFpbHMgb3IgcmVjb3ZlcnMgYSBrZXkgb2YgdGhlIHdyb25nIGxlbmd0aCwgYSByYW5kb20ga2V5IG9mIHRoZQpleHBlY3RlZCBsZW5ndGggaXMgc3Vic3RpdHV0ZWQgYW5kIGRlY3J5cHRpb24gY29udGludWVzIGRvd24gYW4gaWRlbnRpY2FsIHBhdGguCkFsbCBmYWlsdXJlcyBub3cgcmVwb3J0IGlkZW50aWNhbGx5IGFuZCBwZXJmb3JtIHRoZSBzYW1lIHdvcmsuCgojIyMjIyBOb3QgYWRkcmVzc2VkIGJ5IHRoaXMgZml4CgpgRW52ZWxvcGVkRGF0YWAgZG9lcyBub3QgYXV0aGVudGljYXRlIGl0cyBjb250ZW50LiBUYW1wZXJpbmcgd2l0aApgZW5jcnlwdGVkQ29udGVudGAgYWxvbmUgeWllbGRzIGEgQ0JDIHBhZGRpbmcgb3JhY2xlIHRoYXQgcmVjb3ZlcnMgcGxhaW50ZXh0IGF0CnJvdWdobHkgMjU2IHF1ZXJpZXMgcGVyIGJ5dGUsIHdpdGhvdXQgcmVjb3ZlcmluZyBhbnkga2V5LCBvbiBldmVyeSBiYWNrZW5kLiBUaGlzCmlzIGEgcHJvcGVydHkgb2YgUEtDUyM3IHJhdGhlciB0aGFuIG9mIHRoaXMgaW1wbGVtZW50YXRpb24sIGNhbm5vdCBiZSBmaXhlZCBpbgp0aGUgbGlicmFyeSwgYW5kIGlzIG5vdyBkb2N1bWVudGVkLgoKIyMjIyMgQ3JlZGl0CgpSZXBvcnRlZCBieSBAJiM4MjAzO1gxQU94aWFuZy4KCiMjIyMgU2V2ZXJpdHkKLSBDVlNTIFNjb3JlOiA4LjIgLyAxMCAoSGlnaCkKLSBWZWN0b3IgU3RyaW5nOiBgQ1ZTUzo0LjAvQVY6Ti9BQzpIL0FUOlAvUFI6Ti9VSTpOL1ZDOkgvVkk6Ti9WQTpOL1NDOk4vU0k6Ti9TQTpOYAoKIyMjIyBSZWZlcmVuY2VzCi0gW2h0dHBzOi8vZ2l0aHViLmNvbS9weWNhL2NyeXB0b2dyYXBoeS9zZWN1cml0eS9hZHZpc29yaWVzL0dIU0EtZzZjai1wcjY0LTM1dzVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9weWNhL2NyeXB0b2dyYXBoeS9zZWN1cml0eS9hZHZpc29yaWVzL0dIU0EtZzZjai1wcjY0LTM1dzUpCi0gW2h0dHBzOi8vZ2l0aHViLmNvbS9weWNhL2NyeXB0b2dyYXBoeS9wdWxsLzE1MzY5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vcHljYS9jcnlwdG9ncmFwaHkvcHVsbC8xNTM2OSkKLSBbaHR0cHM6Ly9naXRodWIuY29tL3B5Y2EvY3J5cHRvZ3JhcGh5L2NvbW1pdC81M2ZjY2Q5MzQxM2E4ZDdmMDdkNmQ4OTk5NjgxZjI3Yjc1Y2ZmYTNmXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vcHljYS9jcnlwdG9ncmFwaHkvY29tbWl0LzUzZmNjZDkzNDEzYThkN2YwN2Q2ZDg5OTk2ODFmMjdiNzVjZmZhM2YpCi0gW2h0dHBzOi8vZ2l0aHViLmNvbS9weWNhL2NyeXB0b2dyYXBoeV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3B5Y2EvY3J5cHRvZ3JhcGh5KQoKVGhpcyBkYXRhIGlzIHByb3ZpZGVkIGJ5IFtPU1ZdKGh0dHBzOi8vb3N2LmRldi92dWxuZXJhYmlsaXR5L0dIU0EtZzZjai1wcjY0LTM1dzUpIGFuZCB0aGUgW0dpdEh1YiBBZHZpc29yeSBEYXRhYmFzZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2dpdGh1Yi9hZHZpc29yeS1kYXRhYmFzZSkgKFtDQy1CWSA0LjBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9naXRodWIvYWR2aXNvcnktZGF0YWJhc2UvYmxvYi9tYWluL0xJQ0VOU0UubWQpKS4KPC9kZXRhaWxzPgoKLS0tCgojIyMgUmVsZWFzZSBOb3RlcwoKPGRldGFpbHM+CjxzdW1tYXJ5PnB5Y2EvY3J5cHRvZ3JhcGh5IChjcnlwdG9ncmFwaHkpPC9zdW1tYXJ5PgoKIyMjIFtgdjUwLjAuMGBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9weWNhL2NyeXB0b2dyYXBoeS9jb21wYXJlLzQ5LjAuMC4uLjUwLjAuMCkKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3B5Y2EvY3J5cHRvZ3JhcGh5L2NvbXBhcmUvNDkuMC4wLi4uNTAuMC4wKQoKPC9kZXRhaWxzPgoKLS0tCgojIyMgQ29uZmlndXJhdGlvbgoK8J+ThSAqKlNjaGVkdWxlKio6IChVVEMpCgotIEJyYW5jaCBjcmVhdGlvbgogIC0gQXQgYW55IHRpbWUgKG5vIHNjaGVkdWxlIGRlZmluZWQpCi0gQXV0b21lcmdlCiAgLSBBdCBhbnkgdGltZSAobm8gc2NoZWR1bGUgZGVmaW5lZCkKCvCfmqYgKipBdXRvbWVyZ2UqKjogRGlzYWJsZWQgYnkgY29uZmlnLiBQbGVhc2UgbWVyZ2UgdGhpcyBtYW51YWxseSBvbmNlIHlvdSBhcmUgc2F0aXNmaWVkLgoK4pm7ICoqUmViYXNpbmcqKjogV2hlbmV2ZXIgUFIgYmVjb21lcyBjb25mbGljdGVkLCBvciB5b3UgdGljayB0aGUgcmViYXNlL3JldHJ5IGNoZWNrYm94LgoK8J+UlSAqKklnbm9yZSoqOiBDbG9zZSB0aGlzIFBSIGFuZCB5b3Ugd29uJ3QgYmUgcmVtaW5kZWQgYWJvdXQgdGhpcyB1cGRhdGUgYWdhaW4uCgotLS0KCiAtIFsgXSA8IS0tIHJlYmFzZS1jaGVjayAtLT5JZiB5b3Ugd2FudCB0byByZWJhc2UvcmV0cnkgdGhpcyBQUiwgY2hlY2sgdGhpcyBib3gKCi0tLQoKVGhpcyBQUiB3YXMgZ2VuZXJhdGVkIGJ5IFtNZW5kIFJlbm92YXRlXShodHRwczovL21lbmQuaW8vcmVub3ZhdGUvKS4gVmlldyB0aGUgW3JlcG9zaXRvcnkgam9iIGxvZ10oaHR0cHM6Ly9kZXZlbG9wZXIubWVuZC5pby9naXRodWIvb3Npc20vb3BlbnN0YWNrLXNpbXBsZS1zdHJlc3MpLgo8IS0tcmVub3ZhdGUtZGVidWc6ZXlKamNtVmhkR1ZrU1c1V1pYSWlPaUkwTkM0ekxqSWlMQ0oxY0dSaGRHVmtTVzVXWlhJaU9pSTBOQzR6TGpJaUxDSjBZWEpuWlhSQ2NtRnVZMmdpT2lKdFlXbHVJaXdpYkdGaVpXeHpJanBiSW5KbGJtOTJZWFJsSWwxOS0tPgo=
      patchset: 1577e82ad4e34f4b1ed4320b47152cbc4bf0be44
      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/yamllint/run.yaml
          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/openstack-simple-stress
        name: osism/openstack-simple-stress
        short_name: openstack-simple-stress
        src_dir: src/github.com/osism/openstack-simple-stress
      projects:
        github.com/osism/openstack-simple-stress:
          canonical_hostname: github.com
          canonical_name: github.com/osism/openstack-simple-stress
          checkout: main
          checkout_description: zuul branch
          commit: a27a0af2bd2cfdefd25a7317770084d2c1b522a6
          name: osism/openstack-simple-stress
          required: false
          short_name: openstack-simple-stress
          src_dir: src/github.com/osism/openstack-simple-stress
      ref: refs/pull/331/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
