)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"ff56b26d2cf48a694381da5f62442530eebefc06","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Mike Pham \u003ctp6510@att.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-07-30 11:35:54 -0500"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[428254] Develop script for backup of DBs and PVCs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Backup scrip for Mariadb"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5f7c97a3_7aea430d","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":8},"updated":"2018-07-30 17:10:28.000000000","message":"Also, please refrain from using internal story numbers in OSH as it is an upstream project. If anything, link to a storyboard issue here: https://storyboard.openstack.org/#!/project/886","commit_id":"95b4eab8fd2eba0c05e4e93bafe1913450c3fe09"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6346f83f3cd435bde9315247a631d8c384e46148","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Mike Pham \u003ctp6510@att.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-08-28 15:44:51 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"øThis PS develop script for backup of DBs and PVCs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Backup \u0026 restore script for Mariadb \u0026 Postgresql"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":28,"id":"3f79a3b5_692df1fb","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":50},"updated":"2018-08-31 21:07:33.000000000","message":"odd leading char, editor quirk?\n\ncan we reword the commit message a little?","commit_id":"d5137eca63f73eb16c76b522ff1407fa1e5f14f3"}],"tools/backup/README.txt":[{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6804b48c5c75cc16845c38e974f01b129e439c30","unresolved":false,"context_lines":[{"line_number":32,"context_line":"  find $BACKUPS_DIR/* -mtime +$DAYS_TO_KEEP -exec rm {} \\;"},{"line_number":33,"context_line":"fi"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"# setup a cronjob to run every 12 hours that runs the backup script "},{"line_number":36,"context_line":"crontab -l | { cat; echo \"* 12 * * * sudo ./backups_mariadb.sh\"; } | crontab -"},{"line_number":37,"context_line":""}],"source_content_type":"text/plain","patch_set":20,"id":"3f79a3b5_8032505d","line":35,"range":{"start_line":35,"start_character":67,"end_line":35,"end_character":68},"updated":"2018-08-13 14:47:32.000000000","message":"tws","commit_id":"a8d54567021b11bbec2e4aa4b8bafb1d21732023"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6346f83f3cd435bde9315247a631d8c384e46148","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"#    under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Backing up a databses, in this example we use Mariadb database as an example, but this will also apply to any other services such as Postgres."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"# get all script arguments"},{"line_number":18,"context_line":"./backups_mariadb.sh --host\u003d$DBHOST --user\u003d$DBUSER --password\u003d$DBPASSWD"}],"source_content_type":"text/plain","patch_set":28,"id":"3f79a3b5_09347d49","line":15,"range":{"start_line":15,"start_character":13,"end_line":15,"end_character":21},"updated":"2018-08-31 21:07:33.000000000","message":"databases","commit_id":"d5137eca63f73eb16c76b522ff1407fa1e5f14f3"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6346f83f3cd435bde9315247a631d8c384e46148","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"#    under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Backing up a databses, in this example we use Mariadb database as an example, but this will also apply to any other services such as Postgres."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"# get all script arguments"},{"line_number":18,"context_line":"./backups_mariadb.sh --host\u003d$DBHOST --user\u003d$DBUSER --password\u003d$DBPASSWD"}],"source_content_type":"text/plain","patch_set":28,"id":"3f79a3b5_2937f94f","line":15,"range":{"start_line":15,"start_character":97,"end_line":15,"end_character":102},"updated":"2018-08-31 21:07:33.000000000","message":"wrap line","commit_id":"d5137eca63f73eb16c76b522ff1407fa1e5f14f3"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6346f83f3cd435bde9315247a631d8c384e46148","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Backing up a databses, in this example we use Mariadb database as an example, but this will also apply to any other services such as Postgres."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"# get all script arguments"},{"line_number":18,"context_line":"./backups_mariadb.sh --host\u003d$DBHOST --user\u003d$DBUSER --password\u003d$DBPASSWD"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"# setup the necessarily backup directory"},{"line_number":21,"context_line":"mkdir -p $BACKUPS_DIR ;"}],"source_content_type":"text/plain","patch_set":28,"id":"3f79a3b5_691651aa","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":71},"updated":"2018-08-31 21:07:33.000000000","message":"what if the user and/or pw have ws?\n\nthe \"${DBUSER}\" format would be more robust if that was the case","commit_id":"d5137eca63f73eb16c76b522ff1407fa1e5f14f3"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6346f83f3cd435bde9315247a631d8c384e46148","unresolved":false,"context_lines":[{"line_number":29,"context_line":"# delete all database which 3 days old"},{"line_number":30,"context_line":"if [ \"$DAYS_TO_KEEP\" -gt 0 ] ; then"},{"line_number":31,"context_line":"  echo \"Deleting backups older than $DAYS_TO_KEEP days\""},{"line_number":32,"context_line":"  find $BACKUPS_DIR/* -mtime +$DAYS_TO_KEEP -exec rm {} \\;"},{"line_number":33,"context_line":"fi"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"# setup a cronjob to run every 12 hours that runs the backup script"}],"source_content_type":"text/plain","patch_set":28,"id":"3f79a3b5_c9268517","line":32,"range":{"start_line":32,"start_character":22,"end_line":32,"end_character":44},"updated":"2018-08-31 21:07:33.000000000","message":"-type f","commit_id":"d5137eca63f73eb16c76b522ff1407fa1e5f14f3"}],"tools/backup/backups_mariadb.sh":[{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6346f83f3cd435bde9315247a631d8c384e46148","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/bash"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2018 The Openstack-Helm Authors."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"},{"line_number":7,"context_line":"#    a copy of the License at"},{"line_number":8,"context_line":"#"},{"line_number":9,"context_line":"#         http://www.apache.org/licenses/LICENSE-2.0"},{"line_number":10,"context_line":"#"},{"line_number":11,"context_line":"#    Unless required by applicable law or agreed to in writing, software"},{"line_number":12,"context_line":"#    distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT"},{"line_number":13,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"set -xe"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#database info"},{"line_number":20,"context_line":"DBHOST\u003d\"$1\""},{"line_number":21,"context_line":"DBUSER\u003d\"$2\""},{"line_number":22,"context_line":"DBPASSWD\u003d\"$3\""},{"line_number":23,"context_line":"DAYS_TO_KEEP\u003d3"},{"line_number":24,"context_line":"BACKUPS_DIR\u003d( ~/backups/db/mariadb )"},{"line_number":25,"context_line":"DBNAME\u003d( `echo \"show databases\" |  mysql --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST  | tail -n+2 | egrep -vi \u0027information_schema|performance_schema\u0027`)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"#check if local .backups directory exists. if not create it"},{"line_number":28,"context_line":"mkdir -p $BACKUPS_DIR ;"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"#backup database"},{"line_number":31,"context_line":"for db in \"${DBNAME[@]}\u0027"},{"line_number":32,"context_line":"do"},{"line_number":33,"context_line":"  mysqldump --opt --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST $db --lock-tables\u003dfalse   \u003e $BACKUPS_DIR/$db.sql"},{"line_number":34,"context_line":"done"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"#delete old backups"},{"line_number":37,"context_line":"if [ \"$DAYS_TO_KEEP\" -gt 0 ] ; then"},{"line_number":38,"context_line":"  echo \"Deleting backups older than $DAYS_TO_KEEP days\""},{"line_number":39,"context_line":"  find $BACKUPS_DIR/* -mtime +$DAYS_TO_KEEP -exec rm {} \\;"},{"line_number":40,"context_line":"fi"}],"source_content_type":"text/x-sh","patch_set":28,"id":"3f79a3b5_c96be51c","line":40,"range":{"start_line":1,"start_character":0,"end_line":40,"end_character":2},"updated":"2018-08-31 21:07:33.000000000","message":"see previous comments from the README; in fact it might be best to trim the README not to contain a copy/duplicate of this as we won\u0027t then have to worry about keeping them in sync","commit_id":"d5137eca63f73eb16c76b522ff1407fa1e5f14f3"}],"tools/backup/backups_postgresql.sh":[{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6804b48c5c75cc16845c38e974f01b129e439c30","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"#echo new cron into cron file"},{"line_number":37,"context_line":"crontab -l | { cat; echo \"* 12 * * * sudo ./backups_mariadb.sh\"; } | crontab -"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""}],"source_content_type":"text/x-sh","patch_set":20,"id":"3f79a3b5_4040b8a5","line":39,"range":{"start_line":38,"start_character":0,"end_line":39,"end_character":0},"updated":"2018-08-13 14:47:32.000000000","message":"ws","commit_id":"a8d54567021b11bbec2e4aa4b8bafb1d21732023"}],"tools/backups_mariadb.sh":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"2179566d6c75939ffcedff3501e4b07d156d7f8c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/bash"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"set -xe"}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f7c97a3_9a7abf73","line":1,"updated":"2018-07-30 17:08:27.000000000","message":"Please correct the indentation, whitespace, and extraneous new lines in the file below.","commit_id":"95b4eab8fd2eba0c05e4e93bafe1913450c3fe09"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"2179566d6c75939ffcedff3501e4b07d156d7f8c","unresolved":false,"context_lines":[{"line_number":10,"context_line":"   DBNAME\u003d( `echo \"show databases\" |  mysql --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST  | tail -n+3 `)"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"# Folders to backup "},{"line_number":14,"context_line":"    FOLDERS\u003d(  \u0027/var/backups\u0027  )"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"       #check if local .backups directory exists. if not create it"}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f7c97a3_faaf33de","line":13,"range":{"start_line":13,"start_character":19,"end_line":13,"end_character":20},"updated":"2018-07-30 17:08:27.000000000","message":"WS","commit_id":"95b4eab8fd2eba0c05e4e93bafe1913450c3fe09"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"2179566d6c75939ffcedff3501e4b07d156d7f8c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"       mkdir -p ~/.backups/$SCRIPTNAME/db ;"},{"line_number":19,"context_line":"       fi"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"       find ~/.backups/$SCRIPTNAME/db/*.sql -type f -daystart -mtime +0 -exec rm {} \\;  "},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"       #get recent version of databases from array"},{"line_number":24,"context_line":"       for i in \"${DBNAME[@]}\""}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f7c97a3_ba7f7b67","line":21,"range":{"start_line":21,"start_character":86,"end_line":21,"end_character":88},"updated":"2018-07-30 17:08:27.000000000","message":"WS","commit_id":"95b4eab8fd2eba0c05e4e93bafe1913450c3fe09"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"2179566d6c75939ffcedff3501e4b07d156d7f8c","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"       for i in \"${FOLDERS[@]}\""},{"line_number":30,"context_line":"       do"},{"line_number":31,"context_line":"    rsync -a -t -q $MODE  --delete  --links  $i  ~/.backups/$SCRIPTNAME/   "},{"line_number":32,"context_line":"       done"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"# Delete old backups"}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f7c97a3_da84b75f","line":31,"range":{"start_line":31,"start_character":72,"end_line":31,"end_character":75},"updated":"2018-07-30 17:08:27.000000000","message":"WS","commit_id":"95b4eab8fd2eba0c05e4e93bafe1913450c3fe09"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"5f7c97a3_1bf888bf","updated":"2018-08-03 13:59:28.000000000","message":"are we running these scripts from the host?","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"set -xe"},{"line_number":4,"context_line":"#database info"},{"line_number":5,"context_line":"   DBHOST\u003d\"$1\""},{"line_number":6,"context_line":"   DBUSER\u003d\"$2\""},{"line_number":7,"context_line":"   DBPASSWD\u003d\"$3\""},{"line_number":8,"context_line":"   DAYS_TO_KEEP\u003d3"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_5b404005","line":5,"range":{"start_line":5,"start_character":0,"end_line":5,"end_character":3},"updated":"2018-08-03 13:59:28.000000000","message":"indentation is off.  i believe the recommended indentation for shell script is 2 (?).","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":10,"context_line":"   DBNAME\u003d( `echo \"show databases\" |  mysql --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST  | tail -n+2 | egrep -vi \u0027information_schema|performance_schema\u0027`)"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"#check if local .backups directory exists. if not create it"},{"line_number":13,"context_line":"   if [ ! -d $BACKUPS_DIR ]; then"},{"line_number":14,"context_line":"   mkdir -p $BACKUPS_DIR ;"},{"line_number":15,"context_line":"   fi"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_db0210ba","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":33},"updated":"2018-08-03 13:59:28.000000000","message":"you shouldn\u0027t need this check, mkdir -p will ignore the DIR if it already exists, else it creates.","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":19,"context_line":"   do"},{"line_number":20,"context_line":"   mysqldump --opt --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST $db --lock-tables\u003dfalse   \u003e $BACKUPS_DIR/$db.sql"},{"line_number":21,"context_line":"   done"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"   #for db in \"${BACKUPS_DIR[@]}\""},{"line_number":24,"context_line":"   #do"},{"line_number":25,"context_line":"   #rsync -a -t -q $MODE  --delete  --links  $db  ~/.backups/$SCRIPTNAME/"},{"line_number":26,"context_line":"   #done"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"#delete old backups"},{"line_number":29,"context_line":"   if [ \"$DAYS_TO_KEEP\" -gt 0 ] ; then"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_1b4ac823","line":26,"range":{"start_line":22,"start_character":0,"end_line":26,"end_character":8},"updated":"2018-08-03 13:59:28.000000000","message":"can probably remove if this is just comment.\u003d","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"}],"tools/backups_postgresql.sh":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":5,"context_line":"#database info"},{"line_number":6,"context_line":"   DBHOST\u003d\"$1\""},{"line_number":7,"context_line":"   DBUSER\u003d\"$2\""},{"line_number":8,"context_line":"   DAYS_TO_KEEP\u003d3"},{"line_number":9,"context_line":"   BACKUPS_DIR\u003d( ~/.backups/db/postgresql )"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"#check if local .backups directory exists. if not create it"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_1b1168f9","line":8,"range":{"start_line":8,"start_character":0,"end_line":8,"end_character":17},"updated":"2018-08-03 13:59:28.000000000","message":"should this be also configurable?","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":9,"context_line":"   BACKUPS_DIR\u003d( ~/.backups/db/postgresql )"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"#check if local .backups directory exists. if not create it"},{"line_number":12,"context_line":"   if [ ! -d $BACKUPS_DIR ]; then"},{"line_number":13,"context_line":"   mkdir -p $BACKUPS_DIR ;"},{"line_number":14,"context_line":"   fi"},{"line_number":15,"context_line":" "}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_5b17e0f0","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":33},"updated":"2018-08-03 13:59:28.000000000","message":"not needed","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":12,"context_line":"   if [ ! -d $BACKUPS_DIR ]; then"},{"line_number":13,"context_line":"   mkdir -p $BACKUPS_DIR ;"},{"line_number":14,"context_line":"   fi"},{"line_number":15,"context_line":" "},{"line_number":16,"context_line":"   pg_dumpall -U $DBUSER -h $DBHOST \u003e $BACKUPS_DIR/postgres.sql"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"#delete old backups"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_7b209c4c","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":1},"updated":"2018-08-03 13:59:28.000000000","message":"white space","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"6804b48c5c75cc16845c38e974f01b129e439c30","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"#echo new cron into cron file"},{"line_number":24,"context_line":"crontab -l | { cat; echo \"* 12 * * * sudo ./backups_mariadb.sh\"; } | crontab -"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""}],"source_content_type":"text/x-sh","patch_set":20,"id":"3f79a3b5_a010aca9","line":26,"range":{"start_line":25,"start_character":0,"end_line":26,"end_character":0},"updated":"2018-08-13 14:47:32.000000000","message":"ws","commit_id":"a8d54567021b11bbec2e4aa4b8bafb1d21732023"}],"tools/restore_mariadb.sh":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"set -xe"},{"line_number":4,"context_line":"#database info"},{"line_number":5,"context_line":"  DBHOST\u003d\"$1\""},{"line_number":6,"context_line":"  DBUSER\u003d\"$2\""},{"line_number":7,"context_line":"  DBPASSWD\u003d\"$3\""},{"line_number":8,"context_line":"  BACKUPS_DIR\u003d( ~/.backups/db/mariadb )"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_db3450ae","line":5,"range":{"start_line":5,"start_character":0,"end_line":5,"end_character":2},"updated":"2018-08-03 13:59:28.000000000","message":"the indentation is off.","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"#list all databases backups"},{"line_number":11,"context_line":"  cd $BACKUPS_DIR"},{"line_number":12,"context_line":"  DATABASE\u003d`for f in *.sql; do"},{"line_number":13,"context_line":"  printf \u0027%s\\n\u0027 \"${f%.sql}\""},{"line_number":14,"context_line":"  done`"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"#restore all databases"},{"line_number":17,"context_line":"  for db in $DATABASE; do"},{"line_number":18,"context_line":"     echo \"Importing database: $db\""},{"line_number":19,"context_line":"     mysql --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST  $db \u003c $BACKUPS_DIR/$db.sql"},{"line_number":20,"context_line":"  done"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_3bdf843a","line":17,"range":{"start_line":12,"start_character":12,"end_line":17,"end_character":25},"updated":"2018-08-03 13:59:28.000000000","message":"is there a reason why we should do this in 2 separate loops instead of just one for-loop?","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"c67253f2242b49449da9a0b2e0b622bfe539274c","unresolved":false,"context_lines":[{"line_number":16,"context_line":"#restore all databases"},{"line_number":17,"context_line":"  for db in $DATABASE; do"},{"line_number":18,"context_line":"     echo \"Importing database: $db\""},{"line_number":19,"context_line":"     mysql --user\u003d$DBUSER --password\u003d$DBPASSWD --host\u003d$DBHOST  $db \u003c $BACKUPS_DIR/$db.sql"},{"line_number":20,"context_line":"  done"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5f7c97a3_9bb3380a","line":19,"range":{"start_line":19,"start_character":5,"end_line":19,"end_character":89},"updated":"2018-08-03 13:59:28.000000000","message":"since we set -xe, what if one of these mysql statements fail, do we abort the whole thing or keep trying the rest, or is that not a concern?","commit_id":"b86c00f3d22a614fe55992ce686a59b56e66e2e6"}]}
