mirror of https://github.com/databricks/cli.git
Removed Changelog check Github Action (#2453)
## Changes Removed Changelog check Github Action ## Why Check for the Changelog and the necessity to add `NO_CHANGELOG=true` appears to be quite noisy, so removing this NO_CHANGELOG=true
This commit is contained in:
parent
77f6a285be
commit
b5a7023ef1
|
@ -8,7 +8,5 @@ For example, were there any decisions behind the change that are not reflected i
|
|||
## Tests
|
||||
<!-- How have you tested the changes? -->
|
||||
|
||||
---
|
||||
<!-- If your PR needs to be included in the release notes for next release,
|
||||
remove the line below and add a separate entry in NEXT_CHANGELOG.md as part of your PR. -->
|
||||
NO_CHANGELOG=true
|
||||
add a separate entry in NEXT_CHANGELOG.md as part of your PR. -->
|
||||
|
|
|
@ -1,105 +0,0 @@
|
|||
# Generated file. DO NOT EDIT.
|
||||
name: Check for NEXT_CHANGELOG.md Changes
|
||||
|
||||
on:
|
||||
# Use pull_request_target to have access to GitHub API
|
||||
pull_request_target:
|
||||
|
||||
jobs:
|
||||
check-next-changelog:
|
||||
runs-on:
|
||||
group: databricks-deco-testing-runner-group
|
||||
labels: ubuntu-latest-deco
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Fetch list of changed files
|
||||
id: changed-files
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
# Use the GitHub API to fetch changed files
|
||||
files=$(gh pr view ${{ github.event.pull_request.number }} --json files -q '.files[].path')
|
||||
|
||||
# Sanitize to avoid code injection
|
||||
sanitized_files=$(echo "$files" | sed 's/[^a-zA-Z0-9._/-]/_/g')
|
||||
|
||||
# Store the sanitized list of files in a temporary file to avoid env variable issues
|
||||
echo "$sanitized_files" > modified_files.txt
|
||||
|
||||
- name: Fetch PR message
|
||||
id: pr-message
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
# Use the GitHub API to fetch the PR message
|
||||
pr_message=$(gh pr view ${{ github.event.pull_request.number }} --json body -q '.body')
|
||||
|
||||
# Sanitize the PR message to avoid code injection, keeping the equal sign
|
||||
sanitized_pr_message=$(echo "$pr_message" | sed 's/[^a-zA-Z0-9._/-=]/_/g')
|
||||
|
||||
# Store the sanitized PR message
|
||||
echo "$sanitized_pr_message" > pr_message.txt
|
||||
|
||||
- name: Verify NEXT_CHANGELOG.md was modified or PR message contains NO_CHANGELOG=true
|
||||
run: |
|
||||
# Read the sanitized files and PR message from the temporary files
|
||||
modified_files=$(cat modified_files.txt)
|
||||
pr_message=$(cat pr_message.txt)
|
||||
|
||||
# Check if NEXT_CHANGELOG.md exists in the list of changed files
|
||||
echo "Changed files: $modified_files"
|
||||
if ! echo "$modified_files" | grep -q "NEXT_CHANGELOG.md"; then
|
||||
echo "NEXT_CHANGELOG.md not modified."
|
||||
|
||||
# Check if PR message contains NO_CHANGELOG=true
|
||||
if echo "$pr_message" | grep -q "NO_CHANGELOG=true"; then
|
||||
echo "NO_CHANGELOG=true found in PR message. Skipping changelog check."
|
||||
exit 0
|
||||
else
|
||||
echo "WARNING: file NEXT_CHANGELOG.md not changed. If this is expected, add NO_CHANGELOG=true to the PR message."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
- name: Comment on PR with instructions if needed
|
||||
if: failure() # This step will only run if the previous step fails (i.e., if NEXT_CHANGELOG.md was not modified and NO_CHANGELOG=true was not in the PR message)
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
# Check if a comment exists with the instructions
|
||||
previous_comment_ids=$(gh api "repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/comments" \
|
||||
--jq '.[] | select(.body | startswith("<!-- NEXT_CHANGELOG_INSTRUCTIONS -->")) | .id')
|
||||
echo "Previous comment IDs: $previous_comment_ids"
|
||||
|
||||
# If no previous comment exists, add one with instructions
|
||||
if [ -z "$previous_comment_ids" ]; then
|
||||
echo "Adding instructions comment."
|
||||
gh pr comment ${{ github.event.pull_request.number }} --body \
|
||||
"<!-- NEXT_CHANGELOG_INSTRUCTIONS -->
|
||||
Please ensure that the NEXT_CHANGELOG.md file is updated with any relevant changes.
|
||||
If this is not necessary for your PR, please include the following in your PR description:
|
||||
NO_CHANGELOG=true
|
||||
and rerun the job."
|
||||
fi
|
||||
|
||||
- name: Delete instructions comment on success
|
||||
if: success() # This step will only run if the previous check passed (i.e., if NEXT_CHANGELOG.md was modified or NO_CHANGELOG=true is in the PR message)
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
# Check if there is a previous instructions comment
|
||||
previous_comment_ids=$(gh api "repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/comments" \
|
||||
--jq '.[] | select(.body | startswith("<!-- NEXT_CHANGELOG_INSTRUCTIONS -->")) | .id')
|
||||
|
||||
# If a comment exists, delete it
|
||||
if [ -n "$previous_comment_ids" ]; then
|
||||
echo "Deleting previous instructions comment."
|
||||
for comment_id in $previous_comment_ids; do
|
||||
gh api "repos/${{ github.repository }}/issues/comments/$comment_id" --method DELETE
|
||||
done
|
||||
else
|
||||
echo "No instructions comment found to delete."
|
||||
fi
|
Loading…
Reference in New Issue