Initial commit.
This commit is contained in:
Executable
+40
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env bash
|
||||
set -eo pipefail
|
||||
[[ $DOKKU_TRACE ]] && set -x
|
||||
source "$(dirname "$(dirname "${BASH_SOURCE[0]}")")/functions"
|
||||
|
||||
cmd-google-auth-exclude() {
|
||||
declare desc="exempt paths from Google sign-in (prefix: /path, regex: re:^/pattern)"
|
||||
local cmd="google-auth:exclude"
|
||||
[[ "$1" == "$cmd" ]] && shift 1
|
||||
declare APP="$1"
|
||||
shift 1 || true
|
||||
|
||||
[[ -n "$APP" ]] || dokku_log_fail "usage: dokku google-auth:exclude <app> <pattern...>"
|
||||
verify_app_name "$APP"
|
||||
|
||||
if [[ $# -eq 0 ]]; then
|
||||
dokku_log_info2 "excluded paths for $APP"
|
||||
local pattern
|
||||
while IFS= read -r pattern; do
|
||||
[[ -n "$pattern" ]] && dokku_log_verbose "$pattern"
|
||||
done < <(fn-ga-excludes "$APP")
|
||||
return 0
|
||||
fi
|
||||
|
||||
local pattern
|
||||
for pattern in "$@"; do
|
||||
fn-ga-validate-pattern "$pattern" ||
|
||||
dokku_log_fail "invalid pattern '$pattern' — use a path prefix like /api/webhooks or a regex like re:^/v[0-9]+/public/ (no spaces, quotes, or ;{})"
|
||||
fn-ga-exclude-add "$APP" "$pattern"
|
||||
dokku_log_info1 "excluded: $pattern"
|
||||
done
|
||||
|
||||
if fn-google-auth-app-enabled "$APP"; then
|
||||
fn-ga-apply "$APP"
|
||||
else
|
||||
dokku_log_verbose "patterns saved; they take effect when google-auth is enabled for $APP"
|
||||
fi
|
||||
}
|
||||
|
||||
cmd-google-auth-exclude "$@"
|
||||
Reference in New Issue
Block a user