Skip to content

Commit

Permalink
Improving action to make sure only one label is added
Browse files Browse the repository at this point in the history
  • Loading branch information
skduncan committed Oct 17, 2024
1 parent f4618cb commit 73ea0c3
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions .github/workflows/github-actions-check-labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Check Labels
run-name: ${{ github.actor }} is checking labels 🚀
on:
pull_request:
types: [ labeled ]
types: [ labeled, unlabeled ]
jobs:
Checking-Labels:
runs-on: ubuntu-latest
Expand All @@ -18,13 +18,17 @@ jobs:
LABELS=$(jq -r '.pull_request.labels[].name' "$GITHUB_EVENT_PATH")
SEMVER_PATTERN="^(major|minor|patch)$"
SEMVER_LABEL=$(echo "$LABELS" | grep -iE "$SEMVER_PATTERN" || true)
SEMVER_LABELS=$(echo "$LABELS" | grep -iE "$SEMVER_PATTERN" || true)
SEMVER_LABEL_COUNT=$(echo "$SEMVER_LABELS" | wc -l)
if [ -z "$SEMVER_LABEL" ]; then
echo "No valid Semver label found. Please add one of: major, minor, patch (case-insensitive)"
if [ "$SEMVER_LABEL_COUNT" -eq 0 ]; then
echo "Error: No Semver label found. Please add exactly one of: major, minor, patch (case-insensitive)"
exit 1
elif [ "$SEMVER_LABEL_COUNT" -gt 1 ]; then
echo "Error: Multiple Semver labels found. Please ensure only one is present:"
echo "$SEMVER_LABELS"
exit 1
else
echo "Valid Semver label found: $SEMVER_LABEL"
NORMALIZED_LABEL=$(echo "$SEMVER_LABEL" | tr '[:upper:]' '[:lower:]')
echo "Normalized label: $NORMALIZED_LABEL"
NORMALIZED_LABEL=$(echo "$SEMVER_LABELS" | tr '[:upper:]' '[:lower:]')
echo "Valid Semver label found: $NORMALIZED_LABEL"
fi

0 comments on commit 73ea0c3

Please sign in to comment.