name: CI on: ["workflow_dispatch", "push", "pull_request"] jobs: build: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 with: submodules: true - uses: actions/cache@v4 with: path: | ~/.nuget/packages ~/.cache/bepinex key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} restore-keys: | ${{ runner.os }}-nuget- - name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: 8.0.x - name: Run the Cake script uses: cake-build/cake-action@v2 with: verbosity: Diagnostic - uses: actions/upload-artifact@v4 with: name: MiraAPI.dll path: MiraAPI/bin/Release/net6.0/MiraAPI.dll - uses: actions/upload-artifact@v4 with: name: AllOfUs.MiraAPI.nupkg path: MiraAPI/bin/Release/AllOfUs.MiraAPI.*.nupkg - uses: softprops/action-gh-release@v2 if: github.ref_type == 'tag' with: draft: true files: MiraAPI/bin/Release/net6.0/MiraAPI.dll - name: Push NuGet package if: github.ref_type == 'tag' run: | dotnet nuget push MiraAPI/bin/Release/AllOfUs.MiraAPI.*.nupkg --source https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_API_KEY }}