name: Pack to NuGet on: workflow_dispatch: inputs: Semi_Avalonia: description: 'Pack Semi.Avalonia' required: true default: 'true' type: boolean Semi_Avalonia_ColorPicker: description: 'Pack Semi.Avalonia.ColorPicker' required: true default: 'true' type: boolean Semi_Avalonia_DataGrid: description: 'Pack Semi.Avalonia.DataGrid' required: true default: 'true' type: boolean Semi_Avalonia_TreeDataGrid: description: 'Pack Semi.Avalonia.TreeDataGrid' required: true default: 'false' type: boolean jobs: Pack_to_NuGet: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4.1.1 - name: Pack Semi.Avalonia if: ${{ github.event.inputs.Semi_Avalonia == 'true' }} run: dotnet pack ./src/Semi.Avalonia -o ./nugets - name: Pack Semi.Avalonia.ColorPicker if: ${{ github.event.inputs.Semi_Avalonia_ColorPicker == 'true' }} run: dotnet pack ./src/Semi.Avalonia.ColorPicker -o ./nugets - name: Pack Semi.Avalonia.DataGrid if: ${{ github.event.inputs.Semi_Avalonia_DataGrid == 'true' }} run: dotnet pack ./src/Semi.Avalonia.DataGrid -o ./nugets - name: Pack Semi.Avalonia.TreeDataGrid if: ${{ github.event.inputs.Semi_Avalonia_TreeDataGrid == 'true' }} run: dotnet pack ./src/Semi.Avalonia.TreeDataGrid -o ./nugets - name: Publish NuGet package run: dotnet nuget push "./nugets/*.nupkg" --api-key ${{ secrets.NUGET_ORG_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate - name: Upload a Build Artifact uses: actions/upload-artifact@v4.3.1 with: name: nugets path: ./nugets if: always()