diff options
Diffstat (limited to '.github/workflows')
| -rw-r--r-- | .github/workflows/changelog.yml | 22 | ||||
| -rw-r--r-- | .github/workflows/cliff.toml | 77 | ||||
| -rw-r--r-- | .github/workflows/commitlint.yml | 7 | 
3 files changed, 105 insertions, 1 deletions
| diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 00000000..74b20dc7 --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1,22 @@ +name: changelog +on: release + +jobs: +  changelog-gen: +    name: Generate changelog +    runs-on: ubuntu-latest +    steps: +      - name: Checkout +        uses: actions/checkout@v2 +        with: +          fetch-depth: 0 + +      - uses: orhun/git-cliff-action@v1 +        with: +          config: cliff.toml +          args: -vv --latest --strip header -c .github/workflows/cliff.toml +        env: +          OUTPUT: CHANGELOG.md + +      - name: Print the changelog +        run: cat "${{ steps.git-cliff.outputs.changelog }}" diff --git a/.github/workflows/cliff.toml b/.github/workflows/cliff.toml new file mode 100644 index 00000000..a183df33 --- /dev/null +++ b/.github/workflows/cliff.toml @@ -0,0 +1,77 @@ +# configuration file for git-cliff (0.1.0) + +[changelog] +# changelog header +header = """ +# Changelog\n +All notable changes to this project will be documented in this file.\n +""" +# template for the changelog body +# https://tera.netlify.app/docs/#introduction +body = """ +{% if version %}\ +    ## [{{ version | trim_start_matches(pat="v") }}] +{% else %}\ +    ## [unreleased] +{% endif %}\ +{% for group, commits in commits | group_by(attribute="group") %} +    ### {{ group | upper_first }} +    {% for commit in commits +    | filter(attribute="scope") +    | sort(attribute="scope") %} +       - {% if commit.breaking %}[**breaking**] {% endif %}_({{commit.scope}})_ {{ commit.message }} +    {%- endfor %} +    {% for commit in commits %} +        {%- if commit.scope -%} +        {% else -%} +           - {% if commit.breaking %}[**breaking**] {% endif %}{{ commit.message }} +        {% endif -%} +    {% endfor -%} +    {% raw %}{% endraw %}\ +{% endfor %}\n +""" +# remove the leading and trailing whitespaces from the template +trim = true +# changelog footer +footer = """ +<!-- generated by git-cliff --> +""" + +[git] +# allow only conventional commits +# https://www.conventionalcommits.org +conventional_commits = true +# filter out the commits that are not conventional +filter_unconventional = true +# regex for parsing and grouping commits +commit_preprocessors = [ +    { pattern = '\((\w+\s)?#([0-9]+)\)', replace = "([#${2}](https://github.com/lunarvim/lunarvim/pull/${2}))"}, +] +commit_parsers = [ +    { message = "(.*bump|.*Bump)", group = "<!-- 7 --> Miscellaneous Tasks", skip = true}, +    { message = "^build", group = "<!-- 0 --> Packaging"}, +    { message = "(^feat|^Feat|^\\[Feat)", group = "<!-- 1 --> Features"}, +    { message = "(^bug|^Bug|^fix|^\\[Bug)", group = "<!-- 2 --> Bugfix"}, +    { message = "(^refactor|^ref)", group = "<!-- 3 --> Refactor"}, +    { message = "^doc", group = "<!-- 4 --> Documentation"}, +    { message = "^revert", group = "<!-- 5 --> Revert"}, +    { message = "^perf", group = "<!-- 6 --> Performance"}, +    { message = "^chore", group = "<!-- 7 --> Miscellaneous Tasks", skip = true}, +    { message = "^ci", group = "<!-- 7 --> Miscellaneous Tasks", skip = true}, +    { message = "^test", group = "<!-- 7 --> Miscellaneous Tasks", skip = true}, +] +# filter out the commits that are not matched by commit parsers +filter_commits = false +# glob pattern for matching git tags +tag_pattern = "v[0-9]*" +# regex for skipping tags +skip_tags = "v0.1.0-beta.1" +# regex for ignoring tags +ignore_tags = "" +# sort the tags topologically +topo_order = false +# sort the commits inside sections by oldest/newest order +sort_commits = "oldest" + +[features] +preserve_order = ["serde_json/preserve_order"] diff --git a/.github/workflows/commitlint.yml b/.github/workflows/commitlint.yml index 93c776e3..1bae3a10 100644 --- a/.github/workflows/commitlint.yml +++ b/.github/workflows/commitlint.yml @@ -1,5 +1,9 @@  name: "Commit Linter" -on: pull_request +on: +  pull_request: +    branches: +      - "rolling" +  jobs:    lint-commits:      runs-on: ubuntu-latest @@ -13,3 +17,4 @@ jobs:          with:            configFile: .github/workflows/commitlint.config.js            helpURL: https://github.com/LunarVim/LunarVim/blob/rolling/CONTRIBUTING.md#commit-messages +          firstParent: true | 
