Skip to content

fix(upload): preserve image payload semantics (2026.6.17.2-2641) #9

fix(upload): preserve image payload semantics (2026.6.17.2-2641)

fix(upload): preserve image payload semantics (2026.6.17.2-2641) #9

name: Changelog append
on:
push:
branches: [main]
paths-ignore:
- 'CHANGELOG.md'
- '.gitignore'
- '.gitattributes'
workflow_dispatch:
inputs:
range:
description: 'Override commit range'
required: false
default: ''
permissions:
contents: write
concurrency:
group: changelog-append
cancel-in-progress: false
jobs:
append:
if: ${{ github.event_name == 'workflow_dispatch' || (github.actor != 'github-actions[bot]' && !contains(github.event.head_commit.message, '[skip changelog]')) }}
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Compute range
id: range
shell: bash
env:
DISPATCH_RANGE: ${{ inputs.range }}
run: |
set -euo pipefail
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
if [[ -n "$DISPATCH_RANGE" ]]; then
range="$DISPATCH_RANGE"
else
range="HEAD~1..HEAD"
fi
else
before='${{ github.event.before }}'
after='${{ github.event.after }}'
if [[ "$before" =~ ^0+$ ]]; then
range="HEAD~1..HEAD"
elif git merge-base --is-ancestor "$before" "$after" 2>/dev/null; then
range="$before..$after"
else
range="HEAD~1..HEAD"
fi
fi
echo "range=$range" >> "$GITHUB_OUTPUT"
- name: Append changelog entries
id: append
shell: pwsh
run: |
./.github/scripts/Update-Changelog.ps1 -Mode Append -Range '${{ steps.range.outputs.range }}'
$changed = git status --porcelain CHANGELOG.md
if ([string]::IsNullOrWhiteSpace($changed)) {
"changed=false" >> $env:GITHUB_OUTPUT
} else {
"changed=true" >> $env:GITHUB_OUTPUT
}
- name: Commit changelog
if: steps.append.outputs.changed == 'true'
shell: bash
run: |
set -euo pipefail
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add CHANGELOG.md
git commit -m "docs(changelog): append entries [skip changelog]"
git push