name: publish-beta

on:
  push:
    branches: [ master,dev ]
    paths:
        - 'Stardust/**'
        - 'Stardust.Extensions/**'
  workflow_dispatch:

jobs:
  build-publish:
    runs-on: windows-latest

    steps:
    - uses: actions/checkout@v4
    - name: Setup dotNET
      uses: actions/setup-dotnet@v4
      with:
        dotnet-version: |
          6.x
          7.x
          8.x
          9.x
    - name: Get Version
      run: echo "VERSION=$(date '+%Y.%m%d-beta%H%M')" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
    - name: Build
      run: |
        dotnet build -c Release --version-suffix ${{ env.VERSION }}
    - name: Pack
      run: |
        dotnet pack --no-build --version-suffix ${{ env.VERSION }} -o out Stardust\Stardust.csproj
        dotnet pack --no-build --version-suffix ${{ env.VERSION }} -o out Stardust.Extensions\Stardust.Extensions.csproj

    - name: Publish
      run: |
        dotnet nuget push .\out\*.nupkg --skip-duplicate --source https://nuget.pkg.github.com/NewLifeX/index.json --api-key ${{ github.token }}
        dotnet nuget push .\out\*.nupkg --skip-duplicate --source https://api.nuget.org/v3/index.json --api-key ${{ secrets.nugetKey }}
