on: push: tags: - '*' name: Publish concurrency: group: ${{ github.ref }} cancel-in-progress: true jobs: publish: name: Publish runs-on: windows-latest steps: - name: Set variables id: vars run: | echo "dotnet_version=$(dotnet --version)" >> $env:GITHUB_OUTPUT echo "program_data=$env:ProgramData" >> $env:GITHUB_OUTPUT - name: Restore cache uses: actions/cache/restore@v4 with: key: ${{ steps.vars.outputs.dotnet_version }} path: ${{ steps.vars.outputs.program_data }}\dotnet\workloads - name: Checkout uses: actions/checkout@v4 with: submodules: true - name: Setup MSBuild uses: microsoft/setup-msbuild@v2 with: msbuild-architecture: x64 - name: Setup .NET workloads run: | dotnet workload install android ios maccatalyst macos maui Invoke-RestMethod 'https://raw.githubusercontent.com/Samsung/Tizen.NET/main/workload/scripts/workload-install.ps1' | Invoke-Expression - name: Setup Java uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' - uses: olegtarasov/get-tag@v2-release id: tag_name - name: Build and pack run: | $env:VERSION_SUFFIX = "${{ steps.tag_name.outputs.tag }}" -replace "^[^\-]+-?", "" dotnet restore MSBuild -t:pack -p:Configuration=Release -p:PackageOutputPath=".." -v:minimal - name: Publish run: | dotnet nuget push FluentIcons.*.nupkg -k ${{ secrets.NUGET_API_KEY }} -s https://api.nuget.org/v3/index.json