chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
|
||||
# Dependencies: pg-loader, postgres client tools
|
||||
|
||||
install-tools-macos:
|
||||
brew install pgloader
|
||||
brew install libpq
|
||||
|
||||
install-tools-linux:
|
||||
sudo apt install pgloader
|
||||
sudo apt install postgresql-client
|
||||
|
||||
run-docker:
|
||||
docker run -d --rm --name postgres -e POSTGRES_USER=user -e POSTGRES_PASSWORD=pass -p 6432:6432 postgres:alpine
|
||||
|
||||
# Max performance for unit tests.
|
||||
run-docker-unit-test-only:
|
||||
docker run -d --rm --name postgres -e POSTGRES_USER=user -e POSTGRES_PASSWORD=pass \
|
||||
--tmpfs /var/lib/postgresql/data:rw,noexec,nosuid,size=2G \
|
||||
-p 6432:6432 postgres:alpine \
|
||||
-c fsync=off \
|
||||
-c synchronous_commit=off \
|
||||
-c full_page_writes=off \
|
||||
-c wal_level=minimal \
|
||||
-c max_wal_senders=0 \
|
||||
-c archive_mode=off \
|
||||
-c shared_buffers=256MB \
|
||||
-c max_wal_size=512MB \
|
||||
-c checkpoint_timeout=30min \
|
||||
-c logging_collector=off \
|
||||
-c log_statement=none \
|
||||
-c jit=off \
|
||||
-c track_counts=off \
|
||||
-c autovacuum=off
|
||||
|
||||
dump-db:
|
||||
# 1. Convert `data.db` to `data.sqlite-dump.sql` and `data.pg-dump.sql`
|
||||
sqlite3 data.db .dump > data.sqlite-dump.sql
|
||||
-PGPASSWORD=pass dropdb -h 127.0.0.1 -U user pb-data
|
||||
PGPASSWORD=pass createdb -h 127.0.0.1 -U user pb-data
|
||||
-pgloader --with "preserve index names" sqlite://$$(pwd)/data.db pgsql://user:pass@127.0.0.1/pb-data
|
||||
docker exec -it postgres pg_dump -U user -h 127.0.0.1 pb-data > data.pg-dump.sql
|
||||
# 2. Convert `auxiliary.db` to `auxiliary.sqlite-dump.sql` and `auxiliary.pg-dump.sql`
|
||||
sqlite3 auxiliary.db .dump > auxiliary.sqlite-dump.sql
|
||||
-PGPASSWORD=pass dropdb -h 127.0.0.1 -U user pb-auxiliary
|
||||
PGPASSWORD=pass createdb -h 127.0.0.1 -U user pb-auxiliary
|
||||
-pgloader --with "preserve index names" sqlite://$$(pwd)/auxiliary.db pgsql://user:pass@127.0.0.1/pb-auxiliary
|
||||
docker exec -it postgres pg_dump -U user -h 127.0.0.1 pb-auxiliary > auxiliary.pg-dump.sql
|
||||
|
||||
|
||||
PREFIX=pb_test_
|
||||
drop-matching-dbs:
|
||||
@echo "Looking for databases starting with $(PREFIX)..."
|
||||
@PGPASSWORD=pass psql -h 127.0.0.1 -U user -d postgres -t -c "SELECT datname FROM pg_database WHERE datname LIKE '$(PREFIX)%'" | \
|
||||
while read dbname; do \
|
||||
dbname=$$(echo $$dbname | xargs); \
|
||||
if [ ! -z "$$dbname" ]; then \
|
||||
echo "Dropping database: $$dbname"; \
|
||||
PGPASSWORD=pass psql -h 127.0.0.1 -U user -d postgres -c "DROP DATABASE \"$$dbname\""; \
|
||||
fi; \
|
||||
done
|
||||
Reference in New Issue
Block a user