diff --git a/ci/playbooks/pre-ci-bootstrap.yml b/ci/playbooks/bootstrap-networking-mapper.yml similarity index 94% rename from ci/playbooks/pre-ci-bootstrap.yml rename to ci/playbooks/bootstrap-networking-mapper.yml index ccd448c7d4..787fc9d7c3 100644 --- a/ci/playbooks/pre-ci-bootstrap.yml +++ b/ci/playbooks/bootstrap-networking-mapper.yml @@ -32,6 +32,7 @@ -i {{ ansible_user_dir }}/ci-framework-data/artifacts/zuul_inventory.yml -e @scenarios/centos-9/base.yml -e "@{{ ansible_user_dir }}/ci-framework-data/artifacts/parameters/zuul-params.yml" + -e cifmw_networking_mapper_ifaces_info_path=/etc/ci/env/interfaces-info.yml {% if nodepool is defined %} -e "@{{ ansible_user_dir }}/ci-framework-data/artifacts/nodepool_params.yml" {% endif %} diff --git a/ci/playbooks/edpm/fail.yml b/ci/playbooks/edpm/fail.yml new file mode 100644 index 0000000000..8ddb799f2c --- /dev/null +++ b/ci/playbooks/edpm/fail.yml @@ -0,0 +1,20 @@ +--- +- name: "Fail" + hosts: "{{ cifmw_zuul_target_host | default('all') }}" + gather_facts: true + tasks: + - name: Filter out host if needed + when: + - cifmw_zuul_target_host is defined + - cifmw_zuul_target_host != 'all' + - inventory_hostname != cifmw_zuul_target_host + ansible.builtin.meta: end_host + + - name: Remove the success flag to trigger the networks autohold mechanism + ansible.builtin.file: + path: "{{ ansible_user_dir }}/cifmw-success" + state: absent + + - name: Fail + ansible.builtin.fail: + msg: "Debug failure" diff --git a/hooks/playbooks/fetch_compute_facts.yml b/hooks/playbooks/fetch_compute_facts.yml index f7d5a9532d..5bdd181bc8 100644 --- a/hooks/playbooks/fetch_compute_facts.yml +++ b/hooks/playbooks/fetch_compute_facts.yml @@ -26,6 +26,9 @@ - name: Load parameters ansible.builtin.include_vars: dir: "{{ item }}" + ignore_unknown_extensions: True + extensions: + - 'yml' loop: - "{{ cifmw_basedir }}/artifacts/parameters" - "/etc/ci/env" diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml index 0a34670ca6..7d6b95cfed 100644 --- a/zuul.d/base.yaml +++ b/zuul.d/base.yaml @@ -216,6 +216,7 @@ required-projects: *multinode_edpm_rp roles: *multinode_edpm_roles pre-run: + - ci/playbooks/bootstrap-networking-mapper.yml - ci/playbooks/crc/reconfigure-kubelet.yml - ci/playbooks/multinode-customizations.yml post-run: *multinode_edpm_post_run @@ -231,11 +232,12 @@ parent: base-extracted-crc-ci-bootstrap-staging timeout: 10800 attempts: 1 - nodeset: centos-9-medium-centos-9-crc-extracted-2-39-0-3xl + nodeset: centos-9-medium-centos-9-crc-extracted-2-39-0-3xl-vexxhost irrelevant-files: *ir_files required-projects: *multinode_edpm_rp roles: *multinode_edpm_roles pre-run: + - ci/playbooks/bootstrap-networking-mapper.yml - ci/playbooks/crc/reconfigure-kubelet.yml - ci/playbooks/multinode-customizations.yml post-run: *multinode_edpm_post_run @@ -305,4 +307,4 @@ pre-run: - ci/playbooks/e2e-prepare.yml - ci/playbooks/dump_zuul_data.yml - - ci/playbooks/pre-ci-bootstrap.yml + - ci/playbooks/bootstrap-networking-mapper.yml diff --git a/zuul.d/edpm_multinode.yaml b/zuul.d/edpm_multinode.yaml index 32465a3cbe..96e1d2da4b 100644 --- a/zuul.d/edpm_multinode.yaml +++ b/zuul.d/edpm_multinode.yaml @@ -367,64 +367,6 @@ # TODO: to be removed after removing its dependency in ci-bootstrap crc_ci_bootstrap_networking: {} vars: &edpm_bootstrap_vars - cifmw_networking_definition: - networks: - default: - network: "192.168.122.0/24" - gateway: "192.168.122.1" - mtu: 1500 - internal-api: - network: "172.17.0.0/24" - gateway: "172.17.0.1" - vlan: 20 - storage: - network: "172.18.0.0/24" - gateway: "172.18.0.1" - vlan: 21 - tenant: - network: "172.19.0.0/24" - gateway: "172.19.0.1" - vlan: 22 - instances: - controller: - networks: - default: - ip: "192.168.122.11" - crc: - networks: - default: - ip: "192.168.122.10" - internal-api: - ip: "172.17.0.5" - storage: - ip: "172.18.0.5" - tenant: - ip: "172.19.0.5" - compute-0: - skip-nm-configuration: true - networks: - default: - ip: "192.168.122.100" - internal-api: - ip: "172.17.0.100" - trunk_parent: default - storage: - ip: "172.18.0.100" - trunk_parent: default - tenant: - ip: "172.19.0.100" - trunk_parent: default - cifmw_extras: - - '@scenarios/centos-9/multinode-ci.yml' - run: - - ci/playbooks/edpm/run.yml - -# Job with ci-bootstrap staging branch job - to be used to test ci-bootstrap -- job: - name: podified-multinode-edpm-deployment-crc-bootstrap-staging - parent: cifmw-podified-multinode-edpm-ci-bootstrap-staging - extra-vars: *edpm_bootstrap_extra_vars - vars: cifmw_networking_definition: networks: default: @@ -457,13 +399,13 @@ networks: default: {} internal-api: - trunk_parent: default + trunk-parent: default skip-nm-configuration: true tenant: - trunk_parent: default + trunk-parent: default skip-nm-configuration: true storage: - trunk_parent: default + trunk-parent: default skip-nm-configuration: true instances: controller: @@ -476,14 +418,51 @@ ip: "192.168.122.10" internal-api: ip: "172.17.0.5" - trunk_parent: default + trunk-parent: default storage: ip: "172.18.0.5" - trunk_parent: default + trunk-parent: default tenant: ip: "172.19.0.5" - trunk_parent: default + trunk-parent: default + cifmw_extras: + - '@scenarios/centos-9/multinode-ci.yml' + run: + - ci/playbooks/edpm/run.yml + +# Job with ci-bootstrap staging branch job - to be used to test ci-bootstrap +- job: + name: podified-multinode-edpm-deployment-crc-bootstrap-staging + parent: cifmw-podified-multinode-edpm-ci-bootstrap-staging + extra-vars: *edpm_bootstrap_extra_vars + vars: *edpm_bootstrap_vars + run: + - ci/playbooks/edpm/run.yml + +# TODO: Testing Ironic jobs definition +- job: + name: podified-multinode-edpm-deployment-crc-bootstrap-staging-ironic + parent: podified-multinode-edpm-deployment-crc-bootstrap-staging + vars: + cifmw_networking_mapper_definition_patch_02_bmaas_net: + networks: + baremetal: + network: "172.20.1.0/24" + gateway: "172.20.1.1" + mtu: 1500 + instances: + controller: + networks: + baremetal: + ip: "172.20.1.11" + skip-nm-configuration: true + crc: + networks: + baremetal: + ip: "172.20.1.5" + skip-nm-configuration: true cifmw_extras: - '@scenarios/centos-9/multinode-ci.yml' run: - ci/playbooks/edpm/run.yml + - ci/playbooks/edpm/fail.yml diff --git a/zuul.d/nodeset.yaml b/zuul.d/nodeset.yaml index 9fdc075b13..b9b1e09bbe 100644 --- a/zuul.d/nodeset.yaml +++ b/zuul.d/nodeset.yaml @@ -314,6 +314,23 @@ nodes: - crc +- nodeset: + name: centos-9-medium-centos-9-crc-extracted-2-39-0-3xl-vexxhost + nodes: + - name: controller + label: cloud-centos-9-stream-tripleo-vexxhost-medium + - name: compute-0 + label: cloud-centos-9-stream-tripleo-vexxhost + - name: crc + label: coreos-crc-extracted-2-39-0-3xl + groups: + - name: computes + nodes: + - compute-0 + - name: ocps + nodes: + - crc + - nodeset: name: centos-9-crc-2-39-0-6xlarge nodes: diff --git a/zuul.d/projects.yaml b/zuul.d/projects.yaml index 12f4f202f9..074011b984 100644 --- a/zuul.d/projects.yaml +++ b/zuul.d/projects.yaml @@ -2,105 +2,5 @@ github-check: jobs: - noop - - cifmw-pod-ansible-test - - cifmw-pod-k8s-snippets-source - - cifmw-pod-pre-commit - - cifmw-pod-zuul-files - - cifmw-content-provider-build-images - - cifmw-edpm-build-images - - cifmw-multinode-kuttl - - cifmw-tcib - - cifmw-architecture-validate-hci - - ci-framework-openstack-meta-content-provider - - build-push-container-cifmw-client - - cifmw-molecule-artifacts - - cifmw-molecule-build_containers - - cifmw-molecule-build_openstack_packages - - cifmw-molecule-build_push_container - - cifmw-molecule-cert_manager - - cifmw-molecule-ci_gen_kustomize_values - - cifmw-molecule-ci_local_storage - - cifmw-molecule-ci_lvms_storage - - cifmw-molecule-ci_metallb - - cifmw-molecule-ci_multus - - cifmw-molecule-ci_netconfig - - cifmw-molecule-ci_network - - cifmw-molecule-ci_nmstate - - cifmw-molecule-ci_setup - - cifmw-molecule-cifmw_block_device - - cifmw-molecule-cifmw_ceph_client - - cifmw-molecule-cifmw_ceph_spec - - cifmw-molecule-cifmw_cephadm - - cifmw-molecule-cifmw_create_admin - - cifmw-molecule-cifmw_external_dns - - cifmw-molecule-cifmw_ntp - - cifmw-molecule-cifmw_test_role - - cifmw-molecule-compliance - - cifmw-molecule-config_drive - - cifmw-molecule-copy_container - - cifmw-molecule-deploy_bmh - - cifmw-molecule-devscripts - - cifmw-molecule-discover_latest_image - - cifmw-molecule-dlrn_promote - - cifmw-molecule-dlrn_report - - cifmw-molecule-dnsmasq - - cifmw-molecule-edpm_build_images - - cifmw-molecule-edpm_deploy - - cifmw-molecule-edpm_deploy_baremetal - - cifmw-molecule-edpm_kustomize - - cifmw-molecule-edpm_prepare - - cifmw-molecule-env_op_images - - cifmw-molecule-hci_prepare - - cifmw-molecule-hive - - cifmw-molecule-idrac_configuration - - cifmw-molecule-install_ca - - cifmw-molecule-install_openstack_ca - - cifmw-molecule-install_yamls - - cifmw-molecule-kustomize_deploy - - cifmw-molecule-libvirt_manager - - cifmw-molecule-manage_secrets - - cifmw-molecule-mirror_registry - - cifmw-molecule-nat64_appliance - - cifmw-molecule-networking_mapper - - cifmw-molecule-openshift_adm - - cifmw-molecule-openshift_login - - cifmw-molecule-openshift_obs - - cifmw-molecule-openshift_provisioner_node - - cifmw-molecule-openshift_setup - - cifmw-molecule-operator_build - - cifmw-molecule-operator_deploy - - cifmw-molecule-os_must_gather - - cifmw-molecule-os_net_setup - - cifmw-molecule-ovirt - - cifmw-molecule-pkg_build - - cifmw-molecule-podman - - cifmw-molecule-polarion - - cifmw-molecule-registry_deploy - - cifmw-molecule-repo_setup - - cifmw-molecule-reportportal - - cifmw-molecule-reproducer - - cifmw-molecule-rhol_crc - - cifmw-molecule-run_hook - - cifmw-molecule-set_openstack_containers - - cifmw-molecule-shiftstack - - cifmw-molecule-ssh_jumper - - cifmw-molecule-sushy_emulator - - cifmw-molecule-switch_config - - cifmw-molecule-tempest - - cifmw-molecule-test_deps - - cifmw-molecule-test_operator - - cifmw-molecule-tofu - - cifmw-molecule-update - - cifmw-molecule-update_containers - - cifmw-molecule-validations - - cifmw-molecule-virtualbmc - github-experimental-trigger: - jobs: - - downstream-va-hci-trigger-job - github-post: - jobs: - - build-push-container-cifmw-client-post + - podified-multinode-edpm-deployment-crc-bootstrap-staging-ironic name: openstack-k8s-operators/ci-framework - templates: - - podified-multinode-edpm-ci-framework-pipeline - - data-plane-adoption-ci-framework-pipeline