mirror of
https://github.com/actualbudget/actual.git
synced 2026-04-30 03:23:51 -05:00
[AI] Skip AI-generated release notes for release/ branch PRs (#7107)
* Initial plan * [AI] Make AI-generated release notes not run on release/ branches Co-authored-by: jfdoming <9922514+jfdoming@users.noreply.github.com> * [AI] Use explicit startsWith(github.head_ref) if conditions instead of JS changes Co-authored-by: jfdoming <9922514+jfdoming@users.noreply.github.com> * Delete extra condition * Add release notes for PR #7107 * [autofix.ci] apply automated fixes * FIx note * Add head branch information to PR details * Refactor conditions for release notes generation * Sec --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: jfdoming <9922514+jfdoming@users.noreply.github.com> Co-authored-by: Julian Dominguez-Schatz <julian.dominguezschatz@gmail.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
@@ -37,12 +37,14 @@ async function getPRDetails() {
|
|||||||
console.log('- PR Author:', pr.user.login);
|
console.log('- PR Author:', pr.user.login);
|
||||||
console.log('- PR Title:', pr.title);
|
console.log('- PR Title:', pr.title);
|
||||||
console.log('- Base Branch:', pr.base.ref);
|
console.log('- Base Branch:', pr.base.ref);
|
||||||
|
console.log('- Head Branch:', pr.head.ref);
|
||||||
|
|
||||||
const result = {
|
const result = {
|
||||||
number: pr.number,
|
number: pr.number,
|
||||||
author: pr.user.login,
|
author: pr.user.login,
|
||||||
title: pr.title,
|
title: pr.title,
|
||||||
baseBranch: pr.base.ref,
|
baseBranch: pr.base.ref,
|
||||||
|
headBranch: pr.head.ref,
|
||||||
};
|
};
|
||||||
|
|
||||||
setOutput('result', JSON.stringify(result));
|
setOutput('result', JSON.stringify(result));
|
||||||
|
|||||||
19
.github/workflows/ai-generated-release-notes.yml
vendored
19
.github/workflows/ai-generated-release-notes.yml
vendored
@@ -41,21 +41,12 @@ jobs:
|
|||||||
GITHUB_REPOSITORY: ${{ github.repository }}
|
GITHUB_REPOSITORY: ${{ github.repository }}
|
||||||
GITHUB_EVENT_ISSUE_NUMBER: ${{ github.event.issue.number }}
|
GITHUB_EVENT_ISSUE_NUMBER: ${{ github.event.issue.number }}
|
||||||
|
|
||||||
- name: Check if PR targets master branch
|
|
||||||
if: steps.check-first-comment.outputs.result == 'true' && steps.pr-details.outputs.result != 'null'
|
|
||||||
id: check-base-branch
|
|
||||||
run: |
|
|
||||||
BASE_BRANCH=$(echo '${{ steps.pr-details.outputs.result }}' | jq -r '.baseBranch')
|
|
||||||
echo "Base branch: $BASE_BRANCH"
|
|
||||||
if [ "$BASE_BRANCH" = "master" ]; then
|
|
||||||
echo "targets_master=true" >> $GITHUB_OUTPUT
|
|
||||||
else
|
|
||||||
echo "targets_master=false" >> $GITHUB_OUTPUT
|
|
||||||
echo "PR does not target master branch, skipping release notes generation"
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Check if release notes file already exists
|
- name: Check if release notes file already exists
|
||||||
if: steps.check-first-comment.outputs.result == 'true' && steps.pr-details.outputs.result != 'null' && steps.check-base-branch.outputs.targets_master == 'true'
|
if: >-
|
||||||
|
steps.check-first-comment.outputs.result == 'true' &&
|
||||||
|
steps.pr-details.outputs.result != 'null' &&
|
||||||
|
fromJSON(steps.pr-details.outputs.result).baseBranch == 'master' &&
|
||||||
|
!startsWith(fromJSON(steps.pr-details.outputs.result).headBranch, 'release/')
|
||||||
id: check-release-notes-exists
|
id: check-release-notes-exists
|
||||||
run: node .github/actions/ai-generated-release-notes/check-release-notes-exists.js
|
run: node .github/actions/ai-generated-release-notes/check-release-notes-exists.js
|
||||||
env:
|
env:
|
||||||
|
|||||||
6
upcoming-release-notes/7107.md
Normal file
6
upcoming-release-notes/7107.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
category: Maintenance
|
||||||
|
authors: [jfdoming]
|
||||||
|
---
|
||||||
|
|
||||||
|
Skip AI-generated release notes for PRs originating from `release/*` branches to avoid redundancy.
|
||||||
Reference in New Issue
Block a user