Remove old size labels

This commit is contained in:
Rafa Gómez 2020-03-04 00:00:24 +01:00
parent 44bd7cefa2
commit 0600010fbe
4 changed files with 40 additions and 5 deletions

View file

@ -9,6 +9,8 @@ fi
export PR_SIZE_LABELER_HOME
bash --version
source "$PR_SIZE_LABELER_HOME/src/main.sh"
main "$@"

View file

@ -16,11 +16,26 @@ github::add_label_to_pr() {
local -r pr_number=$1
local -r label_to_add=$2
local -r body=$(curl -sSL -H "Authorization: token $GITHUB_TOKEN" -H "$GITHUB_API_HEADER" "$GITHUB_API_URI/repos/$GITHUB_REPOSITORY/pulls/$1")
local labels=$(echo "$body" | jq .labels | jq -r ".[] | .name" | grep -v "size/")
labels+=("$label_to_add")
local -r comma_separated_labels=$(github::format_labels "${labels[@]/#/}")
log::message "Final labels: $comma_separated_labels"
curl -sSL \
-H "Authorization: token $GITHUB_TOKEN" \
-H "$GITHUB_API_HEADER" \
-X POST \
-X PATCH \
-H "Content-Type: application/json" \
-d "{\"labels\":[\"$label_to_add\"]}" \
"$GITHUB_API_URI/repos/$GITHUB_REPOSITORY/issues/$pr_number/labels"
-d "{\"labels\":[$comma_separated_labels]}" \
"$GITHUB_API_URI/repos/$GITHUB_REPOSITORY/issues/$pr_number"
}
github::format_labels() {
local -r quoted_labels=$(echo "$@" | coll::map str::quote)
readarray -t splitted_quoted_labels <<<"$quoted_labels"
coll::join_by "," "${splitted_quoted_labels[@]/#/}"
}

View file

@ -6,7 +6,7 @@ labeler::label() {
local -r pr_number=$(github_actions::get_pr_number)
local -r total_modifications=$(github::calculate_total_modifications "$pr_number")
log::message "total modifications: $total_modifications"
log::message "Total modifications: $total_modifications"
local -r label_to_add=$(labeler::label_for "$total_modifications" "$@")

View file

@ -1,9 +1,27 @@
#!/usr/bin/env bash
echoerr() {
echo "$@" 1>&2
echo "$@" 1>&2
}
log::message() {
echo "$@"
}
coll::join_by() {
local IFS="$1"
shift
echo "$*"
}
coll::map() {
local -r fn="$1"
for x in $(cat); do
"$fn" "$x"
done
}
str::quote() {
echo "\"$1\""
}