From 5b1cc7e49adeb7c6060f04fda0a667e3e17809ab Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sat, 23 Aug 2014 17:31:41 +0200 Subject: wip --- files/bin/fiken-dump-database | 40 ++++++++++++++++++++++++++++++++++++++++ files/bin/install-release | 13 +++++++++++++ files/bin/pull-and-release | 20 ++++++++++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 files/bin/fiken-dump-database create mode 100644 files/bin/install-release create mode 100644 files/bin/pull-and-release (limited to 'files') diff --git a/files/bin/fiken-dump-database b/files/bin/fiken-dump-database new file mode 100644 index 0000000..eb962d7 --- /dev/null +++ b/files/bin/fiken-dump-database @@ -0,0 +1,40 @@ +#!/bin/bash + +export BUP_DIR=$HOME/bups/postgres-backup + +now=`date -u +%Y-%m-%dT%H:%M:%S.000Z` + +db="$1" + +if [[ -z $db ]] +then + echo "usage: $0 " + exit 1 +fi + +dir="$HOME/backups/${db}" +name="pg_${db}_${now}.backup" +path="$dir/$name" + +mkdir -p "$dir" + +echo "Dumping $db to $path" + +time pg_dump -h localhost -U fiken-prod -b -Fc $db > $path +rm -rf "$dir/latest" +ln -s "$name" "$dir/latest" + +echo "Updating backups" +( +cd "$dir" +bup index -u . +bup save -n postgres-backup . +) + +echo "Dump complete" +echo "File size:" `ls -sh $path|cut -f 1 -d " "` +echo "" +echo "To restore to a db:" +echo "psql -1 -h localhost -U fiken-dev -d fiken-dev -c 'drop schema public CASCADE; create schema public'" +echo "vacuumlo -U fiken-dev -h localhost -v -l 10000 fiken-dev" +echo "pg_restore -O -U fiken-dev -h localhost -d fiken-dev" $name diff --git a/files/bin/install-release b/files/bin/install-release new file mode 100644 index 0000000..4b94bc0 --- /dev/null +++ b/files/bin/install-release @@ -0,0 +1,13 @@ +#!/bin/bash +set -e +set -x + +env=`app conf get env.FIKEN_ENVIRONMENT` +props="current/etc/$env/environment.properties" +password=`sed -n 's,^database.password=\(.*\),\1,p' $props` + +app conf set app.version $1 +app upgrade +sed 's,^\(database.password\)=.*,\1=$password,' $props > x +mv x $props +echo "Type app restart when ready to start new version." diff --git a/files/bin/pull-and-release b/files/bin/pull-and-release new file mode 100644 index 0000000..3d18437 --- /dev/null +++ b/files/bin/pull-and-release @@ -0,0 +1,20 @@ +#!/bin/bash +set -e +set -x + +git fetch + +now=$(date +%Y.%m) +count=$(git tag|grep -- -$now.|wc -l) + +echo "Does $now.$count look like a good release version? If not, abort now." +read + +git reset --hard +git checkout master +git merge --ff origin/master +git merge --no-ff origin/develop + +git push origin master + +mvn clean release:clean release:prepare release:perform -B -Papp -DdevelopmentVersion=master-SNAPSHOT -DreleaseVersion=$now.$count -- cgit v1.2.3