Ado/Steps/PublishPowerShellGallery.ps1
$orgName, $moduleName = $env:BUILD_REPOSITORY_ID -split "/" $imported = Import-Module ".\$moduleName.psd1" -Force -PassThru $foundModule = try { Find-Module -Name $ModuleName -ErrorAction SilentlyContinue } catch {} if ($foundModule -and $foundModule.Version -ge $imported.Version) { Write-Warning "##vso[task.logissue type=warning]Gallery Version of $moduleName is more recent ($($foundModule.Version) >= $($imported.Version))" } else { $gk = '$(GalleryKey)' $stagingDir = '$(Build.ArtifactStagingDirectory)' $moduleTempPath = Join-Path $stagingDir $moduleName Write-Host "Staging Directory: $ModuleTempPath" $imported | Split-Path | Copy-Item -Destination $moduleTempPath -Recurse $moduleGitPath = Join-Path $moduleTempPath '.git' Write-Host "Removing .git directory" Remove-Item -Recurse -Force $moduleGitPath Write-Host "Module Files:" Get-ChildItem $moduleTempPath -Recurse Write-Host "Publishing $moduleName [$($imported.Version)] to Gallery" Publish-Module -Path $moduleTempPath -NuGetApiKey $gk if ($?) { Write-Host "Published to Gallery" } else { Write-Host "Gallery Publish Failed" exit 1 } } |