Browse Source

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 <jpodivin@redhat.com>
Change-Id: Iea16cdc46db53cb290f7d31436864436fd31dd40
changes/41/817041/9
Jiri Podivin 6 months ago
parent
commit
464b70dabe
  1. 1
      roles/validations/defaults/main.yaml
  2. 15
      roles/validations/tasks/execute_full_catalogue.yaml
  3. 4
      roles/validations/tasks/main.yaml
  4. 89
      roles/validations/vars/main.yaml

1
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 }}"

15
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

4
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

89
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

Loading…
Cancel
Save