Skip to content

release/4.1.0 - Build fix #55

release/4.1.0 - Build fix

release/4.1.0 - Build fix #55

Workflow file for this run

name: Create NuGet and GitHub Release
on:
pull_request: {}
push:
branches: ["master"]
workflow_dispatch:
permissions:
contents: write
id-token: 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`, `release-create`, and `tag-exists` actions from this repo's .github/actions folder once the repo is public.
jobs:
build:
name: Build
runs-on: windows-latest
environment: 'release'
# if: github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && startsWith(github.event.pull_request.head.ref, 'release/'))
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Java
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '11'
- name: Install .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0.404'
- name: Install .NET Android and iOS workload
run: dotnet workload install android ios maui --version 8.0.404
- name: Setup NuGet
uses: nuget/setup-nuget@v1
- name: Restore NuGet
run: nuget restore Auth0.OidcClient.All.sln
- name: Setup MSBuild
uses: microsoft/[email protected]
- name: Build
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
compression-level: 9
rl-scanner-android:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.Android.nuspec"
artifact-name: "Auth0.OidcClient.Android.tgz"
project-path: "src/Auth0.OidcClient.Android"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-androidx:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.AndroidX.nuspec"
artifact-name: "Auth0.OidcClient.AndroidX.tgz"
project-path: "src/Auth0.OidcClient.AndroidX"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-iOS:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.iOS.nuspec"
artifact-name: "Auth0.OidcClient.iOS.tgz"
project-path: "src/Auth0.OidcClient.iOS"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-core:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.Core.nuspec"
artifact-name: "Auth0.OidcClient.Core.tgz"
project-path: "src/Auth0.OidcClient.Core"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-wpf:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.WPF.nuspec"
artifact-name: "Auth0.OidcClient.WPF.tgz"
project-path: "src/Auth0.OidcClient.WPF"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-winforms:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.WinForms.nuspec"
artifact-name: "Auth0.OidcClient.WinForms.tgz"
project-path: "src/Auth0.OidcClient.WinForms"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-uwp:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.UWP.nuspec"
artifact-name: "Auth0.OidcClient.UWP.tgz"
project-path: "src/Auth0.OidcClient.UWP"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
rl-scanner-maui:
needs: build
uses: ./.github/workflows/rl-secure.yml
with:
nuspec-file: "nuget/Auth0.OidcClient.MAUI.nuspec"
artifact-name: "Auth0.OidcClient.MAUI.tgz"
project-path: "src/Auth0.OidcClient.MAUI"
secrets:
RLSECURE_LICENSE: ${{ secrets.RLSECURE_LICENSE }}
RLSECURE_SITE_KEY: ${{ secrets.RLSECURE_SITE_KEY }}
SIGNAL_HANDLER_TOKEN: ${{ secrets.SIGNAL_HANDLER_TOKEN }}
PRODSEC_TOOLS_USER: ${{ secrets.PRODSEC_TOOLS_USER }}
PRODSEC_TOOLS_TOKEN: ${{ secrets.PRODSEC_TOOLS_TOKEN }}
PRODSEC_TOOLS_ARN: ${{ secrets.PRODSEC_TOOLS_ARN }}
# android:
# name: Android
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'android-'
# project-path: "src/Auth0.OidcClient.Android"
# nuspec-file: "nuget/Auth0.OidcClient.Android.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# androidx:
# name: AndroidX
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'androidx-'
# project-path: "src/Auth0.OidcClient.AndroidX"
# nuspec-file: "nuget/Auth0.OidcClient.AndroidX.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# ios:
# name: iOS
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'ios-'
# project-path: "src/Auth0.OidcClient.iOS"
# nuspec-file: "nuget/Auth0.OidcClient.iOS.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# core:
# name: Core
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'core-'
# project-path: "src/Auth0.OidcClient.Core"
# nuspec-file: "nuget/Auth0.OidcClient.Core.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# wpf:
# name: WPF
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'wpf-'
# project-path: "src/Auth0.OidcClient.WPF"
# nuspec-file: "nuget/Auth0.OidcClient.WPF.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# winforms:
# name: WinForms
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'winforms-'
# project-path: "src/Auth0.OidcClient.WinForms"
# nuspec-file: "nuget/Auth0.OidcClient.WinForms.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# uwp:
# name: UWP
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'uwp-'
# project-path: "src/Auth0.OidcClient.UWP"
# nuspec-file: "nuget/Auth0.OidcClient.UWP.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# maui:
# name: MAUI
# uses: ./.github/workflows/nuget-release.yml
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# with:
# tag-prefix: 'maui-'
# project-path: "src/Auth0.OidcClient.MAUI"
# nuspec-file: "nuget/Auth0.OidcClient.MAUI.nuspec"
# secrets:
# nuget-token: ${{ secrets.NUGET_API_KEY }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# generate-docs:
# name: Generate API docs
# if: 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: windows-latest
# environment: release
# needs: [rl-scanner-android,rl-scanner-androidx,rl-scanner-iOS,rl-scanner-core,rl-scanner-wpf,rl-scanner-winforms,rl-scanner-uwp,rl-scanner-maui]
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# with:
# fetch-depth: 0
# - uses: actions/download-artifact@v4
# with:
# path: './src'
# name: build
# - name: Install DocFX
# run: dotnet tool install -g docfx
# - name: Build docs
# run: ./tools/build-docs.sh
# shell: bash
# - uses: actions/upload-pages-artifact@v2
# with:
# path: docs
# deploy-docs:
# needs: generate-docs
# name: Deploy API docs
# if: github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/'))
# permissions:
# pages: write # to deploy to Pages
# id-token: write # to verify the deployment originates from an appropriate source
# environment:
# name: github-pages
# url: ${{ steps.deployment.outputs.page_url }}
# runs-on: ubuntu-latest
# steps:
# - name: Deploy to GitHub Pages
# id: deployment
# uses: actions/deploy-pages@v3 # or specific "vX.X.X" version tag for this action