From 464b70dabe60f97dbd8ac22c5a2ed5b1dc3275f9 Mon Sep 17 00:00:00 2001 From: Jiri Podivin Date: Mon, 8 Nov 2021 16:52:39 +0100 Subject: [PATCH] CI task for execution of all packaged validations Task 'execute_full_catalogue' invokes validation command with list of validations constituting entirety of the existing catalogue. Validations that are to be executed are listed in the variables fail of the 'validations' role. Removal of the validation from the list has to be accompanied by placement of the aformentioned validation in the commented form beneath the list. With a concise reasoning as to why was it removed. Signed-off-by: Jiri Podivin Change-Id: Iea16cdc46db53cb290f7d31436864436fd31dd40 --- roles/validations/defaults/main.yaml | 1 + .../tasks/execute_full_catalogue.yaml | 15 ++++ roles/validations/tasks/main.yaml | 4 + roles/validations/vars/main.yaml | 89 +++++++++++++++++++ 4 files changed, 109 insertions(+) create mode 100644 roles/validations/tasks/execute_full_catalogue.yaml diff --git a/roles/validations/defaults/main.yaml b/roles/validations/defaults/main.yaml index c95fd2b..3440a1d 100644 --- a/roles/validations/defaults/main.yaml +++ b/roles/validations/defaults/main.yaml @@ -16,3 +16,4 @@ validation_component: "{{ job.component|default('validation') }}" # calls. cli_command: "validation" run_validation: true +execute_full_vf_catalogue: "{{ job.execute_full_vf_catalogue|default(false)|bool }}" diff --git a/roles/validations/tasks/execute_full_catalogue.yaml b/roles/validations/tasks/execute_full_catalogue.yaml new file mode 100644 index 0000000..e8fc6e0 --- /dev/null +++ b/roles/validations/tasks/execute_full_catalogue.yaml @@ -0,0 +1,15 @@ +--- +# Execute entire Validations Framework catalogue as provided +# by the validations-common and tripleo-validations packages. +# This task is intended to be used only by the RDO CI component pipeline. +# Executing it anywhere else might lead to unforseen consequences. +- name: Run validations catalogue + shell: + cmd: >- + {{ validation_command }} run --validation {{ validation_catalogue.full_list | join(",") }} + {{ validation_dir }} {{ ansible_dir }} + --inventory {{ inventory }} + --output-log validation_catalogue_execution.log + {{ validation_catalogue.extra_args }} + {{ validation_catalogue.extra_env_args }} + executable: /bin/bash diff --git a/roles/validations/tasks/main.yaml b/roles/validations/tasks/main.yaml index 1803b37..7a37b55 100644 --- a/roles/validations/tasks/main.yaml +++ b/roles/validations/tasks/main.yaml @@ -92,3 +92,7 @@ - run_validation|default(false)|bool - validation_component | length > 0 with_dict: "{{ validations_list[validation_component] }}" + +- name: Execute entire validations catalogue + include_tasks: execute_full_catalogue.yaml + when: execute_full_vf_catalogue diff --git a/roles/validations/vars/main.yaml b/roles/validations/vars/main.yaml index 132639c..19d80bb 100644 --- a/roles/validations/vars/main.yaml +++ b/roles/validations/vars/main.yaml @@ -56,3 +56,92 @@ validation_list_formats: - table - value - yaml + +# Entire catalogue of validations to be executed in OVB environment +# extra_env_args and extra_args are shared for the execution +# Included validations will be sorted alphabetically. +validation_catalogue: + extra_args: "--extra-vars minimal_ram_gb=2" + extra_env_args: "{{ extra_env_vars | default('') }}" + full_list: + - 512e + - ceph-dependencies-installed + - check-cpu + - check-disk-space + - check-disk-space-pre-upgrade + - check-for-dangling-images + - check-ftype + - check-network-gateway + - check-ram + - check-selinux-mode + - container-status + - controller-token + - controller-ulimits + - ctlplane-ip-range + - dhcp-introspection + - dhcp-provisioning + - dns + - healthcheck-service-status + - image-serve + - mysql-open-files-limit + - neutron-sanity-check + - no-op + - nova-event-callback + - nova-svirt + - ntp + - openshift-nw-requirements + - openstack-endpoints + - overcloud-service-status + - rabbitmq-limits + - repos + - service-status + - tripleo-latest-packages-version + - undercloud-disk-space + - undercloud-disk-space-pre-upgrade + - undercloud-neutron-sanity-check + - undercloud-process-count + +# Following validations are disabled for purposes of catalogue testing + +# - ceilometerdb-size # Not present on the OVB deployment +# - system_encoding # Not present on the OVB deployment +# - ceph-ansible-installed # Not present on the OVB deployment +# - haproxy # Not present on the OVB deployment +# - no-op-firewall-nova-driver # Not present on the OVB deployment +# - containerized-undercloud-docker # Not present on the OVB deployment + +# Hostname prerequisites are not met + +# - ceph-health +# - ovs-dpdk-pmd-cpus-check + +# General validation superceded by 'tripleo-latest-packages-version' +# - check-latest-packages-version + +# Failing due to bugs +# - ceph-pg +# - check-uc-hostname +# - collect-flavors-and-verify-profiles +# - default-node-count +# - ironic-boot-configuration +# - network-environment +# - node-health +# - nova-status +# - stack-health +# - switch-vlans +# - undercloud-heat-purge-deleted +# - undercloud-tokenflush +# - validate-selinux + +# Real issues detedte by validations but not relevant +# - check-rhsm-version +# - check-undercloud-conf +# - node-disks +# - openshift-hw-requirements +# - pacemaker-status +# - stonith-exists +# - tls-everywhere-post-deployment +# - tls-everywhere-pre-deployment +# - tls-everywhere-prep +# - undercloud-debug +# - undercloud-service-status