Advertisement
Guest User

Untitled

a guest
Mar 1st, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1. cd "$(dirname "$0")"
  2.  
  3. DB_USER="${DB_USER:-root}"
  4. DB_PASS="${DB_PASS}"
  5. DB_HOST="${DB_HOST:-localhost}"
  6. DB_NAME="${DB_NAME}"
  7.  
  8. mysql_run() {
  9. mysql -u"$DB_USER" -p"$DB_PASS" -h"$DB_HOST" "$DB_NAME" "$@"
  10. }
  11.  
  12. mysql_run -e "CREATE TABLE IF NOT EXISTS migrations (filename VARCHAR(128) PRIMARY KEY, timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP)"
  13.  
  14. for i in *.sql; do
  15. already_applied=$(mysql_run -e "SELECT filename FROM migrations WHERE filename = '$i'")
  16.  
  17. if [ ! -n "$already_applied" ]; then
  18.  
  19. if cat "$i" | mysql_run; then
  20. echo "$i correctly applied"
  21. mysql_run -e "INSERT INTO migrations (filename) VALUES ('$i')"
  22. else
  23. echo "!! Failed to apply $i"
  24. fi
  25. else
  26. echo "$i already applied"
  27. fi
  28. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement