Skip to content

Bump @actions/core from 1.10.1 to 1.11.1 #386

Bump @actions/core from 1.10.1 to 1.11.1

Bump @actions/core from 1.10.1 to 1.11.1 #386

Workflow file for this run

# SPDX-License-Identifier: MIT
name: Test
on:
push:
branches:
- main
paths-ignore:
- '**.md'
- .gitignore
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20.x
- uses: actions/cache@v4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- 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@v4
- 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@v4
- 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@v4
- 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@v4
- 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 }}