Improve anonymization script

- check if parent directory of this script is an OpenProject repository
  suitable to run the command to add the admin user.
- use a variable for the database name in the given instructions to load
  it. It makes it easier to change to an existing database name.

[skip ci]
This commit is contained in:
Christophe Bliard
2025-05-26 16:08:40 +02:00
parent d870d1e278
commit 975256dea3
+7 -5
View File
@@ -9,8 +9,9 @@ if [ -f "$HOME/openproject/dev/Gemfile" ]; then
OPENPROJECT_DEV_DIR="$HOME/openproject/dev" OPENPROJECT_DEV_DIR="$HOME/openproject/dev"
elif [ -f "$HOME/openproject/Gemfile" ]; then elif [ -f "$HOME/openproject/Gemfile" ]; then
OPENPROJECT_DEV_DIR="$HOME/openproject" OPENPROJECT_DEV_DIR="$HOME/openproject"
elif [ -f "$HOME/code/opf/openproject/Gemfile" ]; then # maybe parent directory of this script is an OpenProject repository?
OPENPROJECT_DEV_DIR="$HOME/code/opf/openproject" elif [ -f "$(cd "$(dirname $0)/.." && pwd)/Gemfile" ]; then
OPENPROJECT_DEV_DIR="$(cd "$(dirname $0)/.." && pwd)"
else else
OPENPROJECT_DEV_DIR="${2:?Pass the openproject dev directory as second argument (needed to create the admin user)}" OPENPROJECT_DEV_DIR="${2:?Pass the openproject dev directory as second argument (needed to create the admin user)}"
[ -f "$OPENPROJECT_DEV_DIR/Gemfile" ] || { echo "OpenProject dev directory $OPENPROJECT_DEV_DIR is not an OpenProject repository"; exit 1; } [ -f "$OPENPROJECT_DEV_DIR/Gemfile" ] || { echo "OpenProject dev directory $OPENPROJECT_DEV_DIR is not an OpenProject repository"; exit 1; }
@@ -202,6 +203,7 @@ pg_dump --no-owner --format=plain tmp > tmp.dump.sql
echo_header "DONE" echo_header "DONE"
echo "Anonymized database dump saved to $(pwd)/tmp.dump.sql" echo "Anonymized database dump saved to $(pwd)/tmp.dump.sql"
echo "Copy it to your machine and load it like this:" echo "Copy it to your machine and load it like this:"
echo " dropdb --if-exists --force openproject_debug_me" echo " DB_NAME=openproject_debug_me"
echo " createdb --owner=openproject openproject_debug_me" echo ' dropdb --if-exists --force $DB_NAME'
echo " psql --username=openproject openproject_debug_me < tmp.dump.sql" echo ' createdb --owner=openproject $DB_NAME'
echo ' psql --username=openproject $DB_NAME < tmp.dump.sql'