Merge branch 'master' of https://github.com/Lolle2000la/Image-Sort #219
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Image Sort CI | |
on: | |
push: | |
pull_request: | |
release: | |
types: [ created ] | |
jobs: | |
build: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Setup .NET Core | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: '8.0.x' | |
- name: GitVersion | |
uses: gittools/actions/gitversion/[email protected] | |
with: | |
versionSpec: '5.x' | |
includePrerelease: true | |
- name: Determine Version | |
id: gitversion | |
uses: gittools/actions/gitversion/execute@v0 | |
- name: Build | |
run: dotnet build --configuration Release | |
- name: Unit Tests | |
run: dotnet test .\tests\ImageSort.UnitTests\ImageSort.UnitTests.csproj --configuration Release --no-build | |
- name: UI Tests | |
run: dotnet test .\tests\ImageSort.WPF.UiTests\ImageSort.WPF.UiTests.csproj --configuration Release --no-build | |
- name: Build WIX project | |
if: ${{ github.event_name == 'release' }} | |
env: | |
GITHUB_ACTIONS_CI: true | |
run: | | |
cd .\src\ImageSort.WindowsSetup\; | |
dotnet gitversion /updatewixversionfile | Out-String; | |
dotnet tool install --global wix | |
dotnet build -c Release -r win-x86 -p:Platform=x86 | |
dotnet build -c Release -r win-x64 -p:Platform=x64 | |
dotnet build -c Release -r win-arm64 -p:Platform=ARM64 | |
cd ..\..; | |
- name: Upload x86 MSI file | |
id: upload-x86-msi-file | |
uses: actions/[email protected] | |
if: ${{ github.event_name == 'release' }} | |
with: | |
asset_path: .\artifacts\x86\ImageSort.x86.msi | |
asset_name: ImageSort.x86.msi | |
asset_content_type: application/octet-stream | |
upload_url: ${{ github.event.release.upload_url }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
TIME: ${{ github.run_number }} | |
- name: Upload x64 MSI file | |
id: upload-x64-msi-file | |
uses: actions/[email protected] | |
if: ${{ github.event_name == 'release' }} | |
with: | |
asset_path: .\artifacts\x64\ImageSort.x64.msi | |
asset_name: ImageSort.x64.msi | |
asset_content_type: application/octet-stream | |
upload_url: ${{ github.event.release.upload_url }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
TIME: ${{ github.run_number }} | |
- name: Upload ARM64 MSI file | |
id: upload-arm64-msi-file | |
uses: actions/[email protected] | |
if: ${{ github.event_name == 'release' }} | |
with: | |
asset_path: .\artifacts\ARM64\ImageSort.ARM64.msi | |
asset_name: ImageSort.ARM64.msi | |
asset_content_type: application/octet-stream | |
upload_url: ${{ github.event.release.upload_url }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
TIME: ${{ github.run_number }} | |
- name: Install winget-create | |
if: ${{ github.event_name == 'release' && !github.event.release.prerelease }} | |
run: choco install wingetcreate | |
- name: Install .NET 6 | |
uses: actions/setup-dotnet@v3 | |
if: ${{ github.event_name == 'release' && !github.event.release.prerelease }} | |
with: | |
dotnet-version: '6.0.x' | |
- name: Update and submit Winget manifest | |
if: ${{ github.event_name == 'release' && !github.event.release.prerelease }} | |
run: | | |
wingetcreate.exe update --submit --token ${{ secrets.PAT_WINGET }} --urls "${{ steps.upload-x86-msi-file.outputs.browser_download_url }}" "${{ steps.upload-x64-msi-file.outputs.browser_download_url }}" "${{ steps.upload-arm64-msi-file.outputs.browser_download_url }}" --version "${{ steps.gitversion.outputs.assemblySemVer }}" Lolle2000la.ImageSort |