diff --git a/scripts/bundle.sh b/scripts/bundle.sh index aabd728d3d..06ea1ba928 100755 --- a/scripts/bundle.sh +++ b/scripts/bundle.sh @@ -33,13 +33,27 @@ what="$1" # Transforms a branch name in the form of "pr/" or # "mr/" into a proper ref for GitHub or GitLab. + +# Transform a branch name to a ref. +# +# For GitHub the following formats are allowed: +# - pr/123 +# - pull/123 +# - https://github.com/OISF/libhtp/pull/123 +# - OISF/libhtp#123 +# +# For GibLab only the format "mr/123" is supported. transform_branch() { - pr=$(echo "${1}" | sed -n 's/^pr\/\([[:digit:]]\+\)$/\1/p') + pr=$(echo "${1}" | sed -n \ + -e 's/^https:\/\/github.com\/OISF\/.*\/pull\/\([0-9]*\)$/\1/p' \ + -e 's/^OISF\/.*#\([0-9]*\)$/\1/p' \ + -e 's/^pull\/\([0-9]*\)$/\1/p' \ + -e 's/^pr\/\([0-9]*\)$/\1/p') if [ "${pr}" ]; then - echo "refs/pull/${pr}/head" - return + echo "refs/pull/${pr}/head" + return fi - + mr=$(echo "${1}" | sed -n 's/^mr\/\([[:digit:]]\+\)$/\1/p') if [ "${mr}" ]; then echo "refs/merge-requests/${mr}/head"