all: children: peers: hosts: {} switch: hosts: controller: null zuul_unreachable: hosts: {} hosts: controller: ansible_connection: ssh ansible_host: 38.102.83.50 ansible_port: 22 ansible_python_interpreter: auto ansible_user: zuul cifmw_architecture_repo: "{{\n [ansible_user_dir,\n zuul.projects['github.com/openstack-k8s-operators/architecture'].src_dir]\n \ | path_join\n}}" cifmw_architecture_scenario: nova05epsilon cifmw_networking_env_def_file: automation/net-env/nova05epsilon.yaml cifmw_networking_env_def_file_local: "{{\n \"\" if not cifmw_networking_env_def_file else\n ([ cifmw_architecture_repo,\n cifmw_networking_env_def_file ] | path_join)\n}}" cifmw_networking_mapper_networking_env_def_path: "{{\n cifmw_networking_env_def_file_local |\n default([ansible_user_dir,\n zuul.projects['github.com/openstack-k8s-operators/ci-framework'].src_dir,\n \ 'ci/playbooks/files/networking-env-definition.yml'] | path_join, true)\n}}" nodepool: az: nova cloud: vexxhost-nodepool-tripleo external_id: 9cd1794e-1e98-4363-a510-6e33a8d2fde1 host_id: 511625867b15899f344b49f50e790882b35aedda883941cf1472ae2b interface_ip: 38.102.83.50 label: cloud-centos-9-stream-tripleo node_properties: {} private_ipv4: 38.102.83.50 private_ipv6: null provider: vexxhost-nodepool-tripleo public_ipv4: 38.102.83.50 public_ipv6: '' region: RegionOne slot: null zuul_node: az: nova cloud: vexxhost-nodepool-tripleo external_id: 9cd1794e-1e98-4363-a510-6e33a8d2fde1 host_id: 511625867b15899f344b49f50e790882b35aedda883941cf1472ae2b interface_ip: 38.102.83.50 label: cloud-centos-9-stream-tripleo node_properties: {} private_ipv4: 38.102.83.50 private_ipv6: null provider: vexxhost-nodepool-tripleo public_ipv4: 38.102.83.50 public_ipv6: '' region: RegionOne slot: null uuid: null localhost: ansible_connection: local vars: cifmw_architecture_repo: "{{\n [ansible_user_dir,\n zuul.projects['github.com/openstack-k8s-operators/architecture'].src_dir]\n \ | path_join\n}}" cifmw_architecture_scenario: nova05epsilon cifmw_networking_env_def_file: automation/net-env/nova05epsilon.yaml cifmw_networking_env_def_file_local: "{{\n \"\" if not cifmw_networking_env_def_file else\n ([ cifmw_architecture_repo,\n cifmw_networking_env_def_file ] | path_join)\n}}" cifmw_networking_mapper_networking_env_def_path: "{{\n cifmw_networking_env_def_file_local |\n default([ansible_user_dir,\n zuul.projects['github.com/openstack-k8s-operators/ci-framework'].src_dir,\n \ 'ci/playbooks/files/networking-env-definition.yml'] | path_join, true)\n}}" zuul: _inheritance_path: - '' - '' - '' - '' - '' - '' - '' ansible_version: '9' attempts: 1 branch: main build: 0fdf8d81e670451a8fb81f0291b4002f build_refs: - branch: main change: '764' change_message: "nova05: follow up changes\n\n* Add cross-site routes/GWs\r\n\r\n \ For all nova05epsilon's NADs, NetConfig subnets, host-level NNCP routes add missing cross-site DCN routes, \r\n and gateways.\r\n\r\n \ Previsourely those were tested in ci-framework jobs overlays but the base DT example was missing those \r\n CHANGEME templates.\r\n\r\n* Add SNO Swift fix hook for Ceph RGW\r\n\r\n* Ext net for tests accessing VMs via FIP\r\n\r\n Add external NAD definition with VLAN to DT nncp/values.yaml.\r\n Update scenario-vars.yaml with external NAD for Tempest access to FIP.\r\n \r\n* Add automation mocks for CI\r\n\r\n* Fix telemetry spec and kustomize chain for SNO \r\n\r\n \ The DT-level kustomization was missing service-values replacements\r\n \ (telemetry, nova, glance, ovn, extraMounts), so the examples kustomize\r\n build produced base defaults instead of DT-specific config. This caused\r\n metricStorage.enabled=false and missing alertmanagerConfig on the\r\n deployed OSCP.\r\n\r\n Additionally, pvcStorageClass was hardcoded to \"local-storage\" but SNO\r\n \ uses LVMS (\"lvms-local-storage\"), and alertmanager defaulted to 2\r\n replicas which cannot schedule on a single node due to required\r\n pod anti-affinity.\r\n\r\n Align the kustomization layers with nova04delta:\r\n - dt/nova/nova05epsilon/kustomization.yaml: add service-values\r\n replacements matching nova04delta pattern\r\n - Remove deplicated replacements for\r\n dt/nova/nova05epsilon/control-plane/kustomization.yaml\r\n \ - examples/.../control-plane/service-values.yaml: add full DT-specific\r\n data (telemetry, nova, glance, ovn, extraMounts)\r\n \ - Set pvcStorageClass to lvms-local-storage and alertmanagerConfig\r\n \ replicas to 1 for SNO compatibility\r\n - update control-plane.md\r\n\r\n* Separate pre and post ceph OSCP configs \r\n\r\n \ HCI uses edpm post ceph to also patch the OSCP which looks suboptimal.\r\n\r\n Separate this into a two steps:\r\n - make post-ceph nodeset layer handling EDPM resources only (NodeSet,\r\n \ Services, Secrets, ConfigMap) - remove OSCP layer resources\r\n \ - add control-plane-post-ceph layer for OSCP with Glance RBD + Ceph\r\n extraMounts config. Use lib/control-plane/base instead of\r\n lib/control-plane which required network-values duplication\r\n otherwise. Since we're only patching glance config and extraMounts\r\n into an existing OSCP, that's all we need.\r\n - update README.md stages list from 4 to 6 steps, automation step\r\n count from 9 to 10\r\n - add note for defferred Ceph config for control-plane.md\r\n - add control-plane post-ceph doc for the dedicated Ceph\r\n control-plane update stage\r\n - remove control-plane update references for\r\n \ dataplane-post-ceph.md, add prerequisite for\r\n control-plane-post-ceph\r\n \ - add control-plane-post-ceph stage between pre-ceph deployment and\r\n post-ceph nodeset ini automation vars\r\n\r\nDepends-on: https://github.com/openstack-k8s-operators/ci-framework/pull/3773\r\nRelated: [OSPRH-30706](https://redhat.atlassian.net/browse/OSPRH-30706)" change_url: https://github.com/openstack-k8s-operators/architecture/pull/764 commit_id: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 patchset: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 project: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/architecture name: openstack-k8s-operators/architecture short_name: architecture src_dir: src/github.com/openstack-k8s-operators/architecture src_dir: src/github.com/openstack-k8s-operators/architecture topic: null buildset: 3fd0ab3935794c4db8982508d9a48148 buildset_refs: - branch: main change: '764' change_message: "nova05: follow up changes\n\n* Add cross-site routes/GWs\r\n\r\n \ For all nova05epsilon's NADs, NetConfig subnets, host-level NNCP routes add missing cross-site DCN routes, \r\n and gateways.\r\n\r\n \ Previsourely those were tested in ci-framework jobs overlays but the base DT example was missing those \r\n CHANGEME templates.\r\n\r\n* Add SNO Swift fix hook for Ceph RGW\r\n\r\n* Ext net for tests accessing VMs via FIP\r\n\r\n Add external NAD definition with VLAN to DT nncp/values.yaml.\r\n Update scenario-vars.yaml with external NAD for Tempest access to FIP.\r\n \r\n* Add automation mocks for CI\r\n\r\n* Fix telemetry spec and kustomize chain for SNO \r\n\r\n \ The DT-level kustomization was missing service-values replacements\r\n \ (telemetry, nova, glance, ovn, extraMounts), so the examples kustomize\r\n build produced base defaults instead of DT-specific config. This caused\r\n metricStorage.enabled=false and missing alertmanagerConfig on the\r\n deployed OSCP.\r\n\r\n Additionally, pvcStorageClass was hardcoded to \"local-storage\" but SNO\r\n \ uses LVMS (\"lvms-local-storage\"), and alertmanager defaulted to 2\r\n replicas which cannot schedule on a single node due to required\r\n pod anti-affinity.\r\n\r\n Align the kustomization layers with nova04delta:\r\n - dt/nova/nova05epsilon/kustomization.yaml: add service-values\r\n replacements matching nova04delta pattern\r\n - Remove deplicated replacements for\r\n dt/nova/nova05epsilon/control-plane/kustomization.yaml\r\n \ - examples/.../control-plane/service-values.yaml: add full DT-specific\r\n data (telemetry, nova, glance, ovn, extraMounts)\r\n \ - Set pvcStorageClass to lvms-local-storage and alertmanagerConfig\r\n \ replicas to 1 for SNO compatibility\r\n - update control-plane.md\r\n\r\n* Separate pre and post ceph OSCP configs \r\n\r\n \ HCI uses edpm post ceph to also patch the OSCP which looks suboptimal.\r\n\r\n Separate this into a two steps:\r\n - make post-ceph nodeset layer handling EDPM resources only (NodeSet,\r\n \ Services, Secrets, ConfigMap) - remove OSCP layer resources\r\n \ - add control-plane-post-ceph layer for OSCP with Glance RBD + Ceph\r\n extraMounts config. Use lib/control-plane/base instead of\r\n lib/control-plane which required network-values duplication\r\n otherwise. Since we're only patching glance config and extraMounts\r\n into an existing OSCP, that's all we need.\r\n - update README.md stages list from 4 to 6 steps, automation step\r\n count from 9 to 10\r\n - add note for defferred Ceph config for control-plane.md\r\n - add control-plane post-ceph doc for the dedicated Ceph\r\n control-plane update stage\r\n - remove control-plane update references for\r\n \ dataplane-post-ceph.md, add prerequisite for\r\n control-plane-post-ceph\r\n \ - add control-plane-post-ceph stage between pre-ceph deployment and\r\n post-ceph nodeset ini automation vars\r\n\r\nDepends-on: https://github.com/openstack-k8s-operators/ci-framework/pull/3773\r\nRelated: [OSPRH-30706](https://redhat.atlassian.net/browse/OSPRH-30706)" change_url: https://github.com/openstack-k8s-operators/architecture/pull/764 commit_id: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 patchset: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 project: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/architecture name: openstack-k8s-operators/architecture short_name: architecture src_dir: src/github.com/openstack-k8s-operators/architecture src_dir: src/github.com/openstack-k8s-operators/architecture topic: null change: '764' change_message: "nova05: follow up changes\n\n* Add cross-site routes/GWs\r\n\r\n \ For all nova05epsilon's NADs, NetConfig subnets, host-level NNCP routes add missing cross-site DCN routes, \r\n and gateways.\r\n\r\n \ Previsourely those were tested in ci-framework jobs overlays but the base DT example was missing those \r\n CHANGEME templates.\r\n\r\n* Add SNO Swift fix hook for Ceph RGW\r\n\r\n* Ext net for tests accessing VMs via FIP\r\n\r\n Add external NAD definition with VLAN to DT nncp/values.yaml.\r\n Update scenario-vars.yaml with external NAD for Tempest access to FIP.\r\n \r\n* Add automation mocks for CI\r\n\r\n* Fix telemetry spec and kustomize chain for SNO \r\n\r\n \ The DT-level kustomization was missing service-values replacements\r\n \ (telemetry, nova, glance, ovn, extraMounts), so the examples kustomize\r\n \ build produced base defaults instead of DT-specific config. This caused\r\n metricStorage.enabled=false and missing alertmanagerConfig on the\r\n deployed OSCP.\r\n\r\n Additionally, pvcStorageClass was hardcoded to \"local-storage\" but SNO\r\n uses LVMS (\"lvms-local-storage\"), and alertmanager defaulted to 2\r\n replicas which cannot schedule on a single node due to required\r\n pod anti-affinity.\r\n\r\n \ Align the kustomization layers with nova04delta:\r\n - dt/nova/nova05epsilon/kustomization.yaml: add service-values\r\n replacements matching nova04delta pattern\r\n \ - Remove deplicated replacements for\r\n dt/nova/nova05epsilon/control-plane/kustomization.yaml\r\n \ - examples/.../control-plane/service-values.yaml: add full DT-specific\r\n \ data (telemetry, nova, glance, ovn, extraMounts)\r\n - Set pvcStorageClass to lvms-local-storage and alertmanagerConfig\r\n replicas to 1 for SNO compatibility\r\n - update control-plane.md\r\n\r\n* Separate pre and post ceph OSCP configs \r\n\r\n \ HCI uses edpm post ceph to also patch the OSCP which looks suboptimal.\r\n\r\n \ Separate this into a two steps:\r\n - make post-ceph nodeset layer handling EDPM resources only (NodeSet,\r\n Services, Secrets, ConfigMap) - remove OSCP layer resources\r\n - add control-plane-post-ceph layer for OSCP with Glance RBD + Ceph\r\n extraMounts config. Use lib/control-plane/base instead of\r\n lib/control-plane which required network-values duplication\r\n otherwise. Since we're only patching glance config and extraMounts\r\n into an existing OSCP, that's all we need.\r\n - update README.md stages list from 4 to 6 steps, automation step\r\n count from 9 to 10\r\n - add note for defferred Ceph config for control-plane.md\r\n - add control-plane post-ceph doc for the dedicated Ceph\r\n control-plane update stage\r\n - remove control-plane update references for\r\n \ dataplane-post-ceph.md, add prerequisite for\r\n control-plane-post-ceph\r\n \ - add control-plane-post-ceph stage between pre-ceph deployment and\r\n post-ceph nodeset ini automation vars\r\n\r\nDepends-on: https://github.com/openstack-k8s-operators/ci-framework/pull/3773\r\nRelated: [OSPRH-30706](https://redhat.atlassian.net/browse/OSPRH-30706)" change_url: https://github.com/openstack-k8s-operators/architecture/pull/764 child_jobs: [] commit_id: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 event_id: a652a470-64b8-11f1-977f-fafbc978e904 executor: hostname: 38.129.56.84 inventory_file: /var/lib/zuul/builds/0fdf8d81e670451a8fb81f0291b4002f/ansible/inventory.yaml log_root: /var/lib/zuul/builds/0fdf8d81e670451a8fb81f0291b4002f/work/logs result_data_file: /var/lib/zuul/builds/0fdf8d81e670451a8fb81f0291b4002f/work/results.json src_root: /var/lib/zuul/builds/0fdf8d81e670451a8fb81f0291b4002f/work/src work_root: /var/lib/zuul/builds/0fdf8d81e670451a8fb81f0291b4002f/work include_vars: [] items: - branch: main change: '3773' change_message: "[multiple] nova05epsilon: adjust Ceph for BM SNO DCN cases\n\n1. Adjust ceph.yml post_stage_run hook for DCN conventions\r\n\r\n \ The ceph.yml post_stage_run hook (via cifmw_ceph_client role) writes Ceph config files to \r\n cifmw_ceph_client_fetch_dir (default /tmp/). This template reads those files and provides them as base64-\r\n encoded values under data.ceph_conf (DCN convention).\r\n\r\n2. Allow overriding ssh and storage_mgmt\r\n \ \r\n To allow BM SNO with ceph using custom ceph CIDR values,\r\n \ make ssh_network_range and storage_mgmt_network_range overridable via\r\n cifmw_ceph_ssh_network_range and cifmw_ceph_storage_mgmt_network_range.\r\n \ Both are set in set_fact which clobbers extra vars, so we use the\r\n cifmw_ indirection with default() to preserve original defaults.\r\n \r\n NOTE: storage_network_range also needs this treatment.\r\n It use to be commented out in set_fact, and this change needs\r\n extra testing with Ceph ci jobs perhaps.\r\n\r\n \ Also gather network facts for IP-to-host mapping. \r\n\r\n3. Add a hook for Swift and Ceph RWG on SNO \r\n\r\n \ On SNO with a single EDPM compute (single-host CephHCI), the Ceph\r\n ingress service (haproxy/keepalived) is not deployed because the\r\n ceph_rgw.yml.j2 spec template only creates it for multi-host clusters.\r\n\r\n Add a hook to correct the Keystone Swift endpoint for this case.\r\n\r\n The proper fix belongs in cifmw_cephadm/tasks/configure_object.yml\r\n which should detect whether ingress is deployed and choose VIP:8080\r\n \ vs host_ip:8082 accordingly.\r\n\r\nJira: [OSPRH-27641](https://redhat.atlassian.net/browse/OSPRH-27641)\r\nGenerated-by: claude-4.6-opus-high" change_url: https://github.com/openstack-k8s-operators/ci-framework/pull/3773 commit_id: b078db7b2836cd7c168de9d1a4db38983af17642 patchset: b078db7b2836cd7c168de9d1a4db38983af17642 project: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/ci-framework name: openstack-k8s-operators/ci-framework short_name: ci-framework src_dir: src/github.com/openstack-k8s-operators/ci-framework topic: null - branch: main change: '764' change_message: "nova05: follow up changes\n\n* Add cross-site routes/GWs\r\n\r\n \ For all nova05epsilon's NADs, NetConfig subnets, host-level NNCP routes add missing cross-site DCN routes, \r\n and gateways.\r\n\r\n \ Previsourely those were tested in ci-framework jobs overlays but the base DT example was missing those \r\n CHANGEME templates.\r\n\r\n* Add SNO Swift fix hook for Ceph RGW\r\n\r\n* Ext net for tests accessing VMs via FIP\r\n\r\n Add external NAD definition with VLAN to DT nncp/values.yaml.\r\n Update scenario-vars.yaml with external NAD for Tempest access to FIP.\r\n \r\n* Add automation mocks for CI\r\n\r\n* Fix telemetry spec and kustomize chain for SNO \r\n\r\n \ The DT-level kustomization was missing service-values replacements\r\n \ (telemetry, nova, glance, ovn, extraMounts), so the examples kustomize\r\n build produced base defaults instead of DT-specific config. This caused\r\n metricStorage.enabled=false and missing alertmanagerConfig on the\r\n deployed OSCP.\r\n\r\n Additionally, pvcStorageClass was hardcoded to \"local-storage\" but SNO\r\n \ uses LVMS (\"lvms-local-storage\"), and alertmanager defaulted to 2\r\n replicas which cannot schedule on a single node due to required\r\n pod anti-affinity.\r\n\r\n Align the kustomization layers with nova04delta:\r\n - dt/nova/nova05epsilon/kustomization.yaml: add service-values\r\n replacements matching nova04delta pattern\r\n - Remove deplicated replacements for\r\n dt/nova/nova05epsilon/control-plane/kustomization.yaml\r\n \ - examples/.../control-plane/service-values.yaml: add full DT-specific\r\n data (telemetry, nova, glance, ovn, extraMounts)\r\n \ - Set pvcStorageClass to lvms-local-storage and alertmanagerConfig\r\n \ replicas to 1 for SNO compatibility\r\n - update control-plane.md\r\n\r\n* Separate pre and post ceph OSCP configs \r\n\r\n \ HCI uses edpm post ceph to also patch the OSCP which looks suboptimal.\r\n\r\n Separate this into a two steps:\r\n - make post-ceph nodeset layer handling EDPM resources only (NodeSet,\r\n \ Services, Secrets, ConfigMap) - remove OSCP layer resources\r\n \ - add control-plane-post-ceph layer for OSCP with Glance RBD + Ceph\r\n extraMounts config. Use lib/control-plane/base instead of\r\n lib/control-plane which required network-values duplication\r\n otherwise. Since we're only patching glance config and extraMounts\r\n into an existing OSCP, that's all we need.\r\n - update README.md stages list from 4 to 6 steps, automation step\r\n count from 9 to 10\r\n - add note for defferred Ceph config for control-plane.md\r\n - add control-plane post-ceph doc for the dedicated Ceph\r\n control-plane update stage\r\n - remove control-plane update references for\r\n \ dataplane-post-ceph.md, add prerequisite for\r\n control-plane-post-ceph\r\n \ - add control-plane-post-ceph stage between pre-ceph deployment and\r\n post-ceph nodeset ini automation vars\r\n\r\nDepends-on: https://github.com/openstack-k8s-operators/ci-framework/pull/3773\r\nRelated: [OSPRH-30706](https://redhat.atlassian.net/browse/OSPRH-30706)" change_url: https://github.com/openstack-k8s-operators/architecture/pull/764 commit_id: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 patchset: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 project: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/architecture name: openstack-k8s-operators/architecture short_name: architecture src_dir: src/github.com/openstack-k8s-operators/architecture topic: null job: rhoso-architecture-validate-nova05epsilon jobtags: [] max_attempts: 3 message: bm92YTA1OiBmb2xsb3cgdXAgY2hhbmdlcwoKKiBBZGQgY3Jvc3Mtc2l0ZSByb3V0ZXMvR1dzDQoNCiAgIEZvciBhbGwgbm92YTA1ZXBzaWxvbidzIE5BRHMsIE5ldENvbmZpZyBzdWJuZXRzLCBob3N0LWxldmVsIE5OQ1Agcm91dGVzIGFkZCBtaXNzaW5nIGNyb3NzLXNpdGUgRENOIHJvdXRlcywgDQogICBhbmQgZ2F0ZXdheXMuDQoNCiAgIFByZXZpc291cmVseSB0aG9zZSB3ZXJlIHRlc3RlZCBpbiBjaS1mcmFtZXdvcmsgam9icyBvdmVybGF5cyBidXQgdGhlIGJhc2UgRFQgZXhhbXBsZSB3YXMgbWlzc2luZyB0aG9zZSAgIA0KICAgQ0hBTkdFTUUgdGVtcGxhdGVzLg0KDQoqIEFkZCBTTk8gU3dpZnQgZml4IGhvb2sgZm9yIENlcGggUkdXDQoNCiogRXh0IG5ldCBmb3IgdGVzdHMgYWNjZXNzaW5nIFZNcyB2aWEgRklQDQoNCiAgIEFkZCBleHRlcm5hbCBOQUQgZGVmaW5pdGlvbiB3aXRoIFZMQU4gdG8gRFQgbm5jcC92YWx1ZXMueWFtbC4NCiAgIFVwZGF0ZSBzY2VuYXJpby12YXJzLnlhbWwgd2l0aCBleHRlcm5hbCBOQUQgZm9yIFRlbXBlc3QgYWNjZXNzIHRvIEZJUC4NCiAgICANCiogQWRkIGF1dG9tYXRpb24gbW9ja3MgZm9yIENJDQoNCiogRml4IHRlbGVtZXRyeSBzcGVjIGFuZCBrdXN0b21pemUgY2hhaW4gZm9yIFNOTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KICAgIFRoZSBEVC1sZXZlbCBrdXN0b21pemF0aW9uIHdhcyBtaXNzaW5nIHNlcnZpY2UtdmFsdWVzIHJlcGxhY2VtZW50cw0KICAgICh0ZWxlbWV0cnksIG5vdmEsIGdsYW5jZSwgb3ZuLCBleHRyYU1vdW50cyksIHNvIHRoZSBleGFtcGxlcyBrdXN0b21pemUNCiAgICBidWlsZCBwcm9kdWNlZCBiYXNlIGRlZmF1bHRzIGluc3RlYWQgb2YgRFQtc3BlY2lmaWMgY29uZmlnLiBUaGlzIGNhdXNlZA0KICAgIG1ldHJpY1N0b3JhZ2UuZW5hYmxlZD1mYWxzZSBhbmQgbWlzc2luZyBhbGVydG1hbmFnZXJDb25maWcgb24gdGhlDQogICAgZGVwbG95ZWQgT1NDUC4NCg0KICAgIEFkZGl0aW9uYWxseSwgcHZjU3RvcmFnZUNsYXNzIHdhcyBoYXJkY29kZWQgdG8gImxvY2FsLXN0b3JhZ2UiIGJ1dCBTTk8NCiAgICB1c2VzIExWTVMgKCJsdm1zLWxvY2FsLXN0b3JhZ2UiKSwgYW5kIGFsZXJ0bWFuYWdlciBkZWZhdWx0ZWQgdG8gMg0KICAgIHJlcGxpY2FzIHdoaWNoIGNhbm5vdCBzY2hlZHVsZSBvbiBhIHNpbmdsZSBub2RlIGR1ZSB0byByZXF1aXJlZA0KICAgIHBvZCBhbnRpLWFmZmluaXR5Lg0KDQogICAgQWxpZ24gdGhlIGt1c3RvbWl6YXRpb24gbGF5ZXJzIHdpdGggbm92YTA0ZGVsdGE6DQogICAgLSBkdC9ub3ZhL25vdmEwNWVwc2lsb24va3VzdG9taXphdGlvbi55YW1sOiBhZGQgc2VydmljZS12YWx1ZXMNCiAgICAgIHJlcGxhY2VtZW50cyBtYXRjaGluZyBub3ZhMDRkZWx0YSBwYXR0ZXJuDQogICAgLSBSZW1vdmUgZGVwbGljYXRlZCByZXBsYWNlbWVudHMgZm9yDQogICAgICBkdC9ub3ZhL25vdmEwNWVwc2lsb24vY29udHJvbC1wbGFuZS9rdXN0b21pemF0aW9uLnlhbWwNCiAgICAtIGV4YW1wbGVzLy4uLi9jb250cm9sLXBsYW5lL3NlcnZpY2UtdmFsdWVzLnlhbWw6IGFkZCBmdWxsIERULXNwZWNpZmljDQogICAgICBkYXRhICh0ZWxlbWV0cnksIG5vdmEsIGdsYW5jZSwgb3ZuLCBleHRyYU1vdW50cykNCiAgICAtIFNldCBwdmNTdG9yYWdlQ2xhc3MgdG8gbHZtcy1sb2NhbC1zdG9yYWdlIGFuZCBhbGVydG1hbmFnZXJDb25maWcNCiAgICAgIHJlcGxpY2FzIHRvIDEgZm9yIFNOTyBjb21wYXRpYmlsaXR5DQogICAgLSB1cGRhdGUgY29udHJvbC1wbGFuZS5tZA0KDQoqIFNlcGFyYXRlIHByZSBhbmQgcG9zdCBjZXBoIE9TQ1AgY29uZmlncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCiAgICBIQ0kgdXNlcyBlZHBtIHBvc3QgY2VwaCB0byBhbHNvIHBhdGNoIHRoZSBPU0NQIHdoaWNoIGxvb2tzIHN1Ym9wdGltYWwuDQoNCiAgICBTZXBhcmF0ZSB0aGlzIGludG8gYSB0d28gc3RlcHM6DQogICAgLSBtYWtlIHBvc3QtY2VwaCBub2Rlc2V0IGxheWVyIGhhbmRsaW5nIEVEUE0gcmVzb3VyY2VzIG9ubHkgKE5vZGVTZXQsDQogICAgICBTZXJ2aWNlcywgU2VjcmV0cywgQ29uZmlnTWFwKSAtIHJlbW92ZSBPU0NQIGxheWVyIHJlc291cmNlcw0KICAgIC0gYWRkIGNvbnRyb2wtcGxhbmUtcG9zdC1jZXBoIGxheWVyIGZvciBPU0NQIHdpdGggR2xhbmNlIFJCRCArIENlcGgNCiAgICAgIGV4dHJhTW91bnRzIGNvbmZpZy4gVXNlIGxpYi9jb250cm9sLXBsYW5lL2Jhc2UgaW5zdGVhZCBvZg0KICAgICAgbGliL2NvbnRyb2wtcGxhbmUgd2hpY2ggcmVxdWlyZWQgbmV0d29yay12YWx1ZXMgZHVwbGljYXRpb24NCiAgICAgIG90aGVyd2lzZS4gU2luY2Ugd2UncmUgb25seSBwYXRjaGluZyBnbGFuY2UgY29uZmlnIGFuZCBleHRyYU1vdW50cw0KICAgICAgaW50byBhbiBleGlzdGluZyBPU0NQLCB0aGF0J3MgYWxsIHdlIG5lZWQuDQogICAgLSB1cGRhdGUgUkVBRE1FLm1kIHN0YWdlcyBsaXN0IGZyb20gNCB0byA2IHN0ZXBzLCBhdXRvbWF0aW9uIHN0ZXANCiAgICAgIGNvdW50IGZyb20gOSB0byAxMA0KICAgIC0gYWRkIG5vdGUgZm9yIGRlZmZlcnJlZCBDZXBoIGNvbmZpZyBmb3IgY29udHJvbC1wbGFuZS5tZA0KICAgIC0gYWRkIGNvbnRyb2wtcGxhbmUgcG9zdC1jZXBoIGRvYyBmb3IgdGhlIGRlZGljYXRlZCBDZXBoDQogICAgICBjb250cm9sLXBsYW5lIHVwZGF0ZSBzdGFnZQ0KICAgIC0gcmVtb3ZlIGNvbnRyb2wtcGxhbmUgdXBkYXRlIHJlZmVyZW5jZXMgZm9yDQogICAgICBkYXRhcGxhbmUtcG9zdC1jZXBoLm1kLCBhZGQgcHJlcmVxdWlzaXRlIGZvcg0KICAgICAgY29udHJvbC1wbGFuZS1wb3N0LWNlcGgNCiAgICAtIGFkZCBjb250cm9sLXBsYW5lLXBvc3QtY2VwaCBzdGFnZSBiZXR3ZWVuIHByZS1jZXBoIGRlcGxveW1lbnQgYW5kDQogICAgICBwb3N0LWNlcGggbm9kZXNldCBpbmkgYXV0b21hdGlvbiB2YXJzDQoNCkRlcGVuZHMtb246IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuc3RhY2stazhzLW9wZXJhdG9ycy9jaS1mcmFtZXdvcmsvcHVsbC8zNzczDQpSZWxhdGVkOiBbT1NQUkgtMzA3MDZdKGh0dHBzOi8vcmVkaGF0LmF0bGFzc2lhbi5uZXQvYnJvd3NlL09TUFJILTMwNzA2KQ== patchset: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 pipeline: github-check playbook_context: playbook_projects: trusted/project_0/review.rdoproject.org/config: canonical_name: review.rdoproject.org/config checkout: master commit: 4605eaf5fa5cd3f351940ab9df8f9f0ea6b97ad5 trusted/project_1/opendev.org/zuul/zuul-jobs: canonical_name: opendev.org/zuul/zuul-jobs checkout: master commit: 82e3e8b1292a25e38235bb92b157992d326531d1 trusted/project_2/review.rdoproject.org/rdo-jobs: canonical_name: review.rdoproject.org/rdo-jobs checkout: master commit: ae3f884c6c8c32b779dc61f758c0f6a43ade6877 untrusted/project_0/github.com/openstack-k8s-operators/ci-framework: canonical_name: github.com/openstack-k8s-operators/ci-framework checkout: main commit: b078db7b2836cd7c168de9d1a4db38983af17642 untrusted/project_1/review.rdoproject.org/config: canonical_name: review.rdoproject.org/config checkout: master commit: 4605eaf5fa5cd3f351940ab9df8f9f0ea6b97ad5 untrusted/project_2/opendev.org/zuul/zuul-jobs: canonical_name: opendev.org/zuul/zuul-jobs checkout: master commit: 82e3e8b1292a25e38235bb92b157992d326531d1 untrusted/project_3/review.rdoproject.org/rdo-jobs: canonical_name: review.rdoproject.org/rdo-jobs checkout: master commit: ae3f884c6c8c32b779dc61f758c0f6a43ade6877 playbooks: - path: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework/ci/playbooks/architecture/run.yml roles: - checkout: main checkout_description: playbook branch link_name: ansible/playbook_0/role_0/ci-framework link_target: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework role_path: ansible/playbook_0/role_0/ci-framework/roles - checkout: master checkout_description: project default branch link_name: ansible/playbook_0/role_1/config link_target: untrusted/project_1/review.rdoproject.org/config role_path: ansible/playbook_0/role_1/config/roles - checkout: master checkout_description: project default branch link_name: ansible/playbook_0/role_2/zuul-jobs link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs role_path: ansible/playbook_0/role_2/zuul-jobs/roles - checkout: master checkout_description: project default branch link_name: ansible/playbook_0/role_3/rdo-jobs link_target: untrusted/project_3/review.rdoproject.org/rdo-jobs role_path: ansible/playbook_0/role_3/rdo-jobs/roles post_playbooks: - path: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework/ci/playbooks/collect-logs.yml roles: - checkout: main checkout_description: playbook branch link_name: ansible/post_playbook_0/role_0/ci-framework link_target: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework role_path: ansible/post_playbook_0/role_0/ci-framework/roles - checkout: master checkout_description: project default branch link_name: ansible/post_playbook_0/role_1/config link_target: untrusted/project_1/review.rdoproject.org/config role_path: ansible/post_playbook_0/role_1/config/roles - checkout: master checkout_description: project default branch link_name: ansible/post_playbook_0/role_2/zuul-jobs link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs role_path: ansible/post_playbook_0/role_2/zuul-jobs/roles - checkout: master checkout_description: project default branch link_name: ansible/post_playbook_0/role_3/rdo-jobs link_target: untrusted/project_3/review.rdoproject.org/rdo-jobs role_path: ansible/post_playbook_0/role_3/rdo-jobs/roles - path: trusted/project_0/review.rdoproject.org/config/playbooks/base-minimal/post-ssh.yaml roles: - checkout: master checkout_description: playbook branch link_name: ansible/post_playbook_1/role_0/config link_target: trusted/project_0/review.rdoproject.org/config role_path: ansible/post_playbook_1/role_0/config/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: master checkout_description: project default branch link_name: ansible/post_playbook_1/role_2/rdo-jobs link_target: trusted/project_2/review.rdoproject.org/rdo-jobs role_path: ansible/post_playbook_1/role_2/rdo-jobs/roles - path: trusted/project_0/review.rdoproject.org/config/playbooks/base-minimal/post-logs.yaml roles: - checkout: master checkout_description: playbook branch link_name: ansible/post_playbook_2/role_0/config link_target: trusted/project_0/review.rdoproject.org/config role_path: ansible/post_playbook_2/role_0/config/roles - checkout: master checkout_description: project default branch link_name: ansible/post_playbook_2/role_1/zuul-jobs link_target: trusted/project_1/opendev.org/zuul/zuul-jobs role_path: ansible/post_playbook_2/role_1/zuul-jobs/roles - checkout: master checkout_description: project default branch link_name: ansible/post_playbook_2/role_2/rdo-jobs link_target: trusted/project_2/review.rdoproject.org/rdo-jobs role_path: ansible/post_playbook_2/role_2/rdo-jobs/roles pre_playbooks: - path: trusted/project_0/review.rdoproject.org/config/playbooks/base-minimal/pre.yaml roles: - checkout: master checkout_description: playbook branch link_name: ansible/pre_playbook_0/role_0/config link_target: trusted/project_0/review.rdoproject.org/config role_path: ansible/pre_playbook_0/role_0/config/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: master checkout_description: project default branch link_name: ansible/pre_playbook_0/role_2/rdo-jobs link_target: trusted/project_2/review.rdoproject.org/rdo-jobs role_path: ansible/pre_playbook_0/role_2/rdo-jobs/roles - path: trusted/project_0/review.rdoproject.org/config/playbooks/ci-framework-rdo-base/pre.yaml roles: - checkout: master checkout_description: playbook branch link_name: ansible/pre_playbook_1/role_0/config link_target: trusted/project_0/review.rdoproject.org/config role_path: ansible/pre_playbook_1/role_0/config/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_1/role_1/zuul-jobs link_target: trusted/project_1/opendev.org/zuul/zuul-jobs role_path: ansible/pre_playbook_1/role_1/zuul-jobs/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_1/role_2/rdo-jobs link_target: trusted/project_2/review.rdoproject.org/rdo-jobs role_path: ansible/pre_playbook_1/role_2/rdo-jobs/roles - path: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework/ci/playbooks/e2e-prepare.yml roles: - checkout: main checkout_description: playbook branch link_name: ansible/pre_playbook_2/role_0/ci-framework link_target: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework role_path: ansible/pre_playbook_2/role_0/ci-framework/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_2/role_1/config link_target: untrusted/project_1/review.rdoproject.org/config role_path: ansible/pre_playbook_2/role_1/config/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_2/role_2/zuul-jobs link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs role_path: ansible/pre_playbook_2/role_2/zuul-jobs/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_2/role_3/rdo-jobs link_target: untrusted/project_3/review.rdoproject.org/rdo-jobs role_path: ansible/pre_playbook_2/role_3/rdo-jobs/roles - path: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework/ci/playbooks/dump_zuul_data.yml roles: - checkout: main checkout_description: playbook branch link_name: ansible/pre_playbook_3/role_0/ci-framework link_target: untrusted/project_0/github.com/openstack-k8s-operators/ci-framework role_path: ansible/pre_playbook_3/role_0/ci-framework/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_3/role_1/config link_target: untrusted/project_1/review.rdoproject.org/config role_path: ansible/pre_playbook_3/role_1/config/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_3/role_2/zuul-jobs link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs role_path: ansible/pre_playbook_3/role_2/zuul-jobs/roles - checkout: master checkout_description: project default branch link_name: ansible/pre_playbook_3/role_3/rdo-jobs link_target: untrusted/project_3/review.rdoproject.org/rdo-jobs role_path: ansible/pre_playbook_3/role_3/rdo-jobs/roles post_review: false post_timeout: 5400 pre_timeout: null project: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/architecture name: openstack-k8s-operators/architecture short_name: architecture src_dir: src/github.com/openstack-k8s-operators/architecture projects: github.com/openstack-k8s-operators/architecture: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/architecture checkout: main checkout_description: zuul branch commit: 0b0dfbbb809e5b00d179fed9d86e24f00ac11c13 name: openstack-k8s-operators/architecture required: true short_name: architecture src_dir: src/github.com/openstack-k8s-operators/architecture github.com/openstack-k8s-operators/ci-framework: canonical_hostname: github.com canonical_name: github.com/openstack-k8s-operators/ci-framework checkout: main checkout_description: zuul branch commit: b078db7b2836cd7c168de9d1a4db38983af17642 name: openstack-k8s-operators/ci-framework required: true short_name: ci-framework src_dir: src/github.com/openstack-k8s-operators/ci-framework opendev.org/zuul/zuul-jobs: canonical_hostname: opendev.org canonical_name: opendev.org/zuul/zuul-jobs checkout: master checkout_description: project default branch commit: 82e3e8b1292a25e38235bb92b157992d326531d1 name: zuul/zuul-jobs required: true short_name: zuul-jobs src_dir: src/opendev.org/zuul/zuul-jobs ref: refs/pull/764/head resources: {} tenant: rdoproject.org timeout: 1800 topic: null voting: true