ci: keep the jq expressions parsable on jq 1.6

This commit is contained in:
Lunny Xiao
2026-09-08 12:00:37 -07:00
parent 3fb4de8560
commit 83cbd0138f
2 changed files with 8 additions and 5 deletions
+3 -1
View File
@@ -26,7 +26,9 @@ if [ -z "$PULL_JSON" ] || [ ! -f "$PULL_JSON" ]; then
fi fi
body="$(jq -r '.body // ""' "$PULL_JSON")" body="$(jq -r '.body // ""' "$PULL_JSON")"
labelled="$(jq -r --arg label "$LABEL" '[.labels[]?.name] | index($label) != null' "$PULL_JSON")" # `label` is a keyword in jq 1.6, which is what the runner image has, so the
# argument cannot be named after it; `(.labels // [])` keeps it parsable there
labelled="$(jq -r --arg want "$LABEL" '[(.labels // [])[].name] | index($want) != null' "$PULL_JSON")"
# every gitea#<id> and every pull request url, deduplicated # every gitea#<id> and every pull request url, deduplicated
refs="$(printf '%s\n' "$body" \ refs="$(printf '%s\n' "$body" \
+5 -4
View File
@@ -27,16 +27,17 @@ gitea_api() {
curl "${args[@]}" "$url" curl "${args[@]}" "$url"
} }
label_id="$(gitea_api GET "$API/labels?limit=100" | jq -r --arg label "$LABEL" \ # see the note in check-upstream-deps.sh about the argument name
'.[] | select(.name == $label) | .id')" label_id="$(gitea_api GET "$API/labels?limit=100" | jq -r --arg want "$LABEL" \
'.[] | select(.name == $want) | .id')"
if [ -z "$label_id" ]; then if [ -z "$label_id" ]; then
echo "the repository has no \"$LABEL\" label, nothing to do" echo "the repository has no \"$LABEL\" label, nothing to do"
exit 0 exit 0
fi fi
pulls="$(gitea_api GET "$API/pulls?state=open&limit=50")" pulls="$(gitea_api GET "$API/pulls?state=open&limit=50")"
indexes="$(printf '%s' "$pulls" | jq -r --arg label "$LABEL" \ indexes="$(printf '%s' "$pulls" | jq -r --arg want "$LABEL" \
'.[] | select([.labels[]?.name] | index($label) != null) | .number')" '.[] | select([(.labels // [])[].name] | index($want) != null) | .number')"
if [ -z "$indexes" ]; then if [ -z "$indexes" ]; then
echo "no open pull request carries the \"$LABEL\" label" echo "no open pull request carries the \"$LABEL\" label"