run.sh 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/bin/bash
  2. exec 2>&1
  3. target="airtime_git_branch:2.5.x"
  4. #target="airtime_git_branch:airtime-2.0.0-RC1"
  5. #airtime_versions=("")
  6. airtime_versions=("airtime_241_tar")
  7. ubuntu_versions=("ubuntu_lucid_32" "ubuntu_lucid_64" "ubuntu_precise_32" "ubuntu_precise_64" "ubuntu_quantal_32" "ubuntu_quantal_64" "ubuntu_raring_32" "ubuntu_raring_64" "debian_squeeze_32" "debian_squeeze_64" "debian_wheezy_32" "debian_wheezy_64" "ubuntu_saucy_32" "ubuntu_saucy_64")
  8. #ubuntu_versions=("ubuntu_saucy_64" "ubuntu_saucy_32")
  9. num1=${#ubuntu_versions[@]}
  10. num2=${#airtime_versions[@]}
  11. upgrade_log_folder="upgrade_logs"
  12. rm -rf ./upgrade_logs
  13. mkdir -p ./upgrade_logs
  14. for i in $(seq 0 $(($num1 -1)));
  15. do
  16. #echo fab -f fab_setup.py os_update shutdown
  17. for j in $(seq 0 $(($num2 -1)));
  18. do
  19. #since 2.5.0 airtime start to support saucy, before that, we don't need to test on those combinations
  20. platform=`echo ${ubuntu_versions[$i]} | awk '/(saucy)/'`
  21. airtime=`echo ${airtime_versions[$j]} | awk '/2[2-4][0-3]/'`
  22. if [ "$platform" = "" ] || [ "$airtime" = "" ];then
  23. echo fab -f fab_release_test.py ${ubuntu_versions[$i]} ${airtime_versions[$j]} $target shutdown
  24. fab -f fab_release_test.py ${ubuntu_versions[$i]} ${airtime_versions[$j]} $target shutdown 2>&1 | tee "./$upgrade_log_folder/${ubuntu_versions[$i]}_${airtime_versions[$j]}_$target.log"
  25. #touch "./$upgrade_log_folder/${ubuntu_versions[$i]}_${airtime_versions[$j]}_$target.log"
  26. tail -20 "./$upgrade_log_folder/${ubuntu_versions[$i]}_${airtime_versions[$j]}_$target.log" | grep -E "Your installation of Airtime looks OK"
  27. returncode=$?
  28. if [ "$returncode" -ne "0" ]; then
  29. mv "./$upgrade_log_folder/${ubuntu_versions[$i]}_${airtime_versions[$j]}_$target.log" "./$upgrade_log_folder/fail_${ubuntu_versions[$i]}_${airtime_versions[$j]}_$target.log"
  30. fi
  31. fi
  32. done
  33. done