Skip to content

Commit

Permalink
🤖 ci(change): set according to out commit script
Browse files Browse the repository at this point in the history
  • Loading branch information
eshanized committed Jun 17, 2024
1 parent dc3f938 commit 35349e5
Showing 1 changed file with 22 additions and 36 deletions.
58 changes: 22 additions & 36 deletions .github/workflows/commit.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Conventional Commit Checker
name: Check Conventional Commit

on:
push:
Expand All @@ -9,44 +9,30 @@ on:
- master

jobs:
conventional-commit-checker:
check-commit-message:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Check conventional commit message
run: |
COMMIT_MSG=$(git log -1 --format=%s)
EMOJI=$(echo "$COMMIT_MSG" | cut -d' ' -f1)
TYPE=$(echo "$COMMIT_MSG" | cut -d'(' -f1 | cut -d' ' -f2-)
SCOPE=$(echo "$COMMIT_MSG" | cut -d'(' -f2 | cut -d')' -f1)
DESC=$(echo "$COMMIT_MSG" | cut -d']:' -f2-)

# Check if the emoji is valid
if [[ " ${TYPES[*]} " =~ " ${EMOJI} " ]]; then
echo "Valid emoji: ${EMOJI}"
else
echo "Error: Invalid emoji. Please use one of the following: 🎉, 🐞, 📚, 💅, 🔨, ⚡️, 🧪, 🛠️, 🤖, 🧹, ⏪️"
exit 1
fi
steps:
- name: Checkout code
uses: actions/checkout@v2

# Check if the type is valid
if [[ " ${TYPES[*]} " =~ " ${TYPE} " ]]; then
echo "Valid type: ${TYPE}"
else
echo "Error: Invalid type. Please use one of the following: feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert"
exit 1
fi
- name: Check Conventional Commit
run: |
# Define the conventional commit types with emojis
TYPES=("🎉 feat" "🐞 fix" "📚 docs" "💅 style" "🔨 refactor" "⚡️ perf" "🧪 test" "🛠️ build" "🤖 ci" "🧹 chore" "⏪️ revert")
# Check if the scope is provided
if [ -z "$SCOPE" ]; then
echo "Error: Commit scope is required"
exit 1
# Extract the commit type and emoji from the commit message
COMMIT_MSG=$(git log --format=%B -n 1)
for type in "${TYPES[@]}"; do
type_emoji=${type}
type=${type_emoji#* }
emoji=${type_emoji% *}
if [[ $COMMIT_MSG == $emoji* ]]; then
echo "Commit message is a conventional commit"
exit 0
fi
done
# Check if the description is provided
if [ -z "$DESC" ]; then
echo "Error: Commit description is required"
exit 1
fi
# If we reach here, the commit message is not a conventional commit
echo "Commit message is not a conventional commit"
exit 1

0 comments on commit 35349e5

Please sign in to comment.