Update Changelog #944
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will build a package using Gradle and then publish it to GitHub packages when a release is created | |
# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#Publishing-using-gradle | |
name: Update Changelog | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 10 * * *' | |
# Workflow run on push is disabled to avoid conflicts when merging PR | |
# push: | |
# branches: [ master ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
if: github.repository == 'JetBrains/ideavim' | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 300 | |
# See end of file updateChangeslog.yml for explanation of this secret | |
ssh-key: ${{ secrets.PUSH_TO_PROTECTED_BRANCH_SECRET }} | |
- name: Get tags | |
run: git fetch --tags origin | |
- name: Set up JDK 11 | |
uses: actions/setup-java@v2 | |
with: | |
java-version: '11' | |
distribution: 'adopt' | |
server-id: github # Value of the distributionManagement/repository/id field of the pom.xml | |
settings-path: ${{ github.workspace }} # location for the settings.xml file | |
# The last successful job was marked with a tag | |
- name: Get commit with last workflow | |
run: | | |
echo "LAST_COMMIT=$(git rev-list -n 1 tags/workflow-changelog)" >> $GITHUB_ENV | |
- name: Update changelog | |
run: ./gradlew updateChangelog | |
env: | |
SUCCESS_COMMIT: ${{ env.LAST_COMMIT }} | |
- name: Commit changes | |
uses: stefanzweifel/git-auto-commit-action@v4 | |
with: | |
commit_message: Update changelog. Action id - ${{ github.run_id }} | |
commit_user_name: IdeaVim Bot | |
commit_user_email: [email protected] | |
commit_author: IdeaVim Bot <[email protected]> | |
file_pattern: CHANGES.md | |
- name: Update tags | |
run: | | |
git tag --delete workflow-changelog || true | |
git push origin :refs/tags/workflow-changelog || true | |
git tag workflow-changelog | |
git push origin workflow-changelog | |
# Regarding secrets.PUSH_TO_PROTECTED_BRANCH_SECRET - we use branch protection rules to automate merges of the | |
# dependabot updates. See mergeDependatobPR.yml file. | |
# However, it turned out that GitHub accepts pushes from the actions as a PR and requires checks, that are always | |
# false for pushing from actions. | |
# This secret is created to implement the workaround described in https://stackoverflow.com/a/76135647/3124227 |