grzi / changelog-and-tag-action

A cool github action to generate an awesome changelog from commit messages

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🚀 Generate CHANGELOG and TAG 📰 🔖

Twitter: grzi

This Github Action (simply written in bash to be as light as possible) :

  • Generates a changelog, based on commit messages and a commit message convention.
  • Push it to the current branch.
  • Tag a new release with the content of this release.

Usage

⚠️ Pre-requisites

Your project has to respect two thing to use this action correctly :

  • Commit message convention : Currently, the only supported commit convention is the angular one. See Angular contributing for more informations.
  • Semantic versionning : At least your last tag has to respect the Semantic versionning convention, so the tagging system can increment the corresponding number.

⤵️ Inputs

There is two mandatory env variables to set :

  • GITHUB_TOKEN : Oauth2 token that will be used to push changes to the repository.
  • GITHUB_USER : The user associated with the oauth2 token.

And some optionnals so as to customise the action :

  • LOG_LEVEL : The level of log you want to display in your task. (1, 2 [default] or 3)

⤴️ Outputs

  • NEW_TAG : This will contain the new created tag (ex : 1.0.0)

👀 Example

Example of workflow.yml :

name: Java CI

on: 
  push:
    branches:
    - master
    paths-ignore:
    - 'CHANGELOG.md'

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: Generate changelog
      uses: zthulj/changelog-and-tag-action@master
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        GITHUB_USER: user
        LOG_LEVEL: 1

👤 Author

Jérémy Thulliez

🤝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Thanks to all our contributors !

📓 License

The scripts and documentation in this project are released under the MIT License

About

A cool github action to generate an awesome changelog from commit messages

License:MIT License


Languages

Language:Shell 97.1%Language:Dockerfile 2.9%