Skip to content

v2.0.2

v2.0.2 #99

Workflow file for this run

name: "Publish PowerShell Module"
on:
release:
types: [published]
workflow_dispatch:
workflow_call:
concurrency:
group: publish-${{ github.repository }}
cancel-in-progress: false
jobs:
publish_powershell_sdk:
name: Publish PowerShell SDK
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Run Build Scripts
shell: pwsh
run: |
$DebugPreference = "Continue"
# Build per-partition modules (dynamically discovered)
Get-ChildItem -Path './PSSailpoint' -Directory |
Where-Object { $_.Name -notin @('nerm', 'nermV2025') -and (Test-Path (Join-Path $_.FullName 'src')) } |
ForEach-Object {
$buildScript = Join-Path $_.FullName 'Build.ps1'
if (Test-Path $buildScript) { & $buildScript }
}
# Build NERM modules
./PSSailpoint/nerm/Build.ps1
./PSSailpoint/nermV2025/Build.ps1
# Build root barrel module manifest
./PSSailpoint/Build.ps1
- name: Publish Module
shell: pwsh
run: |
$DebugPreference = "Continue"
# Publish all per-partition modules (dynamically discovered)
Get-ChildItem -Path './PSSailpoint' -Directory |
Where-Object { $_.Name -notin @('nerm', 'nermV2025') -and (Test-Path (Join-Path $_.FullName 'src')) } |
ForEach-Object {
$srcDir = Get-ChildItem -Path (Join-Path $_.FullName 'src') -Directory | Select-Object -First 1
if ($srcDir) {
Publish-Module `
-Path $srcDir.FullName `
-NuGetApiKey ${{ secrets.PS_GALLERY_TOKEN }} `
-Verbose -Force
}
}
# Publish NERM modules
Publish-Module `
-Path './PSSailpoint/nerm/src/PSSailpoint.NERM' `
-NuGetApiKey ${{ secrets.PS_GALLERY_TOKEN }} `
-Verbose -Force
Publish-Module `
-Path './PSSailpoint/nermV2025/src/PSSailpoint.NERMV2025' `
-NuGetApiKey ${{ secrets.PS_GALLERY_TOKEN }} `
-Verbose -Force
Start-Sleep -Seconds 60
# Publish root barrel module
Publish-Module `
-Path './PSSailpoint' `
-NuGetApiKey ${{ secrets.PS_GALLERY_TOKEN }} `
-Verbose -Force