diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 0000000..5a9a002 --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1,44 @@ +# This workflow will add a changelog to the repository when a new commit is pushed to the main branch. +# E.g., manually edit the commit message to align with conventional commit messages, such as: +# feat(database): add new indexing capabilities +# This update introduces advanced indexing options for handling complex queries more efficiently. + +name: Changelog Update + +on: + pull_request: + branches: + - main + types: [opened, synchronize, reopened] + +permissions: write-all + +jobs: + update_changelog: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Set up Node.js + uses: actions/setup-node@v2 + with: + node-version: "18" + + - name: Install conventional-changelog-cli + run: npm install -g conventional-changelog-cli + + - name: Generate changelog diff + run: | + git fetch origin main:main + conventional-changelog -p angular -i CHANGELOG.md -s -r 0 > changelog_diff.md + echo "::set-output name=changelog::$(cat changelog_diff.md)" + - name: Commit and push changelog update + run: | + git config user.name 'github-actions' + git config user.email 'github-actions@github.com' + git add CHANGELOG.md + git commit -m "Update CHANGELOG.md" + git push origin HEAD:refs/heads/${{ github.head_ref }}