public/maester/azuredevops/Test-AzdoOrganizationCreationClassicReleasePipeline.ps1
|
<# .SYNOPSIS Returns a boolean depending on the configuration. .DESCRIPTION Checks if classic release pipelines can be created. https://devblogs.microsoft.com/devops/disable-creation-of-classic-pipelines .EXAMPLE ``` Test-AzdoOrganizationCreationClassicReleasePipeline ``` Returns a boolean depending on the configuration. .LINK https://maester.dev/docs/commands/Test-AzdoOrganizationCreationClassicReleasePipeline #> function Test-AzdoOrganizationCreationClassicReleasePipeline { [CmdletBinding()] [OutputType([bool])] param() if ($null -eq (Get-ADOPSConnection)['Organization']) { Write-Verbose 'Not connected to Azure DevOps' Add-MtTestResultDetail -SkippedBecause Custom -SkippedCustomReason 'Not connected to Azure DevOps' return $null } $settings = Get-ADOPSOrganizationPipelineSettings if ($settings -eq 'AccessDeniedException') { Add-MtTestResultDetail -SkippedBecause Custom -SkippedCustomReason 'Insufficient permissions to access the pipeline settings API. Please ensure you have the necessary permissions to access this information.' return $null } $result = $settings.disableClassicReleasePipelineCreation if (-not $result) { $resultMarkdown = "Classic release pipelines, task groups, and deployment groups can be created / imported." } else { $resultMarkdown = "No classic release pipelines, task groups, and deployment groups can be created / imported. Existing ones will continue to work." } Add-MtTestResultDetail -Result $resultMarkdown return -not $result } |