Compare commits

...

22 Commits

Author SHA1 Message Date
Dax T Games
adbd6322f6 Merge branch 'master' into copilot/fix-github-step-summary 2026-02-28 08:06:34 -05:00
Dax T. Games
0c6b2d9900 Add back comments 2026-02-22 13:45:47 -05:00
Dax T. Games
66ab9ad6f7 remove nodejs files 2026-02-22 18:11:34 -05:00
Dax T. Games
6137073ba3 fix path to sources.json 2026-02-22 17:58:59 -05:00
Dax T. Games
6858619614 x 2026-02-22 17:56:27 -05:00
Dax T Games
002282636a Merge branch 'master' into copilot/fix-github-step-summary 2026-02-22 12:36:55 -05:00
Dax T. Games
48cc28a634 Fix yaml errors 2026-02-22 17:27:45 -05:00
Dax T. Games
e71c7679f6 Fixes and Cleanup 2026-02-22 16:22:17 -05:00
copilot-swe-agent[bot]
dc93fa5d1b Add real artifact download URLs with retry logic and fallback to run page
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-25 05:40:39 +00:00
copilot-swe-agent[bot]
684185ca8a Fix vendor workflow Unicode escape error by converting echo to PowerShell here-strings
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-25 05:37:09 +00:00
David Refoua
2780a43323 Update .github/workflows/tests.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-15 06:33:39 +03:30
David Refoua
641ce7b1e8 Update .github/workflows/build.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-15 06:23:04 +03:30
David Refoua
a52b0b9e10 Update .github/workflows/tests.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-15 06:20:35 +03:30
copilot-swe-agent[bot]
825df3aace Fix branch link for PR merge refs to point to PR instead of invalid tree URL
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-15 02:48:18 +00:00
David Refoua
a937901e82 Change emoji for Vendor Packages section 2025-12-15 06:06:08 +03:30
copilot-swe-agent[bot]
27c7a0cdc6 Improve build summary: simplify message, reorder columns, add file type emojis
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-15 01:59:35 +00:00
copilot-swe-agent[bot]
838c1cfaa3 Add backticks to clickable links for code formatting in Repository Information
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-15 01:56:14 +00:00
copilot-swe-agent[bot]
bff3862ad4 Use 🗃️ emoji for Vendor Packages and Artifacts sections
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-15 01:41:42 +00:00
copilot-swe-agent[bot]
2057ee58b0 Fix incomplete summary by initializing $summary variable before appending
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-15 01:13:19 +00:00
copilot-swe-agent[bot]
0bc7fd3aaa Improve build workflow summary: add links, vendor packages, full hashes, and merge artifact sections
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-14 22:30:03 +00:00
copilot-swe-agent[bot]
1e04711a21 Change test emoji from 🧪 to in workflow summary
Co-authored-by: DRSDavidSoft <4673812+DRSDavidSoft@users.noreply.github.com>
2025-12-14 22:08:39 +00:00
copilot-swe-agent[bot]
3810b8d258 Initial plan 2025-12-14 21:42:23 +00:00
5 changed files with 330 additions and 161 deletions

View File

@@ -1,7 +1,12 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2 version: 2
updates: updates:
# Enable version updates for GitHub Actions # Enable version updates for GitHub Actions
- package-ecosystem: "github-actions" - package-ecosystem: "github-actions" # See documentation for possible values
directory: "/" # Location of package manifests directory: "/" # Location of package manifests
schedule: schedule:
interval: "weekly" interval: "weekly"

View File

