Ofer Schreiber has posted comments on this change.
Change subject: packaging: Add backup and restore utility
......................................................................
Patch Set 18: (13 inline comments)
....................................................
File packaging/bin/engine-backup.sh
Line 23: BACKUP_FOLDERS="/etc/ovirt-engine
Line 24: /etc/pki/ovirt-engine
Line 25: /etc/ovirt-engine-setup.conf.d
Line 26: /var/lib/ovirt-engine"
Line 27: VERSION_FILE="/usr/share/ovirt-engine/conf/version"
So what do you suggest me to do?
Any real reason to obsolete it?
Line 28: MYPGPASS=""
Line 29: TEMP_FOLDER=""
Line 30: FILE=""
Line 31: DATE="$(date +%Y_%m_%d_%H_%M_%S)"
Line 27: VERSION_FILE="/usr/share/ovirt-engine/conf/version"
Line 28: MYPGPASS=""
Line 29: TEMP_FOLDER=""
Line 30: FILE=""
Line 31: DATE="$(date +%Y_%m_%d_%H_%M_%S)"
Done
Line 32: BACKUP_TAR="/tmp/engine-backup_${DATE}.tar.bz"
Line 33: DB_BACKUP_FILE_NAME="engine_backup.db"
Line 34: MD5_FILE_NAME="md5sum"
Line 35: LOG="/tmp/engine-backup_${DATE}.log"
Line 28: MYPGPASS=""
Line 29: TEMP_FOLDER=""
Line 30: FILE=""
Line 31: DATE="$(date +%Y_%m_%d_%H_%M_%S)"
Line 32: BACKUP_TAR="/tmp/engine-backup_${DATE}.tar.bz"
Done
Line 33: DB_BACKUP_FILE_NAME="engine_backup.db"
Line 34: MD5_FILE_NAME="md5sum"
Line 35: LOG="/tmp/engine-backup_${DATE}.log"
Line 36: DB="db"
Line 30: FILE=""
Line 31: DATE="$(date +%Y_%m_%d_%H_%M_%S)"
Line 32: BACKUP_TAR="/tmp/engine-backup_${DATE}.tar.bz"
Line 33: DB_BACKUP_FILE_NAME="engine_backup.db"
Line 34: MD5_FILE_NAME="md5sum"
Done (I'm not willing to argue over this, but generally, what I use a certain
name more than once, I prefer storing it as constant)
Line 35: LOG="/tmp/engine-backup_${DATE}.log"
Line 36: DB="db"
Line 37: FILES="files"
Line 38: VERSION="version"
Line 31: DATE="$(date +%Y_%m_%d_%H_%M_%S)"
Line 32: BACKUP_TAR="/tmp/engine-backup_${DATE}.tar.bz"
Line 33: DB_BACKUP_FILE_NAME="engine_backup.db"
Line 34: MD5_FILE_NAME="md5sum"
Line 35: LOG="/tmp/engine-backup_${DATE}.log"
Done
Line 36: DB="db"
Line 37: FILES="files"
Line 38: VERSION="version"
Line 39:
Line 32: BACKUP_TAR="/tmp/engine-backup_${DATE}.tar.bz"
Line 33: DB_BACKUP_FILE_NAME="engine_backup.db"
Line 34: MD5_FILE_NAME="md5sum"
Line 35: LOG="/tmp/engine-backup_${DATE}.log"
Line 36: DB="db"
Done
Line 37: FILES="files"
Line 38: VERSION="version"
Line 39:
Line 40: cleanup() {
Line 49: USAGE:
Line 50: engine-backup [--mode=MODE] [--scope=SCOPE] [--file=FILE]
Line 51: MODE is one of the following:
Line 52: backup backup system into FILE
Line 53: restore restore system from FILE
Done
Line 54: SCOPE is one of the following:
Line 55: all complete backup/restore
Line 56: db database only
Line 57: __EOF__
Line 104: fi
Line 105: }
Line 106:
Line 107: dobackup() {
Line 108: echo "Backing up..."
Done
Line 109: generatePgPass
Line 110:
Line 111: # Create temporary folder
Line 112: local tardir="${TEMP_FOLDER}/tar"
Line 133: createmd5() {
Line 134: local tardir="$1"
Line 135: local md5file="$2"
Line 136: local cwd="$(pwd)"
Line 137: cd "${tardir}"
Done
Line 138: find . -type f | while read file; do
Line 139: md5sum "${file}" >> "${md5file}" || die "Cannot create
checksum for '${file}'"
Line 140: done || die "Find execution failed"
Line 141: cd "${cwd}"
Line 144: verifymd5() {
Line 145: local tardir="$1"
Line 146: local md5file="$2"
Line 147: local cwd="$(pwd)"
Line 148: cd "${tardir}"
Done
Line 149: md5sum -c "${md5file}" --status --strict || die "Checksum
verification failed"
Line 150: cd "${cwd}"
Line 151: }
Line 152:
Line 247: MYPGPASS="${TEMP_FOLDER}/.pgpass"
Line 248: cat > "${MYPGPASS}" << __EOF__
Line 249:
${ENGINE_DB_HOST}:${ENGINE_DB_PORT}:${ENGINE_DB_DATABASE}:${ENGINE_DB_USER}:${ENGINE_DB_PASSWORD}
Line 250: __EOF__
Line 251: chmod 0600 "${MYPGPASS}"
Done
Line 252: }
Line 253:
Line 254: welcome() {
Line 255: cat << __EOF__
Line 260: 3. engine user and database has the same credentials as the backup
Line 261: 4. Firewall is configured properly
Line 262: __EOF__
Line 263: while true; do
Line 264: read -p "Do you wish to continue? (y/n) " yn
Done
Line 265: case "${yn}" in
Line 266: [Yy]* ) return 0;;
Line 267: [Nn]* ) exit;;
Line 268: * ) echo "Please answer yes or no.";;
Line 275: # Do this in function so we do not lose $@
Line 276: parseArgs "$@"
Line 277: verifyArgs
Line 278:
Line 279: TEMP_FOLDER="$(mktemp -d)"
Done
Line 280: generatePgPass
Line 281: do${MODE}
--
To view, visit http://gerrit.ovirt.org/15276
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I7f6c386a0f48ccd520978193639120999e00cf2a
Gerrit-PatchSet: 18
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Ofer Schreiber <[email protected]>
Gerrit-Reviewer: Alon Bar-Lev <[email protected]>
Gerrit-Reviewer: Eli Mesika <[email protected]>
Gerrit-Reviewer: Kiril Nesenko <[email protected]>
Gerrit-Reviewer: Moran Goldboim <[email protected]>
Gerrit-Reviewer: Ofer Schreiber <[email protected]>
Gerrit-Reviewer: Ohad Basan <[email protected]>
Gerrit-Reviewer: Sandro Bonazzola <[email protected]>
Gerrit-Reviewer: Yedidyah Bar David <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches