mirror of
https://mau.dev/maunium/synapse.git
synced 2024-10-01 01:36:05 -04:00
Fix make_full_schema to create the db with the right options and user (#9931)
This commit is contained in:
parent
b65ecaff9b
commit
765473567c
1
changelog.d/9931.misc
Normal file
1
changelog.d/9931.misc
Normal file
@ -0,0 +1 @@
|
|||||||
|
Minor fixes to the `make_full_schema.sh` script.
|
@ -6,7 +6,7 @@
|
|||||||
# It does so by having Synapse generate an up-to-date SQLite DB, then running
|
# It does so by having Synapse generate an up-to-date SQLite DB, then running
|
||||||
# synapse_port_db to convert it to Postgres. It then dumps the contents of both.
|
# synapse_port_db to convert it to Postgres. It then dumps the contents of both.
|
||||||
|
|
||||||
POSTGRES_HOST="localhost"
|
export PGHOST="localhost"
|
||||||
POSTGRES_DB_NAME="synapse_full_schema.$$"
|
POSTGRES_DB_NAME="synapse_full_schema.$$"
|
||||||
|
|
||||||
SQLITE_FULL_SCHEMA_OUTPUT_FILE="full.sql.sqlite"
|
SQLITE_FULL_SCHEMA_OUTPUT_FILE="full.sql.sqlite"
|
||||||
@ -32,7 +32,7 @@ usage() {
|
|||||||
while getopts "p:co:h" opt; do
|
while getopts "p:co:h" opt; do
|
||||||
case $opt in
|
case $opt in
|
||||||
p)
|
p)
|
||||||
POSTGRES_USERNAME=$OPTARG
|
export PGUSER=$OPTARG
|
||||||
;;
|
;;
|
||||||
c)
|
c)
|
||||||
# Print all commands that are being executed
|
# Print all commands that are being executed
|
||||||
@ -69,7 +69,7 @@ if [ ${#unsatisfied_requirements} -ne 0 ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$POSTGRES_USERNAME" ]; then
|
if [ -z "$PGUSER" ]; then
|
||||||
echo "No postgres username supplied"
|
echo "No postgres username supplied"
|
||||||
usage
|
usage
|
||||||
exit 1
|
exit 1
|
||||||
@ -84,8 +84,9 @@ fi
|
|||||||
# Create the output directory if it doesn't exist
|
# Create the output directory if it doesn't exist
|
||||||
mkdir -p "$OUTPUT_DIR"
|
mkdir -p "$OUTPUT_DIR"
|
||||||
|
|
||||||
read -rsp "Postgres password for '$POSTGRES_USERNAME': " POSTGRES_PASSWORD
|
read -rsp "Postgres password for '$PGUSER': " PGPASSWORD
|
||||||
echo ""
|
echo ""
|
||||||
|
export PGPASSWORD
|
||||||
|
|
||||||
# Exit immediately if a command fails
|
# Exit immediately if a command fails
|
||||||
set -e
|
set -e
|
||||||
@ -131,9 +132,9 @@ report_stats: false
|
|||||||
database:
|
database:
|
||||||
name: "psycopg2"
|
name: "psycopg2"
|
||||||
args:
|
args:
|
||||||
user: "$POSTGRES_USERNAME"
|
user: "$PGUSER"
|
||||||
host: "$POSTGRES_HOST"
|
host: "$PGHOST"
|
||||||
password: "$POSTGRES_PASSWORD"
|
password: "$PGPASSWORD"
|
||||||
database: "$POSTGRES_DB_NAME"
|
database: "$POSTGRES_DB_NAME"
|
||||||
|
|
||||||
# Suppress the key server warning.
|
# Suppress the key server warning.
|
||||||
@ -150,7 +151,7 @@ scripts-dev/update_database --database-config "$SQLITE_CONFIG"
|
|||||||
|
|
||||||
# Create the PostgreSQL database.
|
# Create the PostgreSQL database.
|
||||||
echo "Creating postgres database..."
|
echo "Creating postgres database..."
|
||||||
createdb $POSTGRES_DB_NAME
|
createdb --lc-collate=C --lc-ctype=C --template=template0 "$POSTGRES_DB_NAME"
|
||||||
|
|
||||||
echo "Copying data from SQLite3 to Postgres with synapse_port_db..."
|
echo "Copying data from SQLite3 to Postgres with synapse_port_db..."
|
||||||
if [ -z "$COVERAGE" ]; then
|
if [ -z "$COVERAGE" ]; then
|
||||||
@ -181,7 +182,7 @@ DROP TABLE user_directory_search_docsize;
|
|||||||
DROP TABLE user_directory_search_stat;
|
DROP TABLE user_directory_search_stat;
|
||||||
"
|
"
|
||||||
sqlite3 "$SQLITE_DB" <<< "$SQL"
|
sqlite3 "$SQLITE_DB" <<< "$SQL"
|
||||||
psql $POSTGRES_DB_NAME -U "$POSTGRES_USERNAME" -w <<< "$SQL"
|
psql "$POSTGRES_DB_NAME" -w <<< "$SQL"
|
||||||
|
|
||||||
echo "Dumping SQLite3 schema to '$OUTPUT_DIR/$SQLITE_FULL_SCHEMA_OUTPUT_FILE'..."
|
echo "Dumping SQLite3 schema to '$OUTPUT_DIR/$SQLITE_FULL_SCHEMA_OUTPUT_FILE'..."
|
||||||
sqlite3 "$SQLITE_DB" ".dump" > "$OUTPUT_DIR/$SQLITE_FULL_SCHEMA_OUTPUT_FILE"
|
sqlite3 "$SQLITE_DB" ".dump" > "$OUTPUT_DIR/$SQLITE_FULL_SCHEMA_OUTPUT_FILE"
|
||||||
|
Loading…
Reference in New Issue
Block a user