CI: Add Ecosystem tests #2592
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
name: Verify Changelog | |
# If you modify more test jobs, ensure that you add them as required to the job "confirmChangelogChecksPassed" | |
# which is located at the end of this file (more info in the job) | |
on: | |
push: | |
branches: ["main", "release-*"] | |
pull_request: | |
types: [opened, reopened, synchronize, edited] | |
workflow_dispatch: | |
# cancel previous runs | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
# Job required by "confirmChangelogChecksPassed" | |
verify-changelog-updated: | |
name: Verify that Changelog is Updated | |
runs-on: ubuntu-latest | |
env: | |
GITHUB_TOKEN: ${{ github.token }} | |
steps: | |
- name: Get Changed Files | |
id: changed | |
uses: foodee/pr-includes-file-change@master | |
with: | |
paths: ^CHANGELOG.md | |
- name: Set error | |
if: steps.changed.outputs.matched != 'true' && !contains(github.event.pull_request.body, '[x] Does not require a CHANGELOG entry') | |
run: echo "::error::CHANGELOG.md has not been modified. Either modify the file or check the checkbox in the body" && exit 1 | |
# Job required by "confirmChangelogChecksPassed" | |
verify-changelog-valid: | |
name: Verify that Changelog is valid | |
runs-on: ubuntu-latest | |
env: | |
GITHUB_TOKEN: ${{ github.token }} | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Verify | |
run: .github/changelog-processor.py CHANGELOG.md --validate-changelog | |
# This will only run if all the tests in its "needs" array passed. | |
# Add this as your required job, becuase if the matrix changes size (new things get added) | |
# it will still require all the steps to succeed. | |
# If you add more jobs, remember to add them to the "needs" array. | |
confirmChangelogChecksPassed: | |
runs-on: ubuntu-latest | |
name: All changelog checks passed | |
# If any new job gets added, be sure to add it to this list | |
needs: | |
- verify-changelog-updated | |
- verify-changelog-valid | |
steps: | |
- run: echo '### Good job! All the changelog checks passed 🚀' >> $GITHUB_STEP_SUMMARY |