Skip to content

Instantly share code, notes, and snippets.

@khanhdodang
Created August 21, 2019 20:58
Show Gist options
  • Save khanhdodang/3fdd569c1f4ff70079ec2732f80f229c to your computer and use it in GitHub Desktop.
Save khanhdodang/3fdd569c1f4ff70079ec2732f80f229c to your computer and use it in GitHub Desktop.
replace username, apikey, and filename
#!/bin/bash
# set -ex
# # Install ack
# curl https://beyondgrep.com/ack-2.22-single-file > /usr/local/bin/ack && chmod 0755 /usr/local/bin/ack
USERNAME='khanhdo'
APIKEY='b4e1a551-a8f3-4cd6-9534-67f62bace044'
FILENAME="/Users/khanhdo/Downloads/ApiDemos-debug.apk"
APPID='38094'
echo 'Step 1: Generate Basic Authorization'
BASICAUTH="$(echo -n $USERNAME:$APIKEY | base64)"
echo $BASICAUTH
echo 'Step 2: Generate Upload URL'
JSON="{\"filename\":\"${FILENAME}\"}" # Upload app
# JSON="{\"filename\":\"${FILENAME}\",\"appId\":$APPID}" # Upload app version
generateUploadURL=`curl -X POST \
https://api.kobiton.com/v1/apps/uploadUrl \
-H "Authorization: Basic $BASICAUTH" \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d $JSON`
echo $generateUploadURL > .temp.response.json
echo `cat ".temp.response.json"`
UPLOADURL=`cat ".temp.response.json" | ack -o --match '(?<=url\":")([_\%\&=\?\.aA-zZ0-9:/-]*)'`
APPPATH=`cat ".temp.response.json" | ack -o --match '(?<=appPath\":")([_\%\&=\?\.aA-zZ0-9:/-]*)'`
echo 'Step 3: Upload File To S3'
curl -T $FILENAME \
-X PUT $UPLOADURL \
-H 'content-type: application/octet-stream' \
-H 'x-amz-tagging: unsaved=true'
echo 'Step 4: Create Application Or Version'
JSON="{\"appPath\":\"${APPPATH}\"}"
curl -X POST \
https://api.kobiton.com/v1/apps \
-H "Authorization: Basic $BASICAUTH" \
-H 'content-type: application/json' \
-d $JSON
echo '...Done'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment