1.2.1 • Published 10 months ago

gitlab-mr-require-checkboxes v1.2.1

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

gitlab-mr-require-checkboxes

npm version Deploy

CLI Require checkboxes in GitLab MR description to be checked

A simple CLI tool to check that all checkboxes in a merge request description are checked is designed as follows:

  • Fetch Merge Request Data: The tool connects to the Git repository hosting service (e.g., GitHub, GitLab) and retrieves the merge request description.
  • Parse Checkboxes: It parses the description to identify all checkboxes.
  • Check Checkbox Status: It verifies that all checkboxes are marked as checked.
  • Exit with status code 1 if there are non ticked checkboxes.

Related links:

The cli uses environment variables to pass settings:

  • GITLAB_API_TOKEN - this one you need to create, it's used to access gitlab API
  • CI_PROJECT_ID, CI_MERGE_REQUEST_IID, CI_SERVER_URL are passed to pipeline by Gitlab

How to use in ci config:

# Define GITLAB_API_TOKEN on the job/project level
check-mr-description:
  image: 'some-image-with-npx'
  stage: install
  env
  only:
    - merge_requests
  script:
    - npx -y gitlab-mr-require-checkboxes@latest check

Extra configuration

You can mark part of checkboxes as required (by default it's applicable to the whole description) with wrapping them into wrappers:

<!-- required-checkboxes-start -->

- [x] required 1
- [ ] required 2
<!-- required-checkboxes-end -->
- [x] optional 1
- [ ] optional 2

Wrapper can be used multiple times.

Note

It will add MR note with a fail message as well. If you want to customize message - set NOTE_ERROR_MESSAGE environment variable. It you don't need it - put it to "" (empty string)

1.2.1

10 months ago

1.2.0

11 months ago

1.1.0

11 months ago

1.0.1

11 months ago

1.0.0

11 months ago

0.0.1

11 months ago