diff --git a/.github/workflows/commits.yml b/.github/workflows/commits.yml new file mode 100644 index 000000000..2f27fd7db --- /dev/null +++ b/.github/workflows/commits.yml @@ -0,0 +1,28 @@ +# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json +name: Conventional commit check + +on: [push] + +jobs: + commit_messages: + runs-on: ubuntu-latest + steps: + - name: Install cocogitto tool + run: | + sudo apt-get update + sudo apt-get install cargo + sudo cargo install cocogitto + + - name: Checkout code + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Conventional commit check + run: | + # Fetch all history to ensure we have the full context + git fetch --prune --unshallow + # Assuming 'main' is the default base branch + BASE_BRANCH=${{ github.base_ref || 'main' }} + CURRENT_BRANCH=$(git branch --show-current) + cog check ${BASE_BRANCH}..${CURRENT_BRANCH}