mirror of
https://git.sindominio.net/estibadores/wordpress.git
synced 2024-11-14 23:21:07 +01:00
69 lines
1.8 KiB
Bash
69 lines
1.8 KiB
Bash
#!/usr/bin/env sh
|
|
|
|
# cancel a the plan provided for the current site using the given partner keys
|
|
|
|
usage () {
|
|
echo "Usage: partner-cancel.sh --partner_id=partner_id --partner_secret=partner_secret [--url=http://example.com] [--allow-root] [--partner-tracking-id]"
|
|
}
|
|
|
|
GLOBAL_ARGS=""
|
|
|
|
for i in "$@"; do
|
|
case $i in
|
|
-c=* | --partner_id=* ) CLIENT_ID="${i#*=}"
|
|
shift
|
|
;;
|
|
-s=* | --partner_secret=* ) CLIENT_SECRET="${i#*=}"
|
|
shift
|
|
;;
|
|
-u=* | --url=* ) SITE_URL="${i#*=}"
|
|
shift
|
|
;;
|
|
--partner-tracking-id=* ) PARTNER_TRACKING_ID="${i#*=}"
|
|
shift
|
|
;;
|
|
--allow-root ) GLOBAL_ARGS="--allow-root"
|
|
shift
|
|
;;
|
|
-h | --help ) usage
|
|
exit
|
|
;;
|
|
* ) usage
|
|
exit 1
|
|
esac
|
|
done
|
|
|
|
if [ "$CLIENT_ID" = "" ] || [ "$CLIENT_SECRET" = "" ]; then
|
|
usage
|
|
exit 1
|
|
fi
|
|
|
|
# default API host that can be overridden
|
|
if [ -z "$JETPACK_START_API_HOST" ]; then
|
|
JETPACK_START_API_HOST='public-api.wordpress.com'
|
|
fi
|
|
|
|
# fetch an access token using our client ID/secret
|
|
ACCESS_TOKEN_JSON=$(curl https://$JETPACK_START_API_HOST/oauth2/token --silent --header "Host: public-api.wordpress.com" -d "grant_type=client_credentials&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET&scope=jetpack-partner")
|
|
|
|
# set URL arg for multisite compatibility
|
|
if [ ! -z "$SITE_URL" ]; then
|
|
GLOBAL_ARGS=" --url=$SITE_URL"
|
|
fi
|
|
|
|
ADDITIONAL_ARGS=""
|
|
if [ ! -z "$PARTNER_TRACKING_ID" ]; then
|
|
ADDITIONAL_ARGS="$ADDITIONAL_ARGS --partner-tracking-id=$PARTNER_TRACKING_ID"
|
|
fi
|
|
|
|
# Remove leading whitespace
|
|
GLOBAL_ARGS=$(echo "$GLOBAL_ARGS" | xargs echo)
|
|
|
|
# Intentionally not quoting $GLOBAL_ARGS below so that words in the string are split
|
|
|
|
# silently ensure Jetpack is active
|
|
wp $GLOBAL_ARGS plugin activate jetpack >/dev/null 2>&1
|
|
|
|
# cancel the partner plan
|
|
wp $GLOBAL_ARGS jetpack partner_cancel "$ACCESS_TOKEN_JSON" $ADDITIONAL_ARGS
|