30 lines
626 B
Bash
30 lines
626 B
Bash
#! /bin/bash
|
|
|
|
GITLAB_PAT="$GITLAB_PAT"
|
|
PROJECT="$PROJECT"
|
|
BLOB="$BLOB"
|
|
|
|
urlencode() {
|
|
# urlencode <string>
|
|
|
|
old_lc_collate=$LC_COLLATE
|
|
LC_COLLATE=C
|
|
|
|
local length="${#1}"
|
|
for (( i = 0; i < length; i++ )); do
|
|
local c="${1:$i:1}"
|
|
case $c in
|
|
[a-zA-Z0-9.~_-]) printf '%s' "$c" ;;
|
|
*) printf '%%%02X' "'$c" ;;
|
|
esac
|
|
done
|
|
|
|
LC_COLLATE=$old_lc_collate
|
|
}
|
|
|
|
project="$(urlencode $PROJECT)"
|
|
blob="$(urlencode $BLOB)"
|
|
path="api/v4/projects/$project/repository/files/$blob/raw"
|
|
|
|
curl -sS -H "Authorization: Bearer $GITLAB_PAT" "https://gitlab-app.eng.qops.net/$path"
|