--- # Rules config file
options:
executeAllRules: true
enableRules: true
enableGroups: false
allRuleResultInOne: false
rules:
# BRANCH
- name: branchName
options:
regexp: '^(fix|feature)/.*'
onError:
- callback: LoggerRunnable
args:
message: 'Branch {{data.branch}} does not begin with fix or feature.'
onSuccess:
- callback: CreatePullRequestRunnable
args:
title: 'WIP: {{data.branch}}'
description: 'Work in Progress Pull Request'
draft: true
# PULL REQUESTS
- name: pullRequestTitle
options:
regexp: '^(WIP|FIX)\s:.*'
users:
ignore:
- bastienterrier
onError:
- callback: CommentPullRequestRunnable
args:
comment: 'ping @bastienterrier'
# COMMITS
- name: commitMessage
options:
regexp: '^(build|ci|docs|feat|fix|perf|refactor|style|test|release|chore)(\([a-z-]*\))?:\s(.*?)(\(#[1-9][0-9]*(?:, #[1-9][0-9]*)*\))?$'
branches:
ignore:
- gh-pages
- master
onBoth:
- callback: UpdateCommitStatusRunnable
args:
failTargetUrl: 'https://gist.github.com/stephenparish/9941e89d80e2bc58a153#examples'
successTargetUrl: 'https://gist.github.com/stephenparish/9941e89d80e2bc58a153#examples'
successDescriptionMessage: 'Commit message matches the Good Practices!'
failDescriptionMessage: 'Caution, your commit message do not matches the Good Practices!'
#ISSUES
- name: issueTitle
options:
regexp: '.*'
users:
ignore:
- bastienterrier
onSuccess:
- callback: SendEmailRunnable
args:
to: bastien.terrier@gmail.com
subject: 'New issue: "{{data.issue.title}}" (#{{data.issue.number}})'
message: '{{data.issue.title}} has been created!
{{data.issue.description}}'