aboutsummaryrefslogtreecommitdiff
path: root/upload_amo.sh
diff options
context:
space:
mode:
authorWojtek Kosior <koszko@koszko.org>2022-02-25 13:58:04 +0100
committerWojtek Kosior <koszko@koszko.org>2022-02-25 13:58:04 +0100
commit098e5e504a8383eaff41153d47b3f52e8ac98e90 (patch)
tree4d6a4de92ddbe6109c2801008ef99be8139da21e /upload_amo.sh
parent194f23f4d8a874505a5959671dac8a1b9d2c0704 (diff)
downloadbrowser-extension-098e5e504a8383eaff41153d47b3f52e8ac98e90.tar.gz
browser-extension-098e5e504a8383eaff41153d47b3f52e8ac98e90.zip
remove unused shell_utils, update upload_amo.sh to still workv1.0-beta1
Even though upload_amo.sh scripts for extension signing is included, we're currently unable to use it because Firefox API keys needed for that require execution of nonfree JS and Jahoti's Mozoid tool is no longer working <https://hydrillabugs.koszko.org/issues/111>
Diffstat (limited to 'upload_amo.sh')
-rwxr-xr-xupload_amo.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/upload_amo.sh b/upload_amo.sh
index 71e12ca..3739c9c 100755
--- a/upload_amo.sh
+++ b/upload_amo.sh
@@ -23,6 +23,27 @@ API_KEY="$2"
SECRET="$3"
XPI_PATH="$4"
+escape_regex_special() {
+ printf %s "$1" | sed 's/\([]\.*[-]\)/\\\1/g'
+}
+
+# Note: We don't actually parse JSON. We extract needed keys with sed regexes
+# which does not work in the general case but is sufficient for now.
+_get_json_key() {
+ local KEY_REG="$(escape_regex_special "$1")"
+ printf %s "$2" |
+ awk '{printf "%s", $0}' |
+ sed 's/^.*\("'"$KEY_REG"'"[[:space:]]*:[[:space:]]*"\([^"]*\)"\).*$/\2/'
+}
+
+get_json_key() {
+ local JSON="$2"
+ local VALUE="$(_get_json_key "$@")"
+ if [ "x$VALUE" != "x$JSON" ]; then
+ printf %s "$VALUE"
+ fi
+}
+
base64url() {
printf %s "$1" | base64 -w 0 | tr '/+' '_-' | tr -d '='
}