eerevert.in 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #!/bin/bash
  2. . __FFOOD_INIT__
  3. FFOOD_INIPATH="__FFOOD_INIPATH__"
  4. ffood import core
  5. ffood import recon
  6. usage() {
  7. usage_is "[-d|--debug] [-v|--verbose] [--dry-run] [-c|--connection] domain [snapshot]"
  8. }
  9. FFOOD_DRY_RUN=false
  10. connection="qemu:///system"
  11. while true; do
  12. case $1 in
  13. -c|--connection)
  14. connection=$2
  15. shift 2
  16. ;;
  17. -d|--debug)
  18. FFOOD_DEBUG=true
  19. shift 1
  20. ;;
  21. -q|--quiet)
  22. FFOOD_VERBOSE=false
  23. shift 1
  24. ;;
  25. -v|--verbose)
  26. FFOOD_VERBOSE=true
  27. shift 1
  28. ;;
  29. --dry-run)
  30. FFOOD_DRY_RUN=true
  31. shift 1
  32. ;;
  33. "")
  34. usage
  35. ;;
  36. --)
  37. shift 1
  38. break
  39. ;;
  40. *)
  41. break
  42. ;;
  43. esac
  44. done
  45. domain="$1"
  46. snapshot="$2"
  47. FFOOD_DATA_DIR=/home/amahdal/.eecc
  48. test -z "$snapshot" && {
  49. think "looking for $domain in revert.ini"
  50. snapshot=$(iniread -1 -p revert.to.snapshot.$domain revert.ini)
  51. }
  52. test -z "$snapshot" && {
  53. think "looking for default snapshot name in revert.ini"
  54. snapshot=$(iniread -1 -p revert.to.snapshot._default_ revert.ini)
  55. }
  56. test -z "$snapshot" && {
  57. die "could not determine snapshot for $domain"
  58. }
  59. think "reverting $domain to $snapshot"
  60. debug "virsh -c "$connection" snapshot-revert $domain $snapshot"
  61. $FFOOD_DRY_RUN || virsh -c "$connection" snapshot-revert $domain $snapshot
  62. think "starting $domain"
  63. debug "virsh -c "$connection" start $domain"
  64. $FFOOD_DRY_RUN || virsh -c "$connection" start $domain