mirror of
https://github.com/tiddly-gittly/TidGi-Desktop.git
synced 2025-12-06 02:30:47 -08:00
feat: add reviewpad.yml file
This commit is contained in:
parent
3d2fbeaafe
commit
f2a93777f3
1 changed files with 127 additions and 0 deletions
127
reviewpad.yml
Normal file
127
reviewpad.yml
Normal file
|
|
@ -0,0 +1,127 @@
|
||||||
|
# This file is used to configure Reviewpad.
|
||||||
|
# The configuration is a proposal to help you get started.
|
||||||
|
# You can use it as a starting point and customize it to your needs.
|
||||||
|
# For more details see https://docs.reviewpad.com/guides/syntax.
|
||||||
|
|
||||||
|
# Define the list of labels to be used by Reviewpad.
|
||||||
|
# For more details see https://docs.reviewpad.com/guides/syntax#label.
|
||||||
|
labels:
|
||||||
|
small:
|
||||||
|
description: Pull request is small
|
||||||
|
color: "#76dbbe"
|
||||||
|
medium:
|
||||||
|
description: Pull request is medium
|
||||||
|
color: "#2986cc"
|
||||||
|
large:
|
||||||
|
description: Pull request is large
|
||||||
|
color: "#c90076"
|
||||||
|
|
||||||
|
# Define the list of workflows to be run by Reviewpad.
|
||||||
|
# A workflow is a list of actions that will be executed based on the defined rules.
|
||||||
|
# For more details see https://docs.reviewpad.com/guides/syntax#workflow.
|
||||||
|
workflows:
|
||||||
|
# This workflow calls Reviewpad AI agent to summarize the pull request.
|
||||||
|
- name: summarize
|
||||||
|
description: Summarize the pull request
|
||||||
|
run:
|
||||||
|
# Summarize the pull request on pull request when it is opened.
|
||||||
|
- if: $eventType() == "opened" && $state() == "open"
|
||||||
|
then: $summarize()
|
||||||
|
|
||||||
|
# This workflow assigns the most relevant reviewer to pull requests.
|
||||||
|
# This helps guarantee that most pull requests are reviewed by at least one person.
|
||||||
|
- name: reviewer-assignment
|
||||||
|
description: Assign the most relevant reviewer to pull requests
|
||||||
|
run:
|
||||||
|
# Automatically assign reviewer when the pull request is ready for review;
|
||||||
|
- if: $isDraft() == false
|
||||||
|
then: $assignCodeAuthorReviewers()
|
||||||
|
|
||||||
|
# This workflow praises contributors on their pull request contributions.
|
||||||
|
# This helps contributors feel appreciated.
|
||||||
|
- name: praise-contributors-on-milestones
|
||||||
|
description: Praise contributors based on their contributions
|
||||||
|
run:
|
||||||
|
# Praise contributors on their first pull request.
|
||||||
|
- if: $pullRequestCountBy($author()) == 1
|
||||||
|
then: $commentOnce($sprintf("Thank you @%s for this first contribution!", [$author()]))
|
||||||
|
|
||||||
|
# This workflow validates that pull requests follow the conventional commits specification.
|
||||||
|
# This helps developers automatically generate changelogs.
|
||||||
|
# For more details, see https://www.conventionalcommits.org/en/v1.0.0/.
|
||||||
|
- name: check-conventional-commits
|
||||||
|
description: Validate that pull requests follow the conventional commits
|
||||||
|
run:
|
||||||
|
- if: $isDraft() == false
|
||||||
|
then:
|
||||||
|
# Check commits messages against the conventional commits specification
|
||||||
|
- $commitLint()
|
||||||
|
# Check pull request title against the conventional commits specification.
|
||||||
|
- $titleLint()
|
||||||
|
|
||||||
|
# This workflow validates best practices for pull request management.
|
||||||
|
# This helps developers follow best practices.
|
||||||
|
- name: best-practices
|
||||||
|
description: Validate best practices for pull request management
|
||||||
|
run:
|
||||||
|
# Warn pull requests that do not have an associated GitHub issue.
|
||||||
|
- if: $hasLinkedIssues() == false
|
||||||
|
then: $warn("Please link an issue to the pull request")
|
||||||
|
# Warn pull requests if their description is empty.
|
||||||
|
- if: $description() == ""
|
||||||
|
then: $warn("Please provide a description for the pull request")
|
||||||
|
# Warn pull request do not have a clean linear history.
|
||||||
|
- if: $hasLinearHistory() == false
|
||||||
|
then: $warn("Please rebase your pull request on the latest changes")
|
||||||
|
|
||||||
|
# This workflow labels pull requests based on the total number of lines changed.
|
||||||
|
# This helps pick pull requests based on their size and to incentivize small pull requests.
|
||||||
|
- name: size-labeling
|
||||||
|
description: Label pull request based on the number of lines changed
|
||||||
|
run:
|
||||||
|
- if: $size() < 100
|
||||||
|
then: $addLabel("small")
|
||||||
|
else: $removeLabel("small")
|
||||||
|
- if: $size() >= 100 && $size() < 300
|
||||||
|
then: $addLabel("medium")
|
||||||
|
else: $removeLabel("medium")
|
||||||
|
- if: $size() >= 300
|
||||||
|
then: $addLabel("large")
|
||||||
|
else: $removeLabel("large")
|
||||||
|
|
||||||
|
# This workflow signals pull requests waiting for reviews.
|
||||||
|
# This helps guarantee that pull requests are reviewed and approved by at least one person.
|
||||||
|
- name: check-approvals
|
||||||
|
description: Check that pull requests have the required number of approvals
|
||||||
|
run:
|
||||||
|
# Label pull requests with `waiting-for-review` if there are no approvals;
|
||||||
|
- if: $isDraft() == false && $approvalsCount() < 1
|
||||||
|
then: $addLabel("waiting-for-review")
|
||||||
|
|
||||||
|
# This workflow labels pull requests based on the pull request change type.
|
||||||
|
# This helps pick pull requests based on their change type.
|
||||||
|
- name: change-type-labelling
|
||||||
|
description: Label pull requests based on the type of changes
|
||||||
|
run:
|
||||||
|
# Label pull requests with `docs` if they only modify Markdown or txt files.
|
||||||
|
- if: $hasFileExtensions([".md", ".txt"])
|
||||||
|
then: $addLabel("docs")
|
||||||
|
else: $removeLabel("docs")
|
||||||
|
# Label pull requests with `infra` if they modify Terraform files.
|
||||||
|
- if: $hasFileExtensions([".tf"])
|
||||||
|
then: $addLabel("infra")
|
||||||
|
else: $removeLabel("infra")
|
||||||
|
# Label pull requests with `dependencies` if they only modify `package.json` and `package.lock` files.
|
||||||
|
- if: $hasFileExtensions(["package.json", "package-lock.json"])
|
||||||
|
then: $addLabel("dependencies")
|
||||||
|
else: $removeLabel("dependencies")
|
||||||
|
|
||||||
|
# This workflow validates that pull requests do not contain changes to the license.
|
||||||
|
# This helps avoid unwanted license modifications.
|
||||||
|
- name: license-validation
|
||||||
|
description: Validate that licenses are not modified
|
||||||
|
run:
|
||||||
|
# Fail Reviewpad check on pull requests that modify any LICENSE;
|
||||||
|
- if: $hasFilePattern("**/LICENSE*")
|
||||||
|
then: $fail("License files cannot be modified")
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue