@@ -110,23 +110,42 @@ upload_backup_cos() {
110
110
back_up_mongo () {
111
111
local filename
112
112
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"
115
115
return
116
116
fi
117
117
118
118
filename=mongo_backup_$( date +" %Y%m%d_%H%M%S" ) .archive.gz
119
119
120
120
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
130
149
}
131
150
132
151
back_up_mysql () {
0 commit comments