Browse Source

Bug fix #1643

Added private bash function __urlencode to eliminate the php dependency which failed on godaddy due to multiple php instances and cron using the one without -r option.
pull/1644/head
Santeri Kannisto 7 years ago
committed by GitHub
parent
commit
7dcc9b0481
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 25
      deploy/cpanel_uapi.sh

25
deploy/cpanel_uapi.sh

@ -2,11 +2,30 @@
# Here is the script to deploy the cert to your cpanel using the cpanel API. # Here is the script to deploy the cert to your cpanel using the cpanel API.
# Uses command line uapi. --user option is needed only if run as root. # Uses command line uapi. --user option is needed only if run as root.
# Returns 0 when success. # Returns 0 when success.
# Written by Santeri Kannisto <santeri.kannisto@2globalnomads.info>
# Written by Santeri Kannisto <santeri.kannisto@webseodesigners.com>
# Public domain, 2017 # Public domain, 2017
#export DEPLOY_CPANEL_USER=myusername #export DEPLOY_CPANEL_USER=myusername
######## Private functions #####################
__urlencode() {
local string="${1}"
local strlen=${#string}
local encoded=""
local pos c o
for (( pos=0 ; pos<strlen ; pos++ )); do
c=${string:$pos:1}
case "$c" in
[-_.~a-zA-Z0-9] ) o="${c}" ;;
*) printf -v o '%%%02x' "'$c"
esac
encoded+="${o}"
done
echo "${encoded}"
}
######## Public functions ##################### ######## Public functions #####################
#domain keyfile certfile cafile fullchain #domain keyfile certfile cafile fullchain
@ -35,8 +54,8 @@ cpanel_uapi_deploy() {
# read cert and key files and urlencode both # read cert and key files and urlencode both
_certstr=$(cat "$_ccert") _certstr=$(cat "$_ccert")
_keystr=$(cat "$_ckey") _keystr=$(cat "$_ckey")
_cert=$(php -r "echo urlencode(\"$_certstr\");")
_key=$(php -r "echo urlencode(\"$_keystr\");")
_cert=$(__urlencode "$_certstr")
_key=$(__urlencode "$_keystr")
_debug _cert "$_cert" _debug _cert "$_cert"
_debug _key "$_key" _debug _key "$_key"

Loading…
Cancel
Save