mirror of
https://github.com/litruv/PNGTuber-Plus.git
synced 2026-07-24 10:36:01 +10:00
!build automation testing
This commit is contained in:
30
.github/workflows/build-windows.yml
vendored
30
.github/workflows/build-windows.yml
vendored
@@ -136,34 +136,44 @@ jobs:
|
|||||||
|
|
||||||
# Generate commit history since last tag (or all commits if no tag)
|
# Generate commit history since last tag (or all commits if no tag)
|
||||||
$commitRange = if ($latestTag) { "$latestTag..HEAD" } else { "HEAD" }
|
$commitRange = if ($latestTag) { "$latestTag..HEAD" } else { "HEAD" }
|
||||||
$commitHistory = ""
|
|
||||||
|
|
||||||
# Get commits with format: short hash, subject, author
|
# Get commits with format: short hash, subject, author
|
||||||
$commits = & git log $commitRange --pretty=format:"%h|%s|%an" --no-merges
|
$commits = & git log $commitRange --pretty=format:"%h|%s|%an" --no-merges
|
||||||
|
|
||||||
|
# Create a temporary file to store commit history
|
||||||
|
$tempFile = [System.IO.Path]::GetTempFileName()
|
||||||
|
|
||||||
if ($commits) {
|
if ($commits) {
|
||||||
$commitHistory = "`n`n## Changes Since Last Release`n"
|
"## Changes Since Last Release" | Out-File -FilePath $tempFile -Encoding UTF8
|
||||||
|
"" | Out-File -FilePath $tempFile -Append -Encoding UTF8
|
||||||
|
|
||||||
$commits | ForEach-Object {
|
$commits | ForEach-Object {
|
||||||
$parts = $_ -split '\|', 3
|
$parts = $_ -split '\|', 3
|
||||||
$hash = $parts[0]
|
$hash = $parts[0]
|
||||||
$subject = $parts[1]
|
$subject = $parts[1] -replace '"', '\"'
|
||||||
$author = $parts[2]
|
$author = $parts[2]
|
||||||
$commitUrl = "https://github.com/${{ github.repository }}/commit/$hash"
|
$commitUrl = "https://github.com/${{ github.repository }}/commit/$hash"
|
||||||
$commitHistory += "- [$hash]($commitUrl) $subject (by $author)`n"
|
"- [$hash]($commitUrl) $subject (by $author)" | Out-File -FilePath $tempFile -Append -Encoding UTF8
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$commitHistory = "`n`n## Changes Since Last Release`nNo new commits since last release.`n"
|
"## Changes Since Last Release" | Out-File -FilePath $tempFile -Encoding UTF8
|
||||||
|
"" | Out-File -FilePath $tempFile -Append -Encoding UTF8
|
||||||
|
"No new commits since last release." | Out-File -FilePath $tempFile -Append -Encoding UTF8
|
||||||
}
|
}
|
||||||
|
|
||||||
# Escape special characters for GitHub output
|
# Set outputs for use in next steps using multiline syntax
|
||||||
$commitHistoryEscaped = $commitHistory -replace '"', '\"' -replace '`', '\`'
|
|
||||||
|
|
||||||
# Set outputs for use in next steps
|
|
||||||
echo "tag=$tag" >> $env:GITHUB_OUTPUT
|
echo "tag=$tag" >> $env:GITHUB_OUTPUT
|
||||||
echo "release_name=$releaseName" >> $env:GITHUB_OUTPUT
|
echo "release_name=$releaseName" >> $env:GITHUB_OUTPUT
|
||||||
echo "short_sha=$shortSha" >> $env:GITHUB_OUTPUT
|
echo "short_sha=$shortSha" >> $env:GITHUB_OUTPUT
|
||||||
echo "build_number=$buildNumber" >> $env:GITHUB_OUTPUT
|
echo "build_number=$buildNumber" >> $env:GITHUB_OUTPUT
|
||||||
echo "commit_history=$commitHistoryEscaped" >> $env:GITHUB_OUTPUT
|
|
||||||
|
# Use heredoc syntax for multiline commit history
|
||||||
|
echo "commit_history<<EOF" >> $env:GITHUB_OUTPUT
|
||||||
|
Get-Content $tempFile | Out-File -FilePath $env:GITHUB_OUTPUT -Append -Encoding UTF8
|
||||||
|
echo "EOF" >> $env:GITHUB_OUTPUT
|
||||||
|
|
||||||
|
# Clean up temp file
|
||||||
|
Remove-Item $tempFile
|
||||||
- name: Download Windows Build
|
- name: Download Windows Build
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
|
|||||||
Reference in New Issue
Block a user