Skip to content

Commit cf3a8ba

Browse files
committed
Add planet-dump-ng for planet file processing
1 parent 51c321d commit cf3a8ba

File tree

2 files changed

+46
-17
lines changed

2 files changed

+46
-17
lines changed

images/backup-restore/start.sh

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,25 +35,26 @@ cloudStorageOps() {
3535
}
3636

3737
backupDB() {
38-
local LOCAL_BACKUP_FILE=${BACKUP_CLOUD_FILE}.sql.gz
39-
local CLOUD_BACKUP_FILE="${BACKUP_CLOUD_FOLDER}/${BACKUP_CLOUD_FILE}.sql.gz"
38+
local LOCAL_BACKUP_FILE=${BACKUP_CLOUD_FILE}.dump
39+
local CLOUD_BACKUP_FILE="${BACKUP_CLOUD_FOLDER}/${BACKUP_CLOUD_FILE}.dump"
4040
if [ "$SET_DATE_AT_NAME" == "true" ]; then
4141
local CURRENT_DATE=$(date '+%Y%m%d-%H%M')
42-
LOCAL_BACKUP_FILE="${BACKUP_CLOUD_FILE}-${CURRENT_DATE}.sql.gz"
43-
CLOUD_BACKUP_FILE="${BACKUP_CLOUD_FOLDER}/${BACKUP_CLOUD_FILE}-${CURRENT_DATE}.sql.gz"
42+
LOCAL_BACKUP_FILE="${BACKUP_CLOUD_FILE}-${CURRENT_DATE}.dump"
43+
CLOUD_BACKUP_FILE="${BACKUP_CLOUD_FOLDER}/${BACKUP_CLOUD_FILE}-${CURRENT_DATE}.dump"
4444
fi
4545

4646
# Backup database with max compression
4747
echo "Backing up DB ${POSTGRES_DB} into ${LOCAL_BACKUP_FILE}"
48-
pg_dump -h ${POSTGRES_HOST} -U ${POSTGRES_USER} ${POSTGRES_DB} | gzip -9 >${LOCAL_BACKUP_FILE}
48+
# pg_dump -h ${POSTGRES_HOST} -U ${POSTGRES_USER} ${POSTGRES_DB} | gzip -9 >${LOCAL_BACKUP_FILE}
49+
pg_dump -h ${POSTGRES_HOST} -U ${POSTGRES_USER} -Fc -f ${LOCAL_BACKUP_FILE} ${POSTGRES_DB}
4950

5051
# Handle cloud storage based on the provider
5152
cloudStorageOps "${LOCAL_BACKUP_FILE}" "${CLOUD_BACKUP_FILE}"
5253
}
5354

5455
restoreDB() {
5556
local CURRENT_DATE=$(date '+%Y%m%d-%H%M')
56-
local RESTORE_FILE="backup.sql.gz"
57+
local RESTORE_FILE="backup.dump"
5758
local LOG_RESULT_FILE="restore_results-${CURRENT_DATE}.log"
5859
local flag=true
5960

@@ -62,7 +63,7 @@ restoreDB() {
6263
flag=false
6364
wget -O ${RESTORE_FILE} ${RESTORE_URL_FILE}
6465
echo "Restoring ${RESTORE_URL_FILE} in ${POSTGRES_DB}"
65-
gunzip -c <${RESTORE_FILE} | psql -h ${POSTGRES_HOST} -U ${POSTGRES_USER} -d ${POSTGRES_DB} | tee ${LOG_RESULT_FILE}
66+
pg_restore -h ${POSTGRES_HOST} -U ${POSTGRES_USER} -d ${POSTGRES_DB} --create --no-owner ${RESTORE_FILE} | tee ${LOG_RESULT_FILE}
6667
# aws s3 cp ${LOG_RESULT_FILE} s3://${AWS_S3_BUCKET}/${LOG_RESULT_FILE}
6768
echo "Import data to ${POSTGRES_DB} has finished ..."
6869
done

images/osm-processor/Dockerfile

Lines changed: 38 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,45 @@ RUN set -ex \
77
&& apt-get update \
88
&& DEBIAN_FRONTEND=noninteractive apt-get install \
99
-y --no-install-recommends \
10-
"osmosis" \
11-
"osmium-tool" \
10+
osmosis \
11+
osmium-tool \
1212
# Cloud provider CLIs
13-
"awscli" \
14-
"gsutil" \
15-
"azure-cli" \
13+
awscli \
14+
gsutil \
15+
azure-cli \
1616
# PostgreSQL client
17-
"postgresql-client" \
17+
postgresql-client \
1818
# Other useful packages
19-
"rsync" \
20-
"pyosmium" \
21-
"tmux" \
22-
"zsh" \
19+
rsync \
20+
pyosmium \
21+
tmux \
22+
zsh \
23+
git \
24+
&& rm -rf /var/lib/apt/lists/*
25+
26+
# Install planet-dump-ng
27+
RUN set -ex \
28+
&& apt-get update \
29+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
30+
build-essential \
31+
automake \
32+
autoconf \
33+
libxml2-dev \
34+
libboost-dev \
35+
libboost-program-options-dev \
36+
libboost-date-time-dev \
37+
libboost-filesystem-dev \
38+
libboost-thread-dev \
39+
libboost-iostreams-dev \
40+
libosmpbf-dev \
41+
osmpbf-bin \
42+
libprotobuf-dev \
43+
pkg-config \
44+
git \
45+
&& git clone https://github.com/zerebubuth/planet-dump-ng.git /opt/planet-dump-ng \
46+
&& cd /opt/planet-dump-ng \
47+
&& ./autogen.sh \
48+
&& ./configure \
49+
&& make \
50+
&& ln -s /opt/planet-dump-ng/planet-dump-ng /usr/local/bin/planet-dump-ng \
2351
&& rm -rf /var/lib/apt/lists/*

0 commit comments

Comments
 (0)