name: main Build using Docker on: release: types: - published branches: - main-2.0.0 env: # solution path doesn't need slashes unless there it is multiple folders deep # solution name does not include extension. .sln is assumed SOLUTION_PATH: PepperDashEssentials SOLUTION_FILE: PepperDashEssentials # Do not edit this, we're just creating it here VERSION: 0.0.0-buildtype-buildnumber # Defaults to debug for build type BUILD_TYPE: Release # Defaults to main as the release branch. Change as necessary RELEASE_BRANCH: main jobs: Build_Project: runs-on: windows-2019 steps: # First we checkout the source repo - name: Checkout repo uses: actions/checkout@v3 # Generate the appropriate version number - name: Set Version Number shell: powershell id: setVersion env: TAG_NAME: ${{ github.event.release.tag_name }} run: echo "VERSION=$($Env:TAG_NAME)" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append - name: Setup MS Build uses: microsoft/setup-msbuild@v1.1 - name: restore Nuget Packages run: nuget restore .\$($Env:SOLUTION_FILE).sln - name: Build Solution run: msbuild .\$($Env:SOLUTION_FILE).sln /p:Platform="Any CPU" /p:Configuration="Debug" /p:Version="${{ steps.setVersion.outputs.version }}" -m - name: Pack Solution run: dotnet pack .\$($Env:SOLUTION_FILE).sln --configuration $env:BUILD_TYPE --output ./output /p:Version="${{ steps.setVersion.outputs.version }}" - name: Upload Release id: create_release uses: ncipollo/release-action@v1 with: updateRelease: true artifacts: 'output\**\*.*(cpz|cplz)' tag: ${{ steps.setVersion.outputs.version }} - name: Setup Nuget run: | nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username pepperdash -password ${{ secrets.GITHUB_TOKEN }} nuget setApiKey ${{ secrets.GITHUB_TOKEN }} -Source github nuget setApiKey ${{ secrets.NUGET_API_KEY }} -Source https://api.nuget.org/v3/index.json - name: Publish to Nuget run: nuget push .\output\*.nupkg -Source https://api.nuget.org/v3/index.json - name: Publish to Github Nuget run: nuget push .\output\*.nupkg -Source github