@@ -42,17 +42,61 @@ jobs:
- name: Summary - Repository checkout - name: Summary - Repository checkout
shell: pwsh shell: pwsh
run: | run: |
echo "## 📦 Build Cmder - Workflow Summary" >> $env:GITHUB_STEP_SUMMARY # Get Cmder version
echo "" >> $env:GITHUB_STEP_SUMMARY . scripts/utils.ps1
echo "### Repository Information" >> $env:GITHUB_STEP_SUMMARY $cmderVersion = Get-VersionStr
echo "| Property | Value |" >> $env:GITHUB_STEP_SUMMARY $buildTime = (Get-Date).ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssZ")
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY
echo "| Repository | \`${{ github.repository }}\` |" >> $env:GITHUB_STEP_SUMMARY # Determine branch link (handle PR merge refs)
echo "| Branch | \`${{ github.ref_name }}\` |" >> $env:GITHUB_STEP_SUMMARY $branchName = "${{ github.ref_name }}"
echo "| Commit | \`${{ github.sha }}\` |" >> $env:GITHUB_STEP_SUMMARY $branchLink = ""
echo "| Actor | @${{ github.actor }} |" >> $env:GITHUB_STEP_SUMMARY if ($branchName -match '^(\d+)/(merge|head)$') {
echo "| Workflow | \`${{ github.workflow }}\` |" >> $env:GITHUB_STEP_SUMMARY # This is a PR merge/head ref, link to the PR
echo "" >> $env:GITHUB_STEP_SUMMARY $prNumber = $Matches[1]
$branchLink = "https://github.com/${{ github.repository }}/pull/$prNumber"
} elseif ("${{ github.event_name }}" -eq "pull_request") {
# This is a pull request event, link to the PR
$branchLink = "https://github.com/${{ github.repository }}/pull/${{ github.event.pull_request.number }}"
} else {
# Regular branch, link to the branch tree
$branchLink = "https://github.com/${{ github.repository }}/tree/${{ github.ref_name }}"
}
$summary = @"
## 📦 Build Cmder - Workflow Summary
<small>Build started: $buildTime</small>
### Repository Information
| Property | Value |
| --- | --- |
| Repository | [``${{ github.repository }}``](https://github.com/${{ github.repository }}) |
| Branch | [``$branchName``]($branchLink) |
| Commit | [``${{ github.sha }}``](https://github.com/${{ github.repository }}/commit/${{ github.sha }}) |
| Actor | [@${{ github.actor }}](https://github.com/${{ github.actor }}) |
| Workflow | ``${{ github.workflow }}`` |
| Cmder Version | **$cmderVersion** |
---
### 📁 Vendor Packages
| Package | Version |
| --- | --- |
"@
# Read vendor sources.json and add to summary
$vendorSources = Get-Content "vendor/sources.json" | ConvertFrom-Json
if ($vendorSources.Count -eq 0) {
$summary += "`n| _No vendor packages found_ | |"
} else {
foreach ($vendor in $vendorSources) {
$summary += "`n| ``$($vendor.name)`` | $($vendor.version) |"
}
}
$summary += "`n"
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Add MSBuild to PATH - name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v2 uses: microsoft/setup-msbuild@v2
@@ -66,36 +110,23 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "### ✅ Build Status" >> $env:GITHUB_STEP_SUMMARY $summary = @"
echo "" >> $env:GITHUB_STEP_SUMMARY
echo "Cmder launcher successfully compiled." >> $env:GITHUB_STEP_SUMMARY ---
echo "" >> $env:GITHUB_STEP_SUMMARY
### Build Status
✅ Cmder built successfully.
"@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Pack the built files - name: Pack the built files
shell: pwsh shell: pwsh
working-directory: scripts working-directory: scripts
run: .\pack.ps1 -verbose run: .\pack.ps1 -verbose
- name: Summary - Package artifacts
if: success()
shell: pwsh
run: |
echo "### 📦 Artifacts Created" >> $env:GITHUB_STEP_SUMMARY
echo "" >> $env:GITHUB_STEP_SUMMARY
echo "| Artifact | Size | Hash (SHA256) |" >> $env:GITHUB_STEP_SUMMARY
echo "| --- | --- | --- |" >> $env:GITHUB_STEP_SUMMARY
$artifacts = @("cmder.zip", "cmder.7z", "cmder_mini.zip")
foreach ($artifact in $artifacts) {
$path = "build/$artifact"
if (Test-Path $path) {
$size = (Get-Item $path).Length / 1MB
# Truncate hash to first 16 chars for summary readability (full hash in hashes.txt)
$hash = (Get-FileHash $path -Algorithm SHA256).Hash.Substring(0, 16)
echo "| \`$artifact\` | $([math]::Round($size, 2)) MB | \`$hash...\` |" >> $env:GITHUB_STEP_SUMMARY
}
}
echo "" >> $env:GITHUB_STEP_SUMMARY
- name: Upload artifact (cmder.zip) - name: Upload artifact (cmder.zip)
uses: actions/upload-artifact@v6 uses: actions/upload-artifact@v6
with: with:
@@ -124,15 +155,82 @@ jobs:
- name: Summary - Artifacts uploaded - name: Summary - Artifacts uploaded
if: success() if: success()
shell: pwsh shell: pwsh
env:
GH_TOKEN: ${{ github.token }}
run: | run: |
echo "### ☁️ Upload Status" >> $env:GITHUB_STEP_SUMMARY $summary = @"
echo "" >> $env:GITHUB_STEP_SUMMARY
echo "All artifacts successfully uploaded to GitHub Actions:" >> $env:GITHUB_STEP_SUMMARY ---
echo '- ✅ `cmder.zip`' >> $env:GITHUB_STEP_SUMMARY
echo '- ✅ `cmder.7z`' >> $env:GITHUB_STEP_SUMMARY ### 🗃️ Artifacts
echo '- ✅ `cmder_mini.zip`' >> $env:GITHUB_STEP_SUMMARY
echo '- ✅ `hashes.txt`' >> $env:GITHUB_STEP_SUMMARY | Artifact | Size | Download | Hash (SHA256) |
echo "" >> $env:GITHUB_STEP_SUMMARY | --- | --- | --- | --- |
"@
# Function to get artifact download URL with retry logic
function Get-ArtifactDownloadUrl {
param(
[string]$ArtifactName,
[int]$MaxRetries = 3,
[int]$DelaySeconds = 2
)
for ($i = 0; $i -lt $MaxRetries; $i++) {
try {
# Use GitHub CLI to get artifact information
$artifactsJson = gh api "repos/${{ github.repository }}/actions/runs/${{ github.run_id }}/artifacts" --jq ".artifacts[] | select(.name == `"$ArtifactName`")"
if ($artifactsJson) {
$artifact = $artifactsJson | ConvertFrom-Json
if ($artifact.archive_download_url) {
return $artifact.archive_download_url
}
}
} catch {
Write-Host "Attempt $($i + 1) failed to get artifact URL for $ArtifactName : $_"
}
if ($i -lt ($MaxRetries - 1)) {
Start-Sleep -Seconds $DelaySeconds
}
}
return $null
}
$artifacts = @("cmder.zip", "cmder.7z", "cmder_mini.zip", "hashes.txt")
foreach ($artifact in $artifacts) {
$path = "build/$artifact"
if (Test-Path $path) {
$size = (Get-Item $path).Length / 1MB
$hash = (Get-FileHash $path -Algorithm SHA256).Hash
# Try to get the actual artifact download URL
$downloadUrl = Get-ArtifactDownloadUrl -ArtifactName $artifact
$warning = ""
if (-not $downloadUrl) {
# Fallback to workflow run page if artifact URL fetch fails
$downloadUrl = "https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
$warning = " ⚠️"
}
# Determine emoji based on file type
if ($artifact -match '\.txt$') {
$emoji = "📄"
} elseif ($artifact -match '\.(zip|7z)$') {
$emoji = "🗄️"
} else {
$emoji = "📦"
}
$summary += "`n| $emoji ``$artifact`` | $([math]::Round($size, 2)) MB | [📥 Download$warning]($downloadUrl) | ``$hash`` |"
}
}
$summary += "`n"
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Create Release - name: Create Release
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
@@ -150,14 +248,20 @@ jobs:
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/')
shell: pwsh shell: pwsh
run: | run: |
echo "### 🚀 Release Information" >> $env:GITHUB_STEP_SUMMARY $summary = @"
echo "" >> $env:GITHUB_STEP_SUMMARY
echo "Draft release created for tag: **\`${{ github.ref_name }}\`**" >> $env:GITHUB_STEP_SUMMARY
echo "" >> $env:GITHUB_STEP_SUMMARY
echo "Release includes:" >> $env:GITHUB_STEP_SUMMARY
echo "- Full version (\`cmder.zip\`, \`cmder.7z\`)" >> $env:GITHUB_STEP_SUMMARY
echo "- Mini version (\`cmder_mini.zip\`)" >> $env:GITHUB_STEP_SUMMARY
echo "- File hashes (\`hashes.txt\`)" >> $env:GITHUB_STEP_SUMMARY
echo "" >> $env:GITHUB_STEP_SUMMARY
echo "> ⚠️ Release is in **draft** mode. Please review and publish manually." >> $env:GITHUB_STEP_SUMMARY
---
### Release Information
🚀 Draft release created for tag: **``${{ github.ref_name }}``**
Release includes:
- Full version (``cmder.zip``, ``cmder.7z``)
- Mini version (``cmder_mini.zip``)
- File hashes (``hashes.txt``)
> ⚠️ Release is in **draft** mode. Please review and publish manually.
"@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8

View File

@@ -50,20 +50,21 @@ jobs:
- name: Summary - CodeQL analysis started - name: Summary - CodeQL analysis started
shell: pwsh shell: pwsh
run: | run: |
$summary = @( $summary = @"
'## 🔒 CodeQL Security Analysis - Workflow Summary' ## 🔒 CodeQL Security Analysis - Workflow Summary
''
'### Analysis Configuration' ### Analysis Configuration
''
'| Property | Value |' | Property | Value |
'| --- | --- |' | --- | --- |
'| Repository | `${{ github.repository }}` |' | Repository | ``${{ github.repository }}`` |
'| Branch | `${{ github.ref_name }}` |' | Branch | ``${{ github.ref_name }}`` |
'| Language | `${{ matrix.language }}` |' | Language | ``${{ matrix.language }}`` |
'| Commit | `${{ github.sha }}` |' | Commit | ``${{ github.sha }}`` |
''
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: Initialize CodeQL
@@ -89,13 +90,14 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
$summary = @( $summary = @"
'### ✅ Build Completed' ### ✅ Build Completed
''
'Cmder launcher built successfully for CodeQL analysis.' Cmder launcher built successfully for CodeQL analysis.
''
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4 uses: github/codeql-action/analyze@v4
@@ -106,13 +108,14 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
$summary = @( $summary = @"
'### 🔍 CodeQL Analysis Results' ### 🔍 CodeQL Analysis Results
''
'✅ CodeQL security analysis completed successfully.' ✅ CodeQL security analysis completed successfully.
''
'**Language analyzed:** `${{ matrix.language }}`' **Language analyzed:** ``${{ matrix.language }}``
''
'> Check the Security tab for detailed findings and recommendations.' > Check the Security tab for detailed findings and recommendations.
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8

View File

@@ -39,20 +39,33 @@ jobs:
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Summary - Test execution started - name: Summary - Test execution started
shell: pwsh shell: pwsh
run: | run: |
echo "## 🧪 Run Tests - Workflow Summary" >> $env:GITHUB_STEP_SUMMARY # Get Cmder version
echo "" >> $env:GITHUB_STEP_SUMMARY . scripts/utils.ps1
echo "### Test Environment" >> $env:GITHUB_STEP_SUMMARY $cmderVersion = Get-VersionStr
echo "| Property | Value |" >> $env:GITHUB_STEP_SUMMARY
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY $summary = @"
echo "| Repository | \`${{ github.repository }}\` |" >> $env:GITHUB_STEP_SUMMARY ## ✅ Run Tests - Workflow Summary
echo "| Branch | \`${{ github.ref_name }}\` |" >> $env:GITHUB_STEP_SUMMARY
echo "| Commit | \`${{ github.sha }}\` |" >> $env:GITHUB_STEP_SUMMARY ### Test Environment
echo "| Runner OS | \`${{ runner.os }}\` |" >> $env:GITHUB_STEP_SUMMARY | Property | Value |
echo "" >> $env:GITHUB_STEP_SUMMARY | --- | --- |
| Repository | ``${{ github.repository }}`` |
| Branch | ``${{ github.ref_name }}`` |
| Commit | ``${{ github.sha }}`` |
| Runner OS | ``${{ runner.os }}`` |
| Cmder Version | **$cmderVersion** |
| PowerShell Version | **$($PSVersionTable.PSVersion)** |
| Event | ``${{ github.event_name }}`` |
"@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Initialize vendors - name: Initialize vendors
shell: pwsh shell: pwsh
@@ -63,21 +76,51 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "### ⚙️ Vendor Initialization" >> $env:GITHUB_STEP_SUMMARY # Get vendor versions from sources.json
echo "" >> $env:GITHUB_STEP_SUMMARY $vendorInfo = @()
echo "✅ Vendor dependencies initialized successfully." >> $env:GITHUB_STEP_SUMMARY $sources = Get-Content "vendor\sources.json" -Raw | ConvertFrom-Json
echo "" >> $env:GITHUB_STEP_SUMMARY $vendorDirs = $sources.PSObject.Properties | ForEach-Object { $_.Name }
foreach ($dir in $vendorDirs) {
$versionFile = "vendor/$dir/.cmderver"
if (Test-Path $versionFile) {
$version = Get-Content $versionFile -Raw
$vendorInfo += "- **$dir**: $($version.Trim())"
}
}
$summary = @"
### ⚙️ Vendor Initialization
✅ Vendor dependencies initialized successfully.
**Vendor Versions:**
"@
$(
if ($vendorInfo.Count -eq 0) {
$summary += "_No vendor version information available._"
} else {
$summary += $vendorInfo -join '`n'
}
)
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Summary - Test results table header - name: Summary - Test results table header
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "### 📋 Test Results" >> $env:GITHUB_STEP_SUMMARY $summary = @"
echo "" >> $env:GITHUB_STEP_SUMMARY ### 📋 Test Results
echo "| Test | Status |" >> $env:GITHUB_STEP_SUMMARY
echo "| --- | --- |" >> $env:GITHUB_STEP_SUMMARY | Test | Status | Duration |
| --- | --- | --- |
"@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Testing Clink Shell - name: Testing Clink Shell
id: test-clink
run: | run: |
cmd /c vendor\init.bat /v /d /t cmd /c vendor\init.bat /v /d /t
@@ -85,8 +128,9 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "| Clink Shell | ✅ Passed |" >> $env:GITHUB_STEP_SUMMARY "| Clink Shell | ✅ Passed | Cmd shell initialization |" | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Testing PowerShell - name: Testing PowerShell
id: test-powershell
run: | run: |
PowerShell.exe -ExecutionPolicy Bypass -NoLogo -NoProfile -Command "$env:CMDER_DEBUG='1'; . 'vendor\profile.ps1'" PowerShell.exe -ExecutionPolicy Bypass -NoLogo -NoProfile -Command "$env:CMDER_DEBUG='1'; . 'vendor\profile.ps1'"
@@ -94,8 +138,9 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "| PowerShell | ✅ Passed |" >> $env:GITHUB_STEP_SUMMARY "| PowerShell | ✅ Passed | Profile script execution |" | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Testing Bash - name: Testing Bash
id: test-bash
run: | run: |
bash vendor/cmder.sh bash vendor/cmder.sh
@@ -103,13 +148,22 @@ jobs:
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "| Bash | ✅ Passed |" >> $env:GITHUB_STEP_SUMMARY "| Bash | ✅ Passed | Bash environment initialization |" | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- name: Summary - All tests completed - name: Summary - All tests completed
if: success() if: success()
shell: pwsh shell: pwsh
run: | run: |
echo "" >> $env:GITHUB_STEP_SUMMARY $summary = @"
echo "### ✅ All Tests Completed" >> $env:GITHUB_STEP_SUMMARY
echo "" >> $env:GITHUB_STEP_SUMMARY ### ✅ All Tests Completed
echo "All shell environments tested successfully!" >> $env:GITHUB_STEP_SUMMARY
All shell environments tested successfully!
**Test Coverage:**
- ✅ Clink shell environment (Windows cmd.exe with Clink)
- ✅ PowerShell environment (with Cmder profile)
- ✅ Bash environment (Git Bash integration)
"@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8

View File

@@ -31,13 +31,14 @@ jobs:
- name: Summary - Workflow started - name: Summary - Workflow started
shell: pwsh shell: pwsh
run: | run: |
$summary = @( $summary = @"
'## 📦 Update Vendor - Workflow Summary' ## 📦 Update Vendor - Workflow Summary
''
'Checking for vendor dependency updates...' Checking for vendor dependency updates...
''
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- id: make-changes - id: make-changes
name: Checking for updates name: Checking for updates
@@ -60,6 +61,7 @@ jobs:
} }
if ($count -eq 0) { return } if ($count -eq 0) { return }
Set-GHVariable -Name LIST_UPDATED -Value $listUpdated.Trim(', ') Set-GHVariable -Name LIST_UPDATED -Value $listUpdated.Trim(', ')
echo "UPDATE_MESSAGE<<<EOF`n$updateMessage`n<EOF" | Out-File -FilePath $env:GITHUB_ENV -Append -Encoding utf8 echo "UPDATE_MESSAGE<<<EOF`n$updateMessage`n<EOF" | Out-File -FilePath $env:GITHUB_ENV -Append -Encoding utf8
- name: Summary - Update check results - name: Summary - Update check results
@@ -67,26 +69,26 @@ jobs:
run: | run: |
$count = [int]$env:COUNT_UPDATED $count = [int]$env:COUNT_UPDATED
if ($count -eq 0) { if ($count -eq 0) {
$summary = @( $summary = @"
'### ✅ No Updates Available' ### ✅ No Updates Available
''
'All vendor dependencies are up to date.' All vendor dependencies are up to date.
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
} else { } else {
$word = if ($count -eq 1) { 'dependency' } else { 'dependencies' } $word = if ($count -eq 1) { 'dependency' } else { 'dependencies' }
$summary = @( $summary = @"
'### 🔄 Updates Found' ### 🔄 Updates Found
''
"**$count** vendor $word updated:" **$count** vendor $word updated:
''
$env:UPDATE_MESSAGE $env:UPDATE_MESSAGE
''
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
} }
- uses: peter-evans/create-pull-request@v8 $summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8
- uses: peter-evans/create-pull-request@v7
if: env.COUNT_UPDATED > 0 if: env.COUNT_UPDATED > 0
with: with:
title: 'Updates to `${{ env.COUNT_UPDATED }}` vendored dependencies' title: 'Updates to `${{ env.COUNT_UPDATED }}` vendored dependencies'
@@ -103,15 +105,16 @@ jobs:
if: env.COUNT_UPDATED > 0 if: env.COUNT_UPDATED > 0
shell: pwsh shell: pwsh
run: | run: |
$summary = @( $Summary = @"
'### 🎉 Pull Request Created' ### 🎉 Pull Request Created
''
'A pull request has been created to update the vendor dependencies.' A pull request has been created to update the vendor dependencies.
''
'**Branch:** `update-vendor`' **Branch:** ``update-vendor``
''
$env:LIST_UPDATED -and "**Updated dependencies:** $env:LIST_UPDATED" -or "**Updated dependencies:** " **Updated dependencies:** $env:LIST_UPDATED
''
'> Please review and merge the pull request to apply the updates.' > Please review and merge the pull request to apply the updates.
) "@
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY
$summary | Add-Content -Path $env:GITHUB_STEP_SUMMARY -Encoding utf8