From e299e5b7e97f6e07cde76bff13e245883278d4a9 Mon Sep 17 00:00:00 2001 From: rlespinasse Date: Wed, 13 Oct 2021 11:33:10 +0200 Subject: [PATCH] fix: support macos on shell script --- slugify.sh | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/slugify.sh b/slugify.sh index 3dcb854..3b703d8 100755 --- a/slugify.sh +++ b/slugify.sh @@ -1,18 +1,26 @@ #!/usr/bin/env bash -KEY=${INPUT_KEY^^} -CS_VALUE=${INPUT_VALUE:-${!INPUT_KEY}} -VALUE=${CS_VALUE,,} +if [[ "$OSTYPE" == "darwin"* ]]; then + # On MacOS, + # bash don't support substitution, so we use 'tr' + KEY=$(echo "$INPUT_KEY" | tr '[:lower:]' '[:upper:]') + CS_VALUE=${INPUT_VALUE:-${!INPUT_KEY}} + VALUE=$(echo "$CS_VALUE" | tr '[:upper:]' '[:lower:]') +else + KEY=${INPUT_KEY^^} + CS_VALUE=${INPUT_VALUE:-${!INPUT_KEY}} + VALUE=${CS_VALUE,,} +fi slug() { echo "$1" | - sed -r 's#refs/[^\/]*/##;s/[^a-zA-Z0-9._]+/-/g;s/^-*//;s/-*$//' | + sed -E 's#refs/[^\/]*/##;s/[^a-zA-Z0-9._]+/-/g;s/-+/-/g;s/^-*//;s/-*$//' | cut -c1-63 } slug_url() { echo "$1" | - sed -r 's#refs/[^\/]*/##;s/[^a-zA-Z0-9_]+/-/g;s/^-//;s/-$//' | + sed -E 's#refs/[^\/]*/##;s/[^a-zA-Z0-9_]+/-/g;s/-+/-/g;s/^-*//;s/-*$//' | cut -c1-63 }