chore: move to helper functions for fetching passwords
This commit is contained in:
@@ -586,6 +586,26 @@ service_parse_args() {
|
|||||||
shift "$((OPTIND - 1))" # remove options from positional parameters
|
shift "$((OPTIND - 1))" # remove options from positional parameters
|
||||||
}
|
}
|
||||||
|
|
||||||
|
service_password() {
|
||||||
|
declare desc="Fetch the password for a service"
|
||||||
|
declare SERVICE="$1"
|
||||||
|
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
||||||
|
local PASSWORD_FILE="$SERVICE_ROOT/PASSWORD"
|
||||||
|
if [[ -f "$PASSWORD" ]]; then
|
||||||
|
cat "$PASSWORD_FILE"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
service_root_password() {
|
||||||
|
declare desc="Fetch the root password for a service"
|
||||||
|
declare SERVICE="$1"
|
||||||
|
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
||||||
|
local PASSWORD_FILE="$SERVICE_ROOT/ROOTPASSWORD"
|
||||||
|
if [[ -f "$PASSWORD" ]]; then
|
||||||
|
cat "$PASSWORD_FILE"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
service_port_expose() {
|
service_port_expose() {
|
||||||
declare desc="Wrapper for exposing service ports"
|
declare desc="Wrapper for exposing service ports"
|
||||||
declare SERVICE="$1"
|
declare SERVICE="$1"
|
||||||
|
|||||||
17
functions
17
functions
@@ -14,7 +14,7 @@ service_connect() {
|
|||||||
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
||||||
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
||||||
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
||||||
local PASSWORD="$(cat "$SERVICE_ROOT/PASSWORD")"
|
local PASSWORD="$(service_password "$SERVICE")"
|
||||||
local SERVICE_TTY_OPTS
|
local SERVICE_TTY_OPTS
|
||||||
has_tty && SERVICE_TTY_OPTS="-t"
|
has_tty && SERVICE_TTY_OPTS="-t"
|
||||||
|
|
||||||
@@ -83,8 +83,8 @@ service_create_container() {
|
|||||||
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
||||||
local SERVICE_HOST_ROOT="$PLUGIN_DATA_HOST_ROOT/$SERVICE"
|
local SERVICE_HOST_ROOT="$PLUGIN_DATA_HOST_ROOT/$SERVICE"
|
||||||
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
||||||
local ROOTPASSWORD="$(cat "$SERVICE_ROOT/ROOTPASSWORD")"
|
local ROOTPASSWORD="$(service_root_password "$SERVICE")"
|
||||||
local PASSWORD="$(cat "$SERVICE_ROOT/PASSWORD")"
|
local PASSWORD="$(service_password "$SERVICE")"
|
||||||
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
||||||
|
|
||||||
if [[ -f "$SERVICE_ROOT/MONGO_CONFIG_OPTIONS" ]]; then
|
if [[ -f "$SERVICE_ROOT/MONGO_CONFIG_OPTIONS" ]]; then
|
||||||
@@ -109,7 +109,7 @@ service_export() {
|
|||||||
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
||||||
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
||||||
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
||||||
local PASSWORD="$(cat "$SERVICE_ROOT/PASSWORD")"
|
local PASSWORD="$(service_password "$SERVICE")"
|
||||||
|
|
||||||
[[ -n $SSH_TTY ]] && stty -opost
|
[[ -n $SSH_TTY ]] && stty -opost
|
||||||
docker exec "$SERVICE_NAME" bash -c "mongodump -d $DATABASE_NAME -u \"$SERVICE\" -p \"$PASSWORD\" --authenticationDatabase \"$DATABASE_NAME\" --quiet --gzip --archive 2>/dev/null"
|
docker exec "$SERVICE_NAME" bash -c "mongodump -d $DATABASE_NAME -u \"$SERVICE\" -p \"$PASSWORD\" --authenticationDatabase \"$DATABASE_NAME\" --quiet --gzip --archive 2>/dev/null"
|
||||||
@@ -124,7 +124,7 @@ service_import() {
|
|||||||
local SERVICE_HOST_ROOT="$PLUGIN_DATA_HOST_ROOT/$SERVICE"
|
local SERVICE_HOST_ROOT="$PLUGIN_DATA_HOST_ROOT/$SERVICE"
|
||||||
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
local SERVICE_NAME="$(get_service_name "$SERVICE")"
|
||||||
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
||||||
local PASSWORD="$(cat "$SERVICE_ROOT/PASSWORD")"
|
local PASSWORD="$(service_password "$SERVICE")"
|
||||||
|
|
||||||
if [[ -t 0 ]]; then
|
if [[ -t 0 ]]; then
|
||||||
dokku_log_fail "No data provided on stdin."
|
dokku_log_fail "No data provided on stdin."
|
||||||
@@ -149,8 +149,8 @@ service_start() {
|
|||||||
|
|
||||||
dokku_log_info2_quiet "Starting container"
|
dokku_log_info2_quiet "Starting container"
|
||||||
local PREVIOUS_ID=$(docker ps -aq --no-trunc --filter "status=exited" --filter "name=^/$SERVICE_NAME$" --format '{{ .ID }}') || true
|
local PREVIOUS_ID=$(docker ps -aq --no-trunc --filter "status=exited" --filter "name=^/$SERVICE_NAME$" --format '{{ .ID }}') || true
|
||||||
local ROOTPASSWORD="$(cat "$SERVICE_ROOT/ROOTPASSWORD")"
|
local ROOTPASSWORD="$(service_root_password "$SERVICE")"
|
||||||
local PASSWORD="$(cat "$SERVICE_ROOT/PASSWORD")"
|
local PASSWORD="$(service_password "$SERVICE")"
|
||||||
|
|
||||||
if [[ -n $PREVIOUS_ID ]]; then
|
if [[ -n $PREVIOUS_ID ]]; then
|
||||||
docker start "$PREVIOUS_ID" >/dev/null
|
docker start "$PREVIOUS_ID" >/dev/null
|
||||||
@@ -165,9 +165,8 @@ service_start() {
|
|||||||
|
|
||||||
service_url() {
|
service_url() {
|
||||||
local SERVICE="$1"
|
local SERVICE="$1"
|
||||||
local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
|
||||||
local SERVICE_DNS_HOSTNAME="$(service_dns_hostname "$SERVICE")"
|
local SERVICE_DNS_HOSTNAME="$(service_dns_hostname "$SERVICE")"
|
||||||
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
local DATABASE_NAME="$(get_database_name "$SERVICE")"
|
||||||
local PASSWORD="$(cat "$SERVICE_ROOT/PASSWORD")"
|
local PASSWORD="$(service_password "$SERVICE")"
|
||||||
echo "$PLUGIN_SCHEME://$SERVICE:$PASSWORD@$SERVICE_DNS_HOSTNAME:${PLUGIN_DATASTORE_PORTS[0]}/$DATABASE_NAME"
|
echo "$PLUGIN_SCHEME://$SERVICE:$PASSWORD@$SERVICE_DNS_HOSTNAME:${PLUGIN_DATASTORE_PORTS[0]}/$DATABASE_NAME"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ service-connect-admin-cmd() {
|
|||||||
verify_service_name "$SERVICE"
|
verify_service_name "$SERVICE"
|
||||||
SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE"
|
||||||
SERVICE_NAME="$(get_service_name "$SERVICE")"
|
SERVICE_NAME="$(get_service_name "$SERVICE")"
|
||||||
PASSWORD="$(cat "$SERVICE_ROOT/ROOTPASSWORD")"
|
PASSWORD="$(service_root_password "$SERVICE")"
|
||||||
has_tty && SERVICE_TTY_OPTS="-t"
|
has_tty && SERVICE_TTY_OPTS="-t"
|
||||||
|
|
||||||
docker exec -i $SERVICE_TTY_OPTS "$SERVICE_NAME" mongo -u admin -p "$PASSWORD" --authenticationDatabase admin "$SERVICE"
|
docker exec -i $SERVICE_TTY_OPTS "$SERVICE_NAME" mongo -u admin -p "$PASSWORD" --authenticationDatabase admin "$SERVICE"
|
||||||
|
|||||||
Reference in New Issue
Block a user