Skip to content

Commit db854a3

Browse files
authored
Merge pull request #3 from IBM/mongo/support-uri
feat: add support to mongo uri
2 parents 7bd27f5 + ca0861c commit db854a3

File tree

3 files changed

+32
-13
lines changed

3 files changed

+32
-13
lines changed

backwork/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM python:3.7.4-alpine3.9
1+
FROM python:3.8.6-alpine3.12
22
LABEL maintainer="[email protected]"
33

44
# Install database clients

backwork/docker-entrypoint.sh

Lines changed: 30 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -110,23 +110,42 @@ upload_backup_cos() {
110110
back_up_mongo() {
111111
local filename
112112

113-
if [[ -z "${MONGO_HOST:-}" ]]; then
114-
log "Skip backing up Mongo because no Mongo host specified"
113+
if [[ -z "${MONGO_HOST:-}" ]] && [[ -z "${MONGO_URI:-}" ]]; then
114+
log "Skip backing up Mongo because no Mongo host or Mongo uri is specified"
115115
return
116116
fi
117117

118118
filename=mongo_backup_$(date +"%Y%m%d_%H%M%S").archive.gz
119119

120120
log "Taking mongo backup"
121-
backwork "${NOTIFICATION_SETTINGS[@]}" backup mongo \
122-
-u "${MONGO_BACKUP_USER}" \
123-
-p "${MONGO_BACKUP_PASSWORD}" \
124-
--host="${MONGO_HOST}" \
125-
--archive="${BACKUP_PATH:?}/${filename}" \
126-
--gzip
127-
log "Done: Taking mongo backup"
128-
129-
upload_backup "${filename:?}" "mongo_backup"
121+
122+
if [[ -z "${MONGO_URI}" ]]
123+
then
124+
echo "MONGO_URI is not specified, trying MONGO_HOST"
125+
else
126+
backwork "${NOTIFICATION_SETTINGS[@]}" backup mongo \
127+
--uri "${MONGO_URI}" \
128+
--archive="${BACKUP_PATH:?}/${filename}" \
129+
--gzip
130+
log "Done: Taking mongo backup"
131+
upload_backup "${filename:?}" "mongo_backup"
132+
return
133+
fi
134+
135+
if [[ -z "${MONGO_URI}" ]]
136+
then
137+
echo "MONGO_HOST is not specified, skipping."
138+
else
139+
backwork "${NOTIFICATION_SETTINGS[@]}" backup mongo \
140+
-u "${MONGO_BACKUP_USER}" \
141+
-p "${MONGO_BACKUP_PASSWORD}" \
142+
--host="${MONGO_HOST}" \
143+
--archive="${BACKUP_PATH:?}/${filename}" \
144+
--authenticationDatabase=${MONGO_AUTH_SOURCE:-admin} \
145+
--gzip
146+
log "Done: Taking mongo backup"
147+
upload_backup "${filename:?}" "mongo_backup"
148+
fi
130149
}
131150

132151
back_up_mysql() {

docker-compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ services:
77
backwork:
88
build:
99
context: ./backwork
10-
image: bigdatauniversity/portal.gamora:dev
10+
image: bigdatauniversity/backwork:1.5.0
1111
environment:
1212
- MYSQL_HOST=mysql
1313
- MYSQL_PORT=3306

0 commit comments

Comments
 (0)