diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index c977a0b..7a52ee0 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -32,16 +32,16 @@ jobs: run: dotnet restore - name: Build - run: dotnet build --no-restore --configuration Release + run: dotnet build --configuration Release - name: Test - run: dotnet test --no-build --verbosity normal --configuration Release + run: dotnet test --configuration Release - name: Pack if: github.event_name == 'push' && github.ref == 'refs/heads/main' - run: dotnet pack --no-build --configuration Release --output ./nupkg + run: dotnet pack --configuration Release --output ./nupkg - - name: Upload NuGet Package + - name: Upload artifacts if: github.event_name == 'push' && github.ref == 'refs/heads/main' uses: actions/upload-artifact@v4 with: diff --git a/.github/workflows/nuget.yml b/.github/workflows/nuget.yml new file mode 100644 index 0000000..1bcb397 --- /dev/null +++ b/.github/workflows/nuget.yml @@ -0,0 +1,51 @@ +name: NuGet + +on: + push: + tags: + - "v*" + workflow_dispatch: + +jobs: + publish: + runs-on: ubuntu-latest + permissions: + packages: write + contents: read + + steps: + - uses: actions/checkout@v4 + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '8.0.x' + + - name: Restore dependencies + run: dotnet restore + + - name: Build + run: dotnet build --configuration Release --no-restore + + - name: Test + run: dotnet test --configuration Release --no-build + + - name: Pack + run: dotnet pack --configuration Release --no-build --output ./nupkg + + - name: Push to GitHub Packages + run: | + dotnet nuget push "./nupkg/*.nupkg" \ + --source https://nuget.pkg.github.com/${{ github.repository_owner }}/index.json \ + --api-key ${{ secrets.GITHUB_TOKEN }} \ + --skip-duplicate + env: + NUGET_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Push to NuGet.org + if: startsWith(github.ref, 'refs/tags/v') + run: | + dotnet nuget push "./nupkg/*.nupkg" \ + --source https://api.nuget.org/v3/index.json \ + --api-key ${{ secrets.NUGET_API_KEY }} \ + --skip-duplicate \ No newline at end of file diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index 559fc8b..058dddb 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -15,25 +15,23 @@ concurrency: cancel-in-progress: false jobs: - build: + deploy: runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} steps: - name: Checkout uses: actions/checkout@v4 + - name: Setup Pages uses: actions/configure-pages@v4 + - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: - path: ./docs + path: docs - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v4 \ No newline at end of file + uses: actions/deploy-pages@v4 diff --git a/docs/Gemfile b/docs/Gemfile deleted file mode 100644 index c0d71ff..0000000 --- a/docs/Gemfile +++ /dev/null @@ -1,16 +0,0 @@ -source "https://rubygems.org" - -gem "jekyll", "~> 4.3.0" -gem "webrick", "~> 1.8" - -group :jekyll_plugins do - gem "jekyll-seo-tag" - gem "jekyll-sitemap" -end - -# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem -# and associated library. -platforms :mingw, :x64_mingw, :mswin, :jruby do - gem "tzinfo", ">= 1.2.10" - gem "tzinfo-data" -end \ No newline at end of file diff --git a/docs/_config.yml b/docs/_config.yml deleted file mode 100644 index 98da70d..0000000 --- a/docs/_config.yml +++ /dev/null @@ -1,36 +0,0 @@ -theme: jekyll-theme-cayman - -title: ProxyR -description: A powerful .NET middleware that automatically exposes SQL Server table-valued functions, inline table-valued functions, and views as REST API endpoints. -baseurl: "/ProxyR" -url: "https://abbasmhd.github.io" - -# Build settings -markdown: kramdown -highlighter: rouge - -# Exclude files from processing -exclude: - - Gemfile - - Gemfile.lock - - node_modules - - vendor - - .git - - .github - - README.md - -# Plugins -plugins: - - jekyll-seo-tag - - jekyll-sitemap - -# Theme settings -show_downloads: true -google_analytics: # Add your Google Analytics tracking ID here - -# Custom variables -version: 1.0.0 -github: - repository_url: https://github.com/abbasmhd/ProxyR - owner_url: https://github.com/abbasmhd - owner_name: abbasmhd \ No newline at end of file diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html index ab9b99c..ee88a2b 100644 --- a/docs/_layouts/default.html +++ b/docs/_layouts/default.html @@ -6,6 +6,7 @@ {% if page.title %}{{ page.title }} - {% endif %}ProxyR Documentation + @@ -13,7 +14,10 @@