A commit linting commitizen adapter & branch naming convention tool tailored for ARITS Limited with Jira Issue & Project Tracking Software; to track commits to Jira issues and transition them to the next stage of development workflow automatically.
You can install this package via npm or yarn. To install, run the following command:
npm install --save-dev @aritslimited/commitlint commitizen boxen chalk dotenv inquirer node-fetch tslib
or
yarn add -D @aritslimited/commitlint commitizen boxen chalk dotenv inquirer node-fetch tslib
or
pnpm add -D @aritslimited/commitlint commitizen boxen chalk dotenv inquirer node-fetch tslib
or
bun add -D @aritslimited/commitlint commitizen boxen chalk dotenv inquirer node-fetch tslib
Run the following command from project root to start using this commitizen adapter along with commitizen:
echo "{\"path\": \"@aritslimited/commitlint/dist/commitlint.config.js\"}" > ./.czrc
Now, you can run the following command to commit your changes:
npx cz
or create a script in your package.json
file and use it with npm run commit
or yarn commit
or pnpm commit
or bun commit
:
{
"scripts": {
"commit": "npx cz"
}
}
This package supports the following environment files out of the box:
- .env
- .env.local
- .env.jira.local
This package requires the following environment variables to be set in any of the environment files mentioned above that are synced with your version control system (preferably .env):
JIRA_BASE_URL
=https://aritsltd.atlassian.net/rest/api/2JIRA_PROJECT
=your Jira project key # e.g. TAFJIRA_ISSUE_FILTERS
=your Jira issue filters # e.g. "In Progress"JIRA_ISSUE_TRANSITION_FILTERS
=your Jira issue transition filters # e.g. "Send to QA"
and the following environment variables to be set in any of the environment files mentioned above that are not synced with your version control system (preferably .env.local):
JIRA_API_USER
=your Jira API user emailJIRA_API_TOKEN
=your Jira API token # How to generate a Jira API token
This package also provides a branch naming convention tool. To use it, include the following environment variables in any of the environment files mentioned above that are synced with your version control system (preferably .env):
VALID_BRANCH_NAMES
=your string of valid branch names separated by space # e.g. "main staging dev ui"
NB: Branch naming convention tool is optional feature that is disabled by default. To enable it, the
VALID_BRANCH_NAMES
environment variable(s) must be set.
BRANCH_NAME_VALIDATING_REGEXP
=your branch name validating regular expression # e.g. "^(main|staging|dev|ui)/[A-Z]{2,3}-[0-9]{1,5}/[a-z0-9-]+$"
BRANCH_NAME_VALIDATING_REGEXP
is optional. Default validating regex expression is:
new RegExp(`^(${branchNamesArr.join("|")})[a-z0-9-]*$`)
You can validate your regular expression here.
This package is open source and available under the MIT License.
Name | Contact |
---|---|
Emran Hossain |