forked from wazuh/wazuh-docker
Merge pull request #2539 from wazuh/change/3534-prs-revamp-changelog-check-workflow
Add new WF for changelog check
This commit is contained in:
@@ -0,0 +1,62 @@
|
|||||||
|
name: 5.x Changelog check
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
changelog_check:
|
||||||
|
runs-on: codebuild-github-actions-codebuild-runner-devops-amd-${{ github.run_id }}-${{ github.run_attempt }}
|
||||||
|
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.draft && !contains(github.event.pull_request.labels.*.name, 'no-changelog') }}
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v6
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Validate CHANGELOG.md changes
|
||||||
|
env:
|
||||||
|
BASE_REF: ${{ github.base_ref }}
|
||||||
|
run: |
|
||||||
|
UPDATED="✅" FORMAT="—" INVALID=""
|
||||||
|
|
||||||
|
ADDED=$(git diff -U0 "origin/${BASE_REF}...HEAD" -- CHANGELOG.md | grep -E '^\+[^+]' | sed 's/^+//' || true)
|
||||||
|
if [ -z "$ADDED" ]; then
|
||||||
|
UPDATED="❌"
|
||||||
|
echo "::error::CHANGELOG.md was not updated with new entries. Add one or add the 'no-changelog' label to skip this check."
|
||||||
|
else
|
||||||
|
FORMAT="✅"
|
||||||
|
|
||||||
|
ENTRY_REGEX='^- .+ \(\[#[0-9]+\]\(https://github\.com/[^)]+/(issues|pull)/[0-9]+\)\)$'
|
||||||
|
INVALID=$(echo "$ADDED" | grep -E '^- ' | grep -vx -- '- None' | grep -vE "$ENTRY_REGEX" || true)
|
||||||
|
if [ -n "$INVALID" ]; then
|
||||||
|
FORMAT="❌"
|
||||||
|
echo "::error::Invalid CHANGELOG.md entries. Expected format: '- Description ([#123](https://github.com/<org>/<repo>/issues/123))'. Offending lines:"
|
||||||
|
echo "$INVALID"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
{
|
||||||
|
echo "## Changelog check"
|
||||||
|
echo ""
|
||||||
|
echo "| Check | Result |"
|
||||||
|
echo "|---|---|"
|
||||||
|
echo "| CHANGELOG.md has new entries | $UPDATED |"
|
||||||
|
echo "| Entry format | $FORMAT |"
|
||||||
|
if [ -n "$INVALID" ]; then
|
||||||
|
echo ""
|
||||||
|
echo "Offending lines:"
|
||||||
|
echo '```'
|
||||||
|
echo "$INVALID"
|
||||||
|
echo '```'
|
||||||
|
fi
|
||||||
|
} >> "$GITHUB_STEP_SUMMARY"
|
||||||
|
|
||||||
|
if [ "$UPDATED" != "✅" ] || [ "$FORMAT" != "✅" ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "CHANGELOG.md update is valid."
|
||||||
+1
-3
@@ -1,6 +1,3 @@
|
|||||||
# Change Log
|
|
||||||
All notable changes to this project will be documented in this file.
|
|
||||||
|
|
||||||
## [v5.0.0]
|
## [v5.0.0]
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
@@ -15,6 +12,7 @@ All notable changes to this project will be documented in this file.
|
|||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
- Add new WF for changelog check ([#2539](https://github.com/wazuh/wazuh-docker/pull/2539))
|
||||||
- Change artifact upload and download ([#2502](https://github.com/wazuh/wazuh-docker/issues/2502))
|
- Change artifact upload and download ([#2502](https://github.com/wazuh/wazuh-docker/issues/2502))
|
||||||
- Change runners on repository workflows 5.x ([#2471](https://github.com/wazuh/wazuh-docker/issues/2471))
|
- Change runners on repository workflows 5.x ([#2471](https://github.com/wazuh/wazuh-docker/issues/2471))
|
||||||
- PR revamp modifications 5.x ([#2446](https://github.com/wazuh/wazuh-docker/issues/2446))
|
- PR revamp modifications 5.x ([#2446](https://github.com/wazuh/wazuh-docker/issues/2446))
|
||||||
|
|||||||
Reference in New Issue
Block a user