From 1d54cff1671d206cdc0f41895ef8208ec2e766ef Mon Sep 17 00:00:00 2001 From: Nik Everett Date: Fri, 14 Aug 2015 15:12:52 -0700 Subject: [PATCH] Test: Remove ES_CLEAN_BEFORE_TEST In the bats test ES_CLEAN_BEFORE_TEST was used to clean the environment before running the tests. Unfortunately the tests don't work unless you specify it every time. This removes that option and always runs the clean. --- TESTING.asciidoc | 6 +- qa/vagrant/pom.xml | 2 +- .../scripts/packaging_test_utils.bash | 72 ++++++++----------- 3 files changed, 34 insertions(+), 46 deletions(-) diff --git a/TESTING.asciidoc b/TESTING.asciidoc index 2a480c57676..f35d32d9d9f 100644 --- a/TESTING.asciidoc +++ b/TESTING.asciidoc @@ -473,11 +473,9 @@ and in another window: ---------------------------------------------------- vagrant up centos-7 && vagrant ssh centos-7 cd $RPM -sudo ES_CLEAN_BEFORE_TEST=true bats $BATS/*rpm*.bats +sudo bats $BATS/*rpm*.bats ---------------------------------------------------- -At this point `ES_CLEAN_BEFORE_TEST=true` is required or tests fail spuriously. - If you wanted to retest all the release artifacts on a single VM you could: ------------------------------------------------- # Build all the distributions fresh but skip recompiling elasticsearch: @@ -486,7 +484,7 @@ mvn -amd -pl distribution install -DskipTests mvn -Dtests.vagrant -pl qa/vagrant pre-integration-test vagrant up trusty && vagrant ssh trusty cd $TESTROOT -sudo ES_CLEAN_BEFORE_TEST=true bats $BATS/*.bats +sudo bats $BATS/*.bats ------------------------------------------------- == Coverage analysis diff --git a/qa/vagrant/pom.xml b/qa/vagrant/pom.xml index 06b72a9f260..11b6c0a6277 100644 --- a/qa/vagrant/pom.xml +++ b/qa/vagrant/pom.xml @@ -18,7 +18,7 @@ *.bats - sudo ES_CLEAN_BEFORE_TEST=true bats $BATS/${testScripts} + sudo bats $BATS/${testScripts} precise, trusty, vivid, wheezy, jessie centos-6, centos-7, fedora-22, oel-7 diff --git a/qa/vagrant/src/test/resources/packaging/scripts/packaging_test_utils.bash b/qa/vagrant/src/test/resources/packaging/scripts/packaging_test_utils.bash index b5fe262efd1..ffe8d86bdc6 100644 --- a/qa/vagrant/src/test/resources/packaging/scripts/packaging_test_utils.bash +++ b/qa/vagrant/src/test/resources/packaging/scripts/packaging_test_utils.bash @@ -305,51 +305,41 @@ clean_before_test() { "/usr/lib/tmpfiles.d/elasticsearch.conf" \ "/usr/lib/sysctl.d/elasticsearch.conf") - if [ "$ES_CLEAN_BEFORE_TEST" = "true" ]; then - # Kills all processes of user elasticsearch - if id elasticsearch > /dev/null 2>&1; then - pkill -u elasticsearch 2>/dev/null || true - fi - - # Kills all running Elasticsearch processes - ps aux | grep -i "org.elasticsearch.bootstrap.Elasticsearch" | awk {'print $2'} | xargs kill -9 > /dev/null 2>&1 || true - - # Removes RPM package - if is_rpm; then - rpm --quiet -e elasticsearch > /dev/null 2>&1 || true - fi - - if [ -x "`which yum 2>/dev/null`" ]; then - yum remove -y elasticsearch > /dev/null 2>&1 || true - fi - - # Removes DEB package - if is_dpkg; then - dpkg --purge elasticsearch > /dev/null 2>&1 || true - fi - - if [ -x "`which apt-get 2>/dev/null`" ]; then - apt-get --quiet --yes purge elasticsearch > /dev/null 2>&1 || true - fi - - # Removes user & group - userdel elasticsearch > /dev/null 2>&1 || true - groupdel elasticsearch > /dev/null 2>&1 || true - - - # Removes all files - for d in "${ELASTICSEARCH_TEST_FILES[@]}"; do - if [ -e "$d" ]; then - rm -rf "$d" - fi - done + # Kills all processes of user elasticsearch + if id elasticsearch > /dev/null 2>&1; then + pkill -u elasticsearch 2>/dev/null || true fi - # Checks that all files are deleted + # Kills all running Elasticsearch processes + ps aux | grep -i "org.elasticsearch.bootstrap.Elasticsearch" | awk {'print $2'} | xargs kill -9 > /dev/null 2>&1 || true + + # Removes RPM package + if is_rpm; then + rpm --quiet -e elasticsearch > /dev/null 2>&1 || true + fi + + if [ -x "`which yum 2>/dev/null`" ]; then + yum remove -y elasticsearch > /dev/null 2>&1 || true + fi + + # Removes DEB package + if is_dpkg; then + dpkg --purge elasticsearch > /dev/null 2>&1 || true + fi + + if [ -x "`which apt-get 2>/dev/null`" ]; then + apt-get --quiet --yes purge elasticsearch > /dev/null 2>&1 || true + fi + + # Removes user & group + userdel elasticsearch > /dev/null 2>&1 || true + groupdel elasticsearch > /dev/null 2>&1 || true + + + # Removes all files for d in "${ELASTICSEARCH_TEST_FILES[@]}"; do if [ -e "$d" ]; then - echo "$d should not exist before running the tests" >&2 - exit 1 + rm -rf "$d" fi done }