airtime-backup.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import os
  2. import sys
  3. import shutil
  4. #check if root
  5. if os.geteuid() != 0:
  6. print 'Must be a root user.'
  7. sys.exit(1)
  8. #ask if we should backup config files
  9. backup_config = True
  10. #ask if we should backup database
  11. backup_database = True
  12. #ask if we should backup stor directory
  13. backup_stor = True
  14. #ask if we should backup all watched directories
  15. backup_watched = True
  16. #create airtime-backup directory
  17. os.mkdir("airtime_backup")
  18. if backup_config:
  19. backup_config_dir = "airtime_backup/config"
  20. os.mkdir(backup_config_dir)
  21. #TODO check if directory exists
  22. config_dir = "/etc/airtime"
  23. files = os.listdir()
  24. for f in files:
  25. shutil.copy(os.path.join(config_dir, f), \
  26. os.path.join(backup_config_dir, f)
  27. if backup_database:
  28. os.mkdir("airtime_backup/database")
  29. #TODO: get database name
  30. #TODO use abs path
  31. "pg_dump airtime > database.dump.sql"
  32. #TODO this might not be necessary
  33. os.mkdir("airtime_backup/files")
  34. if backup_stor:
  35. #TODO use abs path
  36. backup_stor_dir = "airtime_backup/files/stor"
  37. os.mkdir(backup_stor_dir)
  38. shutil.copytree("/srv/airtime/stor", backup_stor_dir)
  39. if backup_watched:
  40. pass