Skip to content

Bump ruby/setup-ruby from 1.237.0 to 1.244.0 in the actions-minor group #467

Bump ruby/setup-ruby from 1.237.0 to 1.244.0 in the actions-minor group

Bump ruby/setup-ruby from 1.237.0 to 1.244.0 in the actions-minor group #467

Workflow file for this run

# SPDX-License-Identifier: MIT
name: Test
on:
push:
branches:
- main
paths-ignore:
- '**.md'
- .gitignore
pull_request:
branches:
- main
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup Node.js
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version-file: .node-version
cache: npm
- name: Install packages
run: |
npm ci
- name: Compile Node.js module
run: |
npm run all
- name: Verify no untracked files and unstaged changes
if: github.event_name != 'pull_request'
run: |
if [[ -n "$(git status --porcelain)" ]]; then
echo ----------------------------------------
echo git status
echo ----------------------------------------
git status
echo ----------------------------------------
echo git diff
echo ----------------------------------------
git diff
echo ----------------------------------------
echo "::error::Untracked files or unstaged changes detected!"
exit 1
fi
intergration-test-1:
strategy:
matrix:
os: ['ubuntu-24.04', 'macos-14', 'windows-2022']
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run action
id: extract-release-notes
uses: ./
- name: Assert that release_notes output is not empty
shell: bash
env:
RELEASE_NOTES: ${{ steps.extract-release-notes.outputs.release_notes }}
run: |
test -n "${RELEASE_NOTES}"
intergration-test-2:
strategy:
matrix:
os: ['ubuntu-24.04', 'macos-14', 'windows-2022']
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run action
uses: ./
with:
release_notes_file: RELEASE_NOTES.md
- name: Assert that RELEASE_NOTES.md exists
shell: bash
run: |
test -f RELEASE_NOTES.md
intergration-test-3:
strategy:
matrix:
os: ['windows-2022']
test:
- changelog_file: CHANGELOG_1.md
expected_release_notes_file: RELEASE_NOTES_1.md
prerelease: false
- changelog_file: CHANGELOG_2.md
expected_release_notes_file: RELEASE_NOTES_2.md
prerelease: false
- changelog_file: CHANGELOG_3.md
expected_release_notes_file: RELEASE_NOTES_3.md
prerelease: false
- changelog_file: CHANGELOG_4.md
expected_release_notes_file: RELEASE_NOTES_4.md
prerelease: true
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run action
id: extract-release-notes
uses: ./
with:
changelog_file: test/testdata/${{ matrix.test.changelog_file }}
prerelease: ${{ matrix.test.prerelease }}
- name: Assert that release_notes output contains expected content
shell: bash
env:
RELEASE_NOTES: ${{ steps.extract-release-notes.outputs.release_notes }}
run: |
diff <(echo -n "${RELEASE_NOTES}") test/testdata/expected/${{ matrix.test.expected_release_notes_file }}
intergration-test-4:
strategy:
matrix:
os: ['windows-2022']
test:
- changelog_file: CHANGELOG_1.md
expected_release_notes_file: RELEASE_NOTES_1.md
prerelease: false
- changelog_file: CHANGELOG_2.md
expected_release_notes_file: RELEASE_NOTES_2.md
prerelease: false
- changelog_file: CHANGELOG_3.md
expected_release_notes_file: RELEASE_NOTES_3.md
prerelease: false
- changelog_file: CHANGELOG_4.md
expected_release_notes_file: RELEASE_NOTES_4.md
prerelease: true
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run action
id: extract-release-notes
uses: ./
with:
changelog_file: test/testdata/${{ matrix.test.changelog_file }}
release_notes_file: RELEASE_NOTES.md
prerelease: ${{ matrix.test.prerelease }}
- name: Assert that RELEASE_NOTES.md contains expected content
shell: bash
run: |
diff RELEASE_NOTES.md test/testdata/expected/${{ matrix.test.expected_release_notes_file }}