name: Build and publish application on master push on: push: branches: - "master" - "features/github_actions" #paths: #- "VDownload**" jobs: build: name: Build runs-on: windows-latest strategy: matrix: configuration: [Release] platform: [x64, ARM64] steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Setup GitVersion uses: gittools/actions/gitversion/setup@v0.9.7 with: versionSpec: 5.x - name: Determine Version uses: gittools/actions/gitversion/execute@v0.9.7 id: gitversion with: useConfigFile: true configFilePath: .github/config/gitversion.yml - name: Set version in VDownload.csproj file id: package_version uses: KageKirin/set-csproj-version@v0 with: file: VDownload/VDownload.csproj version: ${{steps.gitversion.outputs.SemVer}} - name: Set version in Package.appxmanifest file uses: Nambers/ReplaceStringInFile@v1.3 with: path: VDownload/Package.appxmanifest oldString: 0\.0\.0\.0 newString: ${{steps.gitversion.outputs.SemVer}}.0 showFileContent: true escapeBackslash: true - name: Set version in app.manifest file uses: Nambers/ReplaceStringInFile@v1.3 with: path: VDownload/app.manifest oldString: 0\.0\.0\.0 newString: ${{steps.gitversion.outputs.SemVer}}.0 showFileContent: true escapeBackslash: true - name: Setup .NET uses: actions/setup-dotnet@v3 with: dotnet-version: 8.0.x - name: Setup MSBuild.exe uses: microsoft/setup-msbuild@v1.0.2 - name: Restore the application run: msbuild VDownload /t:Restore /p:Configuration=$env:Configuration env: Configuration: ${{ matrix.configuration }} - name: Create the app run: msbuild $env:Solution_Name /t:Publish /p:Configuration=$env:Configuration /p:Platform=$env:Platform env: Configuration: ${{ matrix.configuration }} Platform: ${{ matrix.platform }} - name: Upload artifact uses: actions/upload-artifact@v2 with: name: ${{matrix.platform}} path: VDownload\\bin