Avoid database starting when other devshell is already running, allow devshell in non-root folders
This commit is contained in:
parent
bf1d61f733
commit
d5b58e8df3
|
@ -1,3 +1,9 @@
|
||||||
|
cd "$(git rev-parse --show-toplevel)"
|
||||||
|
|
||||||
|
# Check for lock
|
||||||
|
[ -f matabas-db/dev-lock ]
|
||||||
|
IS_OWNER=$? # non-zero is owner
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export PGPORT=2137
|
export PGPORT=2137
|
||||||
|
@ -8,43 +14,58 @@ log() {
|
||||||
printf "\e[1m\e[38;5;87m==>\e[0m\e[1m %s%s\e[0m\n" "$1" "${2:-.}"
|
printf "\e[1m\e[38;5;87m==>\e[0m\e[1m %s%s\e[0m\n" "$1" "${2:-.}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Only trapped if owner
|
||||||
exitHook() {
|
exitHook() {
|
||||||
|
cd "$(git rev-parse --show-toplevel)"
|
||||||
log "Stoppar brevekorren"
|
log "Stoppar brevekorren"
|
||||||
pg_ctl stop --pgdata=./matabas-db
|
pg_ctl stop --pgdata=./matabas-db
|
||||||
|
rm -f matabas-db/dev-lock
|
||||||
}
|
}
|
||||||
|
|
||||||
log "Letar efter existerande brevekorresmapp"
|
setupDb() {
|
||||||
[ -d ./matabas-db ] || {
|
log "Letar efter existerande brevekorresmapp"
|
||||||
log "Finns ej, skapar brevekorresmapp (./matabas-db)"
|
[ -d ./matabas-db ] || {
|
||||||
pg_ctl initdb --pgdata=./matabas-db -o "--username=$PGUSER"
|
log "Finns ej, skapar brevekorresmapp (./matabas-db)"
|
||||||
|
pg_ctl initdb --pgdata=./matabas-db -o "--username=$PGUSER"
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -f matabas-db/matabas.log ] && {
|
||||||
|
log "Flyttar journalen från senaste sittningen till journalarkivet (./matabas-db/matabas.log.old)"
|
||||||
|
cat matabas-db/matabas.log >> matabas-db/matabas.log.old
|
||||||
|
rm -f matabas-db/matabas.log
|
||||||
|
}
|
||||||
|
|
||||||
|
log "Startar brevekorren"
|
||||||
|
pg_ctl start --pgdata=./matabas-db --log=./matabas-db/matabas.log --options="-p $PGPORT -k /tmp"
|
||||||
|
log "Låser databasen"
|
||||||
|
:> matabas-db/dev-lock
|
||||||
|
trap exitHook EXIT
|
||||||
|
|
||||||
|
log "Skapar matabas"
|
||||||
|
createdb -h localhost -p "$PGPORT" matabas 2>>./matabas-db/matabas.log || log "Matabasen finns, skriver ej över"
|
||||||
|
|
||||||
|
log "Ställer in schema.sql"
|
||||||
|
psql -h localhost -p "$PGPORT" "$PBDATABASE" < schema.sql
|
||||||
}
|
}
|
||||||
|
|
||||||
[ -f matabas-db/matabas.log ] && {
|
|
||||||
log "Flyttar journalen från senaste sittningen till journalarkivet (./matabas-db/matabas.log.old)"
|
|
||||||
cat matabas-db/matabas.log >> matabas-db/matabas.log.old
|
|
||||||
rm -f matabas-db/matabas.log
|
|
||||||
}
|
|
||||||
|
|
||||||
log "Startar brevekorren"
|
|
||||||
pg_ctl start --pgdata=./matabas-db --log=./matabas-db/matabas.log --options="-p $PGPORT -k /tmp"
|
|
||||||
trap exitHook EXIT
|
|
||||||
|
|
||||||
log "Skapar matabas"
|
|
||||||
createdb -h localhost -p "$PGPORT" matabas 2>>./matabas-db/matabas.log || log "Matabasen finns, skriver ej över"
|
|
||||||
|
|
||||||
log "Ställer in schema.sql"
|
|
||||||
psql -h localhost -p "$PGPORT" "$PBDATABASE" < schema.sql
|
|
||||||
|
|
||||||
P="$PWD"
|
P="$PWD"
|
||||||
clean() {
|
clean() {
|
||||||
log "Rensar byggnad"
|
log "Rensar byggnad"
|
||||||
rm -rf artifacts
|
rm -rf artifacts
|
||||||
}
|
}
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
source "$P/buildScripts/build.sh"
|
source "$P/buildScripts/build.sh"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if [ "$IS_OWNER" -ne 0 ] ; then
|
||||||
|
setupDb
|
||||||
|
else
|
||||||
|
log "Startar som icke-ägare, startar ej databasen"
|
||||||
|
fi
|
||||||
|
|
||||||
log "Redo" "!"
|
log "Redo" "!"
|
||||||
|
|
||||||
set +e
|
set +e
|
||||||
|
|
||||||
|
cd - >/dev/null 2>&1
|
||||||
|
|
Loading…
Reference in New Issue
Block a user