Skip to content

Workflow file for this run

name: Create NuGet and GitHub Release
on:
pull_request:
types:
- closed
workflow_dispatch:
push:
branches: ["feat/automated-release"]
permissions:
contents: write
### TODO: Replace instances of './.github/workflows/' w/ `auth0/dx-sdk-actions/workflows` and append `@latest` after the common `dx-sdk-actions` repo is made public.
### TODO: Also remove `get-prerelease`, `get-release-notes`, `get-version`, `nuget-publish`, `release-create`, and `tag-exists` actions from this repo's .github/actions folder once the repo is public.
### TODO: Also remove `nuget-release` workflow from this repo's .github/workflows folder once the repo is public.
jobs:
prepare:
name: Prepare
runs-on: windows-latest
environment: 'release'
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/'))
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
ref: ${{ github.event.inputs.branch }}
- name: Install Java
if: false
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '11'
- name: Install .NET
if: false
uses: actions/setup-dotnet@v3
- name: Install .NET Android and iOS workload
if: false
run: dotnet workload install android ios
- name: Setup NuGet
if: false
uses: nuget/setup-nuget@v1
- name: Restore NuGet
if: false
run: nuget restore Auth0.OidcClient.All.sln
- name: Setup MSBuild
if: false
uses: microsoft/setup-msbuild@v1.1
- name: Build
if: false
run: msbuild Auth0.OidcClient.All.sln -t:rebuild -verbosity:diag -property:Configuration=Release
- uses: actions/upload-artifact@v4
with:
name: build
path: './src'
retention-days: 1
docs:
name: Generate API docs
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/'))
runs-on: ubuntu-latest
environment: release
needs: prepare
steps:
- uses: actions/download-artifact@v4
with:
name: build
- run: ls ./
release:
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/'))
runs-on: ubuntu-latest
environment: release
steps:
# Checkout the code
- uses: actions/checkout@v4
with:
fetch-depth: 0
- id: release_androidx
uses: ./.github/actions/nuget-release
with:
dotnet-version: 6.0.x
project-path: "src/Auth0.OidcClient.AndroidX"
tag-prefix: 'androidx-'
nuget-directory: ${{ github.workspace}}/nuget
nuget-token: ${{ secrets.NUGET_APIKEY }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- id: release_ios
uses: ./.github/actions/nuget-release
with:
dotnet-version: 6.0.x
project-path: "src/Auth0.OidcClient.iOS"
tag-prefix: 'ios-'
nuget-directory: ${{ github.workspace}}/nuget
nuget-token: ${{ secrets.NUGET_APIKEY }}
github-token: ${{ secrets.GITHUB_TOKEN }}