From aa138e679a331e368a86f26d5f4ece03be16f3d4 Mon Sep 17 00:00:00 2001 From: Peter Mikus Date: Tue, 28 Apr 2020 12:50:18 +0000 Subject: Ansible: Pre-check tests Signed-off-by: Peter Mikus Change-Id: I745ceb519220c4d08951dff07350f2f4709f3533 --- .../ansible/roles/calibration/defaults/main.yaml | 13 +++++- .../ansible/roles/calibration/tasks/main.yaml | 50 +++++++++++++++------- 2 files changed, 47 insertions(+), 16 deletions(-) (limited to 'resources/tools/testbed-setup/ansible') diff --git a/resources/tools/testbed-setup/ansible/roles/calibration/defaults/main.yaml b/resources/tools/testbed-setup/ansible/roles/calibration/defaults/main.yaml index f7c37a764c..5be9fa93a5 100644 --- a/resources/tools/testbed-setup/ansible/roles/calibration/defaults/main.yaml +++ b/resources/tools/testbed-setup/ansible/roles/calibration/defaults/main.yaml @@ -1,6 +1,7 @@ --- # file: roles/calibration/defaults/main.yaml +# Packages to install. packages: "{{ packages_base + packages_by_distro[ansible_distribution | lower] + packages_by_arch[ansible_machine] }}" packages_base: @@ -17,6 +18,16 @@ packages_by_arch: x86_64: - [] +# Kernel version to check. +kernel_version: "{{ kernel_version_by_distro_by_arch[ansible_distribution | lower][ansible_machine] | join(' ') }}" + +kernel_version_by_distro_by_arch: + ubuntu: + x86_64: + - "4.15.0-72-generic" + aarch64: + - "4.15.0-54-generic" + pma_directory: "/tmp/pma_tools" jitter_core: 7 -jitter_iterations: 30 +jitter_iterations: 20 diff --git a/resources/tools/testbed-setup/ansible/roles/calibration/tasks/main.yaml b/resources/tools/testbed-setup/ansible/roles/calibration/tasks/main.yaml index dc789a7ec4..02a9ef3d00 100644 --- a/resources/tools/testbed-setup/ansible/roles/calibration/tasks/main.yaml +++ b/resources/tools/testbed-setup/ansible/roles/calibration/tasks/main.yaml @@ -1,9 +1,6 @@ --- # file: roles/calibration/tasks/main.yaml -- name: Print Ansible facts - debug: var=ansible_facts - - name: Calibration - Install Distribution - Release - Machine Prerequisites package: name: "{{ packages | flatten(levels=1) }}" @@ -12,6 +9,40 @@ tags: - install-dependencies +- name: Calibration - Check CPU Power States + shell: "lscpu" + register: current_lscpu + changed_when: false + failed_when: | + 'CPU min MHz' in current_lscpu.stdout and + 'Intel(R) Xeon(R)' in current_lscpu.stdout + tags: + - check-cpu-frequency + +- name: Calibration - Check Kernel Version of "{{ kernel_version }}" + shell: "uname -r" + register: current_kernel_version + changed_when: false + failed_when: | + kernel_version not in current_kernel_version.stdout + tags: + - check-kernel-version + +- name: Calibration - Check Kernel Parameters + shell: "cat /proc/cmdline" + register: current_kernel_parameters + changed_when: false + failed_when: | + 'isolcpus' not in current_kernel_parameters.stdout or + 'nohz_full' not in current_kernel_parameters.stdout or + 'rcu_nocbs' not in current_kernel_parameters.stdout or + 'processor.max_cstate=1' not in current_kernel_parameters.stdout or + 'nmi_watchdog=0' not in current_kernel_parameters.stdout or + 'intel_iommu=on' not in current_kernel_parameters.stdout or + 'nosoftlockup' not in current_kernel_parameters.stdout + tags: + - check-cmdline + - name: Calibration - Get Spectre Meltdown Checker get_url: url: "https://meltdown.ovh" @@ -24,7 +55,7 @@ shell: "/opt/spectre-meltdown-checker.sh --no-color || true" async: 60 poll: 0 - ignore_errors: yes + ignore_errors: true register: spectre_meltdown_async tags: - check-spectre-meltdown @@ -35,17 +66,6 @@ - check-machine-specific - check-jitter-tool -- name: Calibration - Get BIOS info - shell: "dmidecode -t bios" - ignore_errors: yes - register: dmidecode_bios - tags: - - check-bios - -- debug: var=dmidecode_bios.stdout_lines - tags: - - check-bios - - name: Check sync status async_status: jid: "{{ spectre_meltdown_async.ansible_job_id }}" -- cgit 1.2.3-korg