Skip to content

Switch to public GitHub Action Runners #38

Switch to public GitHub Action Runners

Switch to public GitHub Action Runners #38

Workflow file for this run

name: Publish Release
on:
release:
types:
- "published"
push:
paths:
- ".github/workflows/release.yml"
- "Directory.Build.props"
- "*.sln"
- "*.csproj"
env:
DOTNET_NOLOGO: 1
DOTNET_CLI_TELEMETRY_OPTOUT: 1
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT: 1
jobs:
publish_release:
name: Publish Release
runs-on: ubuntu-latest
if: "!contains(format('{0} {1}', github.event.head_commit.message, github.event.pull_request.title), '[ci-skip]') && contains(github.event.release.target_commitish, 'master') && github.event_name == 'release'"
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: |
8
7
- name: Publish NuGet packages
run: |
mkdir build
dotnet pack -c Release -o build /p:Version=${{ github.event.release.tag_name }}
dotnet nuget push "build/*" --skip-duplicate -k ${{ secrets.NUGET_ORG_API_KEY }} -s https://api.nuget.org/v3/index.json
dotnet tool update -g docfx --prerelease
docfx docs/docfx.json
- name: Upload NuGet packages to GitHub Actions
uses: actions/upload-artifact@v3
with:
name: HyperSharp Release ${{ github.event.release.name }} NuGet Packages.zip
path: build/*
- name: Upload NuGet Packages To GitHub Release
uses: "ncipollo/release-action@v1"
with:
allowUpdates: true
artifactErrorsFailBuild: true
artifacts: "build/*"
token: ${{ secrets.GITHUB_TOKEN }}
omitNameDuringUpdate: true # We don't want to update the name of the release.
omitBodyDuringUpdate: true # We don't want to update the body of the release.
document_commit:
name: Document Commit
runs-on: ubuntu-latest
needs: publish_release
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Upload GitHub Pages artifact
uses: actions/upload-pages-artifact@v1
with:
path: ./docs/_site/
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v1
test_release:
name: Test Release
runs-on: "self-hosted"
if: "!contains(github.event.head_commit.message, '[ci-skip]') && github.ref_name == 'master' && github.event_name == 'push'"
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: |
8
7
- name: Publish NuGet packages
run: |
mkdir build
dotnet build -c Release
dotnet pack -c Release -o build
dotnet tool update -g docfx --prerelease
docfx docs/docfx.json
- name: Upload NuGet packages to GitHub Actions
uses: actions/upload-artifact@v3
with:
name: HyperSharp Release ${{ github.event.release.name }} NuGet Packages.zip
path: build/*