diff options
author | Mike Gahagan <mgahagan@redhat.com> | 2017-10-04 15:15:53 -0400 |
---|---|---|
committer | Mike Gahagan <mgahagan@redhat.com> | 2017-10-04 15:15:53 -0400 |
commit | a9f8ddc13d87f2ea7c5685c417a3e427f889d575 (patch) | |
tree | e7b566dcd8d4622bd0ae7e47ddf475cf1df4e24c /check-system-settings | |
download | tuned-a9f8ddc13d87f2ea7c5685c417a3e427f889d575.tar.gz tuned-a9f8ddc13d87f2ea7c5685c417a3e427f889d575.tar.xz tuned-a9f8ddc13d87f2ea7c5685c417a3e427f889d575.zip |
Initial checkin of tuned tests (need library/base to be ported before these will work)
Diffstat (limited to 'check-system-settings')
-rw-r--r-- | check-system-settings/Makefile | 64 | ||||
-rw-r--r-- | check-system-settings/PURPOSE | 3 | ||||
-rwxr-xr-x | check-system-settings/runtest.sh | 90 |
3 files changed, 157 insertions, 0 deletions
diff --git a/check-system-settings/Makefile b/check-system-settings/Makefile new file mode 100644 index 0000000..747037b --- /dev/null +++ b/check-system-settings/Makefile @@ -0,0 +1,64 @@ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Makefile of /CoreOS/tuned/check-system-settings +# Description: Verify command which checks whether current system settings correspond to the set profile. +# Author: Tereza Cerna <tcerna@redhat.com> +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2015 Red Hat, Inc. +# +# This program is free software: you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see http://www.gnu.org/licenses/. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +export TEST=/CoreOS/tuned/check-system-settings +export TESTVERSION=1.1 + +BUILT_FILES= + +FILES=$(METADATA) runtest.sh Makefile PURPOSE + +.PHONY: all install download clean + +run: $(FILES) build + ./runtest.sh + +build: $(BUILT_FILES) + test -x runtest.sh || chmod a+x runtest.sh + +clean: + rm -f *~ $(BUILT_FILES) + + +include /usr/share/rhts/lib/rhts-make.include + +$(METADATA): Makefile + @echo "Owner: Tereza Cerna <tcerna@redhat.com>" > $(METADATA) + @echo "Name: $(TEST)" >> $(METADATA) + @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) + @echo "Path: $(TEST_DIR)" >> $(METADATA) + @echo "Description: Verify command which checks whether current system settings correspond to the set profile." >> $(METADATA) + @echo "Type: Sanity" >> $(METADATA) + @echo "TestTime: 10m" >> $(METADATA) + @echo "RunFor: tuned" >> $(METADATA) + @echo "Requires: tuned" >> $(METADATA) + @echo "Priority: Normal" >> $(METADATA) + @echo "License: GPLv2+" >> $(METADATA) + @echo "Confidential: no" >> $(METADATA) + @echo "Destructive: no" >> $(METADATA) + @echo "Bug: 1212836 1243807" >> $(METADATA) + @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) + + rhts-lint $(METADATA) diff --git a/check-system-settings/PURPOSE b/check-system-settings/PURPOSE new file mode 100644 index 0000000..6a46619 --- /dev/null +++ b/check-system-settings/PURPOSE @@ -0,0 +1,3 @@ +PURPOSE of /CoreOS/tuned/check-system-settings +Description: Verify command which checks whether current system settings correspond to the set profile. +Author: Tereza Cerna <tcerna@redhat.com> diff --git a/check-system-settings/runtest.sh b/check-system-settings/runtest.sh new file mode 100755 index 0000000..6662d42 --- /dev/null +++ b/check-system-settings/runtest.sh @@ -0,0 +1,90 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /CoreOS/tuned/check-system-settings +# Description: Verify command which checks whether current system settings correspond to the set profile. +# Author: Tereza Cerna <tcerna@redhat.com> +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2015 Red Hat, Inc. +# +# This program is free software: you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see http://www.gnu.org/licenses/. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +# Include Beaker environment +. /usr/bin/rhts-environment.sh || exit 1 +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PACKAGE="tuned" +red=`tput setaf 1; tput bold;` +green=`tput setaf 2; tput bold;` +reset=`tput sgr0` + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm $PACKAGE + rlImport "tuned/basic" + rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" + rlRun "pushd $TmpDir" + rlServiceStart "tuned" + tunedProfileBackup + rlPhaseEnd + + rlPhaseStartTest "Verify all profiles." + modprobe nf_conntrack + cd /usr/lib/tuned + for PROFILE in `tuned-adm list | grep "\- " | awk '{ print $2 }'` + do + rlLog "${green}Actual profile: $PROFILE${reset}" + rlRun "tuned-adm profile $PROFILE" + sleep 5 + rlRun "tuned-adm active | grep $PROFILE" + echo > /var/log/tuned/tuned.log; + rlRun "tuned-adm verify --ignore-missing" 0 "Current system setting corresponds with selected profile $PROFILE." + RESULT=$? + if [ $RESULT == 0 ]; then + echo "${green}---> Verification: PASS <---${reset}" + else + echo "${red}---> Verification: FAIL <--- ${reset}" + fi + echo "ERRORS in /var/log/tuned/tuned.log (This errors cannot be problem, only missing HW, etc.):" + tput setaf 1; + cat /var/log/tuned/tuned.log | grep ERROR + tput sgr0 + echo + done + cd - + rlPhaseEnd + + rlPhaseStartTest "Is error found by tuned-adm verify?" + rlRun "service tuned restart" + sleep 3 + rlRun "tuned-adm profile virtual-guest" + rlRun "tuned-adm active" + rlRun "tuned-adm verify --ignore-missing" 0 "Current system setting corresponds with selected profile $profile." + rlRun "sysctl vm.swappiness=77" + rlRun "tuned-adm verify --ignore-missing" 1 "Current system setting doens't correspond with selected profile $profile." + rlPhaseEnd + + rlPhaseStartCleanup + tunedProfileRestore + rlServiceRestore "tuned" + rlRun "popd" + rlRun "rm -r $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd |