Skip to content

Commit

Permalink
Merge pull request #4 from axone-protocol/ci/install-some-linters
Browse files Browse the repository at this point in the history
ci(workflow): implement canonical linting jobs in CI pipeline
  • Loading branch information
ccamel authored May 22, 2024
2 parents 65a426e + 4900413 commit 6f68d1c
Show file tree
Hide file tree
Showing 3 changed files with 99 additions and 0 deletions.
86 changes: 86 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: Lint

on:
workflow_call:

push:
branches: [main]

pull_request:
branches: [main]

concurrency:
group: lint-${{ github.ref }}
cancel-in-progress: true

jobs:
lint-commits:
runs-on: ubuntu-22.04
if: github.actor != 'dependabot[bot]'
steps:
- name: Check out repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Check commits
uses: wagoid/commitlint-github-action@v6

lint-markdown:
runs-on: ubuntu-22.04
steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Lint markdown files
uses: avto-dev/markdown-lint@v1.5.0
with:
args: "**/*.md"
ignore: "CHANGELOG.md docs/**/*.md"

lint-yaml:
runs-on: ubuntu-22.04
steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Lint yaml files
uses: ibiqlik/action-yamllint@v3.1.1

lint-branch-name:
runs-on: ubuntu-22.04
if: github.actor != 'dependabot[bot]' && github.event_name == 'pull_request' && (github.event.action == 'opened' || github.event.action == 'reopened')
steps:
- name: Check branch name conventions
uses: AlbertHernandez/branch-name-action@v1.0.2
with:
branch_pattern: "feat|fix|build|ci|docs|style|refactor|perf|test|chore"
comment_for_invalid_branch_name: |
🙋‍ Oops! This branch name does not follow the naming convention.
<hr>
Please, see the following branch naming convention:
Branch naming convention | Purpose
------------------------ | -------
`feat/**` | A new feature
`fix/**` | A bug fix
`build/**` | Changes that affect the build system (npm, mavem, poetry)
`ci/**` | Changes to the CI configuration
`docs/**` | Documentation only changes
`style/**` | Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
`refactor/**` | Code changes that neither fixe a bug nor adds a feature
`perf/**` | Code changes that improve performance
`test/**` | When adding tests or correcting existing tests
`chore/**` | Other changes that don't modify source
fail_if_invalid_branch_name: "true"
ignore_branch_pattern: "main"
- name: Close non-compliant branch
if: ${{ failure() }}
uses: codelytv/no-pull-requests@v1
with:
GITHUB_TOKEN: ${{ secrets.AXONE_TOKEN }}
message: 🙅 Closing the PR because it does not respect naming conventions. Edit the branch name and submit a new PR.
env:
GITHUB_TOKEN: ${{ secrets.AXONE_TOKEN }}
4 changes: 4 additions & 0 deletions .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
line-length: false
no-hard-tabs: false
no-inline-html: false
no-duplicate-header: false
9 changes: 9 additions & 0 deletions .yamllint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
extends: default
rules:
document-start: disable
line-length:
max: 160
level: warning
brackets:
min-spaces-inside: 0
max-spaces-inside: 1

0 comments on commit 6f68d1c

Please sign in to comment.