feat: add command to list linked services for a given app
This commit is contained in:
@@ -17,6 +17,7 @@ sudo dokku plugin:install https://github.com/dokku/dokku-postgres.git postgres
|
||||
## commands
|
||||
|
||||
```
|
||||
postgres:app-links <app> List all postgres service links for a given app
|
||||
postgres:backup <name> <bucket> (--use-iam) Create a backup of the postgres service to an existing s3 bucket
|
||||
postgres:backup-auth <name> <aws_access_key_id> <aws_secret_access_key> (<aws_default_region>) (<aws_signature_version>) (<endpoint_url>) Sets up authentication for backups on the postgres service
|
||||
postgres:backup-deauth <name> Removes backup authentication for the postgres service
|
||||
|
||||
@@ -118,6 +118,22 @@ service_alternative_alias() {
|
||||
echo "$ALIAS"
|
||||
}
|
||||
|
||||
service_app_links() {
|
||||
declare desc="Outputs all service links for a given app"
|
||||
declare APP="$1"
|
||||
local SERVICE LINKED_APP
|
||||
|
||||
pushd "$PLUGIN_DATA_ROOT" > /dev/null
|
||||
for SERVICE in *; do
|
||||
[[ -f "$SERVICE/LINKS" ]] || continue
|
||||
for LINKED_APP in $(<"$SERVICE/LINKS"); do
|
||||
if [[ "$LINKED_APP" == "$APP" ]] ; then
|
||||
echo "$SERVICE"
|
||||
fi
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
service_backup() {
|
||||
declare desc="Creates a backup of a service to an existing s3 bucket"
|
||||
declare SERVICE="$1" BUCKET_NAME="$2" USE_IAM_OPTIONAL_FLAG="$3"
|
||||
|
||||
21
subcommands/app-links
Executable file
21
subcommands/app-links
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env bash
|
||||
source "$(dirname "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")/config"
|
||||
set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
|
||||
source "$PLUGIN_BASE_PATH/common/functions"
|
||||
source "$(dirname "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")/functions"
|
||||
|
||||
service-app-links-cmd() {
|
||||
#E list all $PLUGIN_COMMAND_PREFIX services that are linked to the 'playground' app.
|
||||
#E dokku $PLUGIN_COMMAND_PREFIX:app-links playground
|
||||
#A app, app to run command against
|
||||
declare desc="list all $PLUGIN_SERVICE service links for a given app"
|
||||
local cmd="$PLUGIN_COMMAND_PREFIX:app-links" argv=("$@"); [[ ${argv[0]} == "$cmd" ]] && shift 1
|
||||
declare APP="$1"
|
||||
APP=${APP:="$DOKKU_APP_NAME"}
|
||||
|
||||
[[ -z "$APP" ]] && dokku_log_fail "Please specify an app to run the command on"
|
||||
verify_app_name "$APP"
|
||||
service_app_links "$APP"
|
||||
}
|
||||
|
||||
service-app-links-cmd "$@"
|
||||
Reference in New Issue
Block a user