CASL Preview Release (Dry Run) #29
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 🚀Release | |
run-name: ${{ vars.PROJECT_NAME }} ${{ inputs.release-type }} Release ${{ inputs.dry-run == true && '(Dry Run)' || '' }} | |
defaults: | |
run: | |
shell: pwsh | |
on: | |
workflow_dispatch: | |
inputs: | |
release-type: | |
description: The type of release. Choose 'Preview' or 'Production'. | |
required: true | |
type: choice | |
options: [Preview, Production] | |
dry-run: | |
description: Dry Run - Check to run the workflow without creating a release. | |
required: false | |
default: false | |
type: boolean | |
jobs: | |
determine_release_notes_path: | |
name: Determine Release Notes Dir Path | |
runs-on: ubuntu-latest | |
outputs: | |
release-notes-dir-path: ${{ steps.get-dir-path.outputs.release-notes-dir-path }} | |
steps: | |
- name: Get Dir Path | |
id: get-dir-path | |
run: | | |
$dirPath = "${{ inputs.release-type }}" -eq "Production" ? "${{ vars.PROD_RELATIVE_RELEASE_NOTES_DIR_PATH }}" : "${{ vars.PREV_RELATIVE_RELEASE_NOTES_DIR_PATH }}"; | |
"release-notes-dir-path=$dirPath" >> $env:GITHUB_OUTPUT; | |
run_release: | |
name: Performing ${{ inputs.release-type }} Release of ${{ vars.PROJECT_NAME }} (${{ inputs.release-type == 'Production' && 'Release' || 'Debug' }}) | |
needs: determine_release_notes_path | |
uses: KinsonDigital/Infrastructure/.github/workflows/dotnet-lib-release.yml@v13.6.3 | |
with: | |
project-name: "${{ vars.PROJECT_NAME}}" | |
release-type: "${{ inputs.release-type }}" | |
run-branch: "${{ github.ref_name }}" | |
net-sdk-version: "${{ vars.NET_SDK_VERSION }}" | |
relative-release-notes-dir-path: "${{ needs.determine_release_notes_path.outputs.release-notes-dir-path }}" | |
release-notes-file-name-prefix: "${{ vars.RELEASE_NOTES_FILE_NAME_PREFIX }}" | |
build-config: ${{ inputs.release-type == 'Production' && 'Release' || 'Debug' }} | |
pr-include-notes-label: "${{ vars.PR_INCLUDE_NOTES_LABEL }}" | |
send-release-tweet: ${{ vars.TWITTER_BROADCAST_ENABLED == 'true' }} | |
dry-run: ${{ inputs.dry-run }} | |
transpile-readme: true | |
secrets: | |
cicd-pat: "${{ secrets.CICD_TOKEN }}" | |
nuget-org-api-key: "${{ secrets.NUGET_ORG_API_KEY }}" | |
twitter-consumer-api-key: "${{ secrets.TWITTER_CONSUMER_API_KEY }}" | |
twitter-consumer-api-secret: "${{ secrets.TWITTER_CONSUMER_API_SECRET }}" | |
twitter-access-token: "${{ secrets.TWITTER_ACCESS_TOKEN }}" | |
twitter-access-token-secret: "${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}" |