Michael Hoennig
2c0101b46d
Co-authored-by: Michael Hoennig <michael@hoennig.de> Reviewed-on: #16 Reviewed-by: Timotheus Pokorra <timotheus.pokorra@hostsharing.net>
84 lines
3.7 KiB
Plaintext
84 lines
3.7 KiB
Plaintext
# For using the alias import-office-tables, # copy these exports to .environment (ignored by git)
|
|
# and amend them according to your external DB:
|
|
export HSADMINNG_POSTGRES_JDBC_URL=jdbc:tc:postgresql:15.5-bookworm:///spring_boot_testcontainers
|
|
export HSADMINNG_POSTGRES_ADMIN_USERNAME=admin
|
|
export HSADMINNG_POSTGRES_ADMIN_PASSWORD=
|
|
export HSADMINNG_POSTGRES_RESTRICTED_USERNAME=restricted
|
|
|
|
gradleWrapper () {
|
|
if [ ! -f gradlew ]; then
|
|
echo "No 'gradlew' found. Maybe you are not in the root dir of a gradle project?"
|
|
return 1
|
|
fi
|
|
|
|
TEMPFILE=$(mktemp /tmp/gw.XXXXXX)
|
|
unbuffer ./gradlew "$@" | tee $TEMPFILE
|
|
|
|
echo
|
|
grep --color=never "Report:" $TEMPFILE
|
|
rm $TEMPFILE
|
|
}
|
|
|
|
postgresAutodoc () {
|
|
if ! [ -x "$(command -v postgresql_autodoc)" ]; then
|
|
echo "Program 'postgresql_autodoc' not found. Please install, e.g. via: sudo apt install postgresql-autodoc" >&2
|
|
echo "See also https://github.com/cbbrowne/autodoc" >&2
|
|
return 1
|
|
fi
|
|
|
|
if ! [ -x "$(command -v dot)" ]; then
|
|
echo "Program 'graphviz dot' not found. Please install, e.g. via: sudo apt install graphviz" >&2
|
|
echo "See also https://graphviz.org" >&2
|
|
return 1
|
|
fi
|
|
postgresql_autodoc -d postgres -f build/postgres-autodoc -h localhost -u postgres --password=password \
|
|
-m '(rbacobject|hs).*' \
|
|
-l /usr/share/postgresql-autodoc -t neato &&
|
|
dot -Tsvg build/postgres-autodoc.neato >build/postgres-autodoc-hs.svg && \
|
|
echo "generated: $PWD/build/postgres-autodoc-hs.svg"
|
|
|
|
postgresql_autodoc -d postgres -f build/postgres-autodoc -h localhost -u postgres --password=password \
|
|
-m '(global|rbac).*' \
|
|
-l /usr/share/postgresql-autodoc -t neato &&
|
|
dot -Tsvg build/postgres-autodoc.neato >build/postgres-autodoc-rbac.svg && \
|
|
echo "generated $PWD/build/postgres-autodoc-rbac.svg"
|
|
}
|
|
alias postgres-autodoc=postgresAutodoc
|
|
|
|
function importOfficeData() {
|
|
export HSADMINNG_POSTGRES_JDBC_URL=jdbc:tc:postgresql:15.5-bookworm:///spring_boot_testcontainers
|
|
export HSADMINNG_POSTGRES_ADMIN_USERNAME=admin
|
|
export HSADMINNG_POSTGRES_ADMIN_PASSWORD=password
|
|
export HSADMINNG_POSTGRES_RESTRICTED_USERNAME=restricted
|
|
export HSADMINNG_SUPERUSER=superuser-alex@hostsharing.net
|
|
|
|
if [ -f .environment ]; then
|
|
source .environment
|
|
fi
|
|
|
|
echo "using environment (with ending ';' for use in IntelliJ IDEA):"
|
|
set | grep ^HSADMINNG_ | sed 's/$/;/'
|
|
|
|
./gradlew importOfficeData --rerun
|
|
}
|
|
alias gw-importOfficeData=importOfficeData
|
|
|
|
alias podman-start='systemctl --user enable --now podman.socket && systemctl --user status podman.socket && ls -la /run/user/$UID/podman/podman.sock'
|
|
alias podman-stop='systemctl --user disable --now podman.socket && systemctl --user status podman.socket && ls -la /run/user/$UID/podman/podman.sock'
|
|
alias podman-use='export DOCKER_HOST="unix:///run/user/$UID/podman/podman.sock"; export TESTCONTAINERS_RYUK_DISABLED=true'
|
|
|
|
alias gw=gradleWrapper
|
|
alias pg-sql-run='docker run --name hsadmin-ng-postgres -e POSTGRES_PASSWORD=password -p 5432:5432 -d postgres:15.5-bookworm'
|
|
alias pg-sql-stop='docker stop hsadmin-ng-postgres'
|
|
alias pg-sql-start='docker container start hsadmin-ng-postgres'
|
|
alias pg-sql-remove='docker rm hsadmin-ng-postgres'
|
|
alias pg-sql-reset='pg-sql-stop; pg-sql-remove; pg-sql-run'
|
|
alias pg-sql-backup='docker exec -i hsadmin-ng-postgres /usr/bin/pg_dump --clean --create -U postgres postgres | gzip -9'
|
|
alias pg-sql-restore='gunzip --stdout | docker exec -i hsadmin-ng-postgres psql -U postgres -d postgres'
|
|
|
|
alias fp='grep -r '@Accepts' src | sed -e 's/^.*@/@/g' | sort -u | wc -l'
|
|
|
|
alias gw-spotless='./gradlew spotlessApply -x pitest -x test -x :processResources'
|
|
alias gw-test='. .aliases; ./gradlew test importOfficeData'
|
|
alias gw-check='. .aliases; gw test importOfficeData check -x pitest -x :dependencyCheckAnalyze'
|