mirror of
https://github.com/BubbaGumpShrump/AutoTrackR2.git
synced 2025-05-29 03:05:30 +00:00
83 lines
3.5 KiB
YAML
83 lines
3.5 KiB
YAML
name: Build and Package
|
|
|
|
on:
|
|
push:
|
|
branches: [default]
|
|
pull_request:
|
|
branches: [default]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Get build number
|
|
id: buildnumber
|
|
run: |
|
|
$runNumber = $env:GITHUB_RUN_NUMBER
|
|
$version = "2.$runNumber"
|
|
echo "version=$version" >> $env:GITHUB_OUTPUT
|
|
|
|
- name: Setup .NET
|
|
uses: actions/setup-dotnet@v3
|
|
with:
|
|
dotnet-version: "9.0.x"
|
|
|
|
- name: Restore dependencies
|
|
run: dotnet restore AutoTrackR2.sln
|
|
|
|
- name: Build
|
|
run: |
|
|
dotnet build AutoTrackR2.sln --configuration Release --no-restore -p:Version=${{ steps.buildnumber.outputs.version }}
|
|
|
|
- name: Create release directory
|
|
run: |
|
|
mkdir release
|
|
$releaseDir = Get-ChildItem -Recurse -Directory -Filter "Release" | Select-Object -First 1
|
|
if ($releaseDir) {
|
|
Write-Host "Release directory found at: $($releaseDir.FullName)"
|
|
|
|
# Copy main application files (excluding .pdb)
|
|
Copy-Item "$($releaseDir.FullName)\AutoTrackR2.exe" "release\" -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\AutoTrackR2.dll" "release\" -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\AutoTrackR2.runtimeconfig.json" "release\" -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\AutoTrackR2.deps.json" "release\" -ErrorAction SilentlyContinue
|
|
|
|
# Copy resources
|
|
Copy-Item "$($releaseDir.FullName)\config.ini" "release\" -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\themes.json" "release\" -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\AutoTrackR2.ico" "release\" -ErrorAction SilentlyContinue
|
|
|
|
# Create directories
|
|
mkdir "release\Fonts" -ErrorAction SilentlyContinue
|
|
mkdir "release\Assets" -ErrorAction SilentlyContinue
|
|
mkdir "release\sounds" -ErrorAction SilentlyContinue
|
|
mkdir "release\scripts" -ErrorAction SilentlyContinue
|
|
|
|
# Copy directories
|
|
Copy-Item "$($releaseDir.FullName)\Fonts\*" "release\Fonts\" -Recurse -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\Assets\*" "release\Assets\" -Recurse -ErrorAction SilentlyContinue
|
|
Copy-Item "$($releaseDir.FullName)\sounds\*" "release\sounds\" -Recurse -ErrorAction SilentlyContinue
|
|
Copy-Item "AutoTrackR2\scripts\*" "release\scripts\" -Recurse -ErrorAction SilentlyContinue
|
|
|
|
# List contents of release directory for verification
|
|
Write-Host "Contents of release directory:"
|
|
Get-ChildItem -Path "release" -Recurse | ForEach-Object { Write-Host $_.FullName }
|
|
} else {
|
|
Write-Host "No Release directory found"
|
|
Get-ChildItem -Recurse -Directory | ForEach-Object { Write-Host $_.FullName }
|
|
exit 1
|
|
}
|
|
|
|
- name: Create zip file
|
|
run: |
|
|
Compress-Archive -Path "release\*" -DestinationPath "AutoTrackR2-${{ steps.buildnumber.outputs.version }}.zip" -Force
|
|
|
|
- name: Upload release artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: AutoTrackR2-${{ steps.buildnumber.outputs.version }}
|
|
path: AutoTrackR2-${{ steps.buildnumber.outputs.version }}.zip
|
|
retention-days: 5
|