diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 10b0452..441a3cc 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -1,51 +1,34 @@ -name: publish to nuget +name: NuGet Publish + on: - push: - branches: - - main # Default release branch + workflow_dispatch: + inputs: + publishMain: + description: 'Publish Saison (Y/N)?' + required: true + default: 'Y' + jobs: - publish: - name: build, pack & publish + nuget-publish: runs-on: ubuntu-latest + steps: - - uses: actions/checkout@v2 - - # - name: Setup dotnet - # uses: actions/setup-dotnet@v1 - # with: - # dotnet-version: 3.1.200 - - # Publish - - name: publish on version change - id: publish_nuget - uses: rohith/publish-nuget@v2 + - name: Checkout + uses: actions/checkout@v2 + - name: Setup .NET Core + uses: actions/setup-dotnet@v1 with: - # Filepath of the project to be packaged, relative to root of repository - PROJECT_FILE_PATH: src/saison/Saison.csproj - - # NuGet package id, used for version detection & defaults to project name - PACKAGE_NAME: Saison - - # Filepath with version info, relative to root of repository & defaults to PROJECT_FILE_PATH - VERSION_FILE_PATH: src/saison/Saison.csproj - - # Regex pattern to extract version info in a capturing group - VERSION_REGEX: ^\s*(.*)<\/PackageVersion>\s*$ - - # Useful with external providers like Nerdbank.GitVersioning, ignores VERSION_FILE_PATH & VERSION_REGEX - # VERSION_STATIC: 1.0.0 - - # Flag to toggle git tagging, enabled by default - # TAG_COMMIT: true - - # Format of the git tag, [*] gets replaced with actual version - # TAG_FORMAT: v* - - # API key to authenticate with NuGet server - NUGET_KEY: ${{secrets.NUGET_API_KEY}} - - # NuGet server uri hosting the packages, defaults to https://api.nuget.org - # NUGET_SOURCE: https://api.nuget.org - - # Flag to toggle pushing symbols along with nuget package to the server, disabled by default - # INCLUDE_SYMBOLS: false + source-url: https://api.nuget.org/v3/index.json + dotnet-version: 6.0.x + env: + NUGET_AUTH_TOKEN: ${{secrets.NUGET_TOKEN}} + - name: Install dependencies + run: dotnet restore + + - name: Publish Saison + if: github.event.inputs.publishMain == 'Y' + run: | + mkdir __out + dotnet pack Saison -c Release -o __out --no-restore + dotnet nuget push "./__out/*.nupkg" --skip-duplicate --no-symbols true --api-key ${{secrets.NUGET_TOKEN}} + rm -rf __out \ No newline at end of file