Skip to content

[C4GT Community]: Implement Commit Message Linting and Automation for Identity-1097-API #91

@Sneha6003

Description

@Sneha6003

Ticket Contents

Description

Implement commit message linting and automation for all contributors in the API repositories using Commitlint, Husky, and Commitizen. This initiative aims to enforce a consistent and readable commit history, improve collaboration, and enable automated changelogs and CI/CD processes in the future. This setup will be aligned with the practices followed across all C4GT Community repositories.

Goals

Goals

  • Integrate Commitlint to enforce commit message standards.
  • Set up Husky to trigger commit-msg hooks.
  • Add Commitizen to provide structured commit prompts to contributors.
  • Configure GitHub Actions to verify commit format in Pull Requests.

Expected Outcome

  • Every commit in API repositories should follow the defined structure (e.g., Conventional Commits).
  • Husky blocks non-compliant commit messages locally.
  • Contributors can use the cz command to follow a guided commit format.
  • GitHub Actions fail PR checks if commit messages don’t follow the required format.
  • All changes remain compatible with existing CI/CD pipelines.

Acceptance Criteria

  • Contributors can only commit if they follow the stipulated format.
  • cz makes it easier to create standardized commit messages.
  • Descriptive linting errors are shown on improper commits.
  • GitHub Actions validate commit messages in PRs.
  • No conflicts or interference with existing CI/CD workflows.

Implementation Details

We will be using the following tools:

  • Commitlint: To enforce the use of conventional commit messages
  • Husky: To add Git hooks for enforcing commit message rules
  • Commitizen: To simplify the commit process using prompts

Mockups/Wireframes

No response

Product Name

AMRIT

Organisation Name

Piramal Swasthya Management and Research Institute

Domain

No response

Tech Skills Needed

Node.js

Organizational Mentor

@drtechie

Angel Mentor

No response

Complexity

Medium

Category

Configuration, CI/CD

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions