aboutsummaryrefslogtreecommitdiff
path: root/flyway+.sh
diff options
context:
space:
mode:
authorAlessandro Iezzi <aiezzi@alessandroiezzi.it>2021-03-26 12:58:56 +0100
committerAlessandro Iezzi <aiezzi@alessandroiezzi.it>2021-03-26 12:58:56 +0100
commitf54922269049658bdd53adadd1055e15fd490fba (patch)
treec00a8a1f731d1d95e3f33f288527f2215b509f1a /flyway+.sh
downloadacme-scripts-f54922269049658bdd53adadd1055e15fd490fba.tar.gz
acme-scripts-f54922269049658bdd53adadd1055e15fd490fba.zip
Initial commit
Diffstat (limited to 'flyway+.sh')
-rwxr-xr-xflyway+.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/flyway+.sh b/flyway+.sh
new file mode 100755
index 0000000..255c799
--- /dev/null
+++ b/flyway+.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+directory=$(search V*.sql | grep -Eo ".*/common/" | head -1)
+last_version=$(search V*.sql | grep src/main | sed 's|.*/||g' | grep -E '^V' | sed 's/__.*//' | sort -V -u -r | head -1)
+
+v1=`echo $last_version | sed 's/V//' | sed -E 's/\..*//'`
+v2=`echo $last_version | sed 's/V//' | sed -E 's/[^\.]+\.(.*)\..*/\1/'`
+v3=`echo $last_version | sed 's/V//' | sed -E 's/.*\.(.*)$/\1/'`
+
+if [ -z $1 ]; then
+ v3=`expr $v3 + 1`
+else
+ case $1 in
+ M)
+ v1=`expr $v1 + 1`
+ v2=0
+ v3=0
+ ;;
+ m)
+ v2=`expr $v2 + 1`
+ v3=0
+ ;;
+ esac
+fi
+
+new_version="V$v1.$v2.$v3"
+echo $last_version" -> "$new_version
+name=$directory$new_version"__New_migration.sql"
+
+echo -n "" | 9p write acme/new/body
+last=$(9p ls acme | sort -g | tail -n 1)
+echo "name $name" | 9p write acme/$last/ctl
+