From f2f50580f469db0e2bc6ceb5ef34f7657eb6c341 Mon Sep 17 00:00:00 2001 From: pierreozoux Date: Wed, 3 Dec 2014 17:10:44 +0000 Subject: [PATCH] Adds tests after reboot / big refactor --- README.md | 8 +++++++- tests/clean-image.sh | 10 +++++++--- tests/deep-clean.sh | 7 +++++++ tests/finish.sh | 11 +++++++++++ tests/image.sh | 23 ++++++----------------- tests/main.sh | 19 ------------------- tests/runtime-clean-image.sh | 10 ---------- tests/start.sh | 8 ++++++++ tests/test-image.sh | 13 +++++++++++++ 9 files changed, 59 insertions(+), 50 deletions(-) create mode 100755 tests/deep-clean.sh create mode 100755 tests/finish.sh delete mode 100755 tests/main.sh delete mode 100755 tests/runtime-clean-image.sh create mode 100755 tests/start.sh create mode 100755 tests/test-image.sh diff --git a/README.md b/README.md index f40a908..d1676cd 100644 --- a/README.md +++ b/README.md @@ -53,5 +53,11 @@ vagrant up # Set up example.dev as above, and test https://example.dev in your browser vagrant ssh core-1 sudo su -/data/indiehosters/tests/main.sh +/data/indiehosters/tests/start.sh +exit +exit +vagrant reload --provision +vagrant ssh core-1 +sudo su +/data/indiehosters/tests/finish.sh ``` diff --git a/tests/clean-image.sh b/tests/clean-image.sh index 5f667a0..8ce4cd8 100755 --- a/tests/clean-image.sh +++ b/tests/clean-image.sh @@ -2,7 +2,11 @@ image=$1 -/data/indiehosters/tests/runtime-clean-image.sh $image +systemctl stop *@$image.test.timer +systemctl stop *@$image.test +systemctl reset-failed +systemctl list-units | grep -c "$image\.test" | grep 0 +rm -rf /data/import/$image.test +rm -rf /data/runtime/domains/$image.test rm -rf /data/domains/$image.test - -ssh core@backup.dev "rm -rf $image.test" +systemctl disable $image@$image.test diff --git a/tests/deep-clean.sh b/tests/deep-clean.sh new file mode 100755 index 0000000..4da3fe0 --- /dev/null +++ b/tests/deep-clean.sh @@ -0,0 +1,7 @@ +#!/bin/bash -eux + +image=$1 + +/data/indiehosters/tests/clean-image.sh $image + +ssh core@backup.dev "rm -rf $image.test" diff --git a/tests/finish.sh b/tests/finish.sh new file mode 100755 index 0000000..9e776d9 --- /dev/null +++ b/tests/finish.sh @@ -0,0 +1,11 @@ +#!/bin/bash -eux + +systemctl list-units | grep failed + +applications=( static static-git wordpress known) + +for application in "${applications[@]}" +do + /data/indiehosters/tests/test-image.sh $application + /data/indiehosters/tests/deep-clean.sh $application +done diff --git a/tests/image.sh b/tests/image.sh index 0f9701a..f71ee41 100755 --- a/tests/image.sh +++ b/tests/image.sh @@ -15,26 +15,15 @@ fi # start image from import systemctl start $image@$image.test -if [ "$image" == "wordpress" ]; then - sleep 40 -else - sleep 10 -fi - # tests -systemctl list-units | grep "$image\.test" | grep -c failed | grep 0 -ip=`docker inspect --format {{.NetworkSettings.IPAddress}} $image-$image.test` -curl -L $ip +/data/indiehosters/tests/test-image.sh $image # start image from backup -/data/indiehosters/tests/runtime-clean-image.sh $image -if [ "$image" == "wordpress" ]; then - echo should fail until implementation of mysql backup importer -fi +## make sure to backup first +systemctl start backup@$image.test +/data/indiehosters/tests/clean-image.sh $image +systemctl enable $image@$image.test systemctl start $image@$image.test -sleep 10 # tests -systemctl list-units | grep "$image\.test" | grep -c failed | grep 0 -ip=`docker inspect --format {{.NetworkSettings.IPAddress}} $image-$image.test` -curl $ip +/data/indiehosters/tests/test-image.sh $image diff --git a/tests/main.sh b/tests/main.sh deleted file mode 100755 index ec4a303..0000000 --- a/tests/main.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -eux - -# testing static -/data/indiehosters/tests/image.sh static - -# clean static tests -/data/indiehosters/tests/clean-image.sh static - -# testing static-git -/data/indiehosters/tests/image.sh static-git - -# clean static tests -/data/indiehosters/tests/clean-image.sh static-git - -# testing wordpress -/data/indiehosters/tests/image.sh wordpress - -# clean static tests -/data/indiehosters/tests/clean-image.sh wordpress diff --git a/tests/runtime-clean-image.sh b/tests/runtime-clean-image.sh deleted file mode 100755 index 2766ebb..0000000 --- a/tests/runtime-clean-image.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -eux - -image=$1 - -systemctl stop *@$image.test.timer -systemctl stop *@$image.test -systemctl reset-failed -systemctl list-units | grep -c "$image\.test" | grep 0 -rm -rf /data/import/$image.test -rm -rf /data/runtime/domains/$image.test diff --git a/tests/start.sh b/tests/start.sh new file mode 100755 index 0000000..c5f9fe1 --- /dev/null +++ b/tests/start.sh @@ -0,0 +1,8 @@ +#!/bin/bash -eux + +applications=( static static-git wordpress known) + +for application in "${applications[@]}" +do + /data/indiehosters/tests/image.sh $application +done diff --git a/tests/test-image.sh b/tests/test-image.sh new file mode 100755 index 0000000..ee91f9b --- /dev/null +++ b/tests/test-image.sh @@ -0,0 +1,13 @@ +#!/bin/bash -eux + +image=$1 + +if [ "$image" == "wordpress" ] || [ "$image" == "known" ]; then + sleep 70 +else + sleep 10 +fi + +systemctl list-units | grep "$image\.test" | grep -c failed | grep 0 +ip=`docker inspect --format {{.NetworkSettings.IPAddress}} $image-$image.test` +curl -L $ip -- GitLab