From 693f43af45c2cf4dcf5ce2ef975523be654896b7 Mon Sep 17 00:00:00 2001 From: John Duprey Date: Wed, 12 Feb 2025 13:08:36 -0500 Subject: [PATCH] add scopes to extension test --- .../CIPP/Extensions/Invoke-ExecExtensionTest.ps1 | 8 ++++++-- .../Public/GitHub/Invoke-GitHubApiRequest.ps1 | 5 +++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Modules/CIPPCore/Public/Entrypoints/HTTP Functions/CIPP/Extensions/Invoke-ExecExtensionTest.ps1 b/Modules/CIPPCore/Public/Entrypoints/HTTP Functions/CIPP/Extensions/Invoke-ExecExtensionTest.ps1 index cd71c2024660..a0c36e11d199 100644 --- a/Modules/CIPPCore/Public/Entrypoints/HTTP Functions/CIPP/Extensions/Invoke-ExecExtensionTest.ps1 +++ b/Modules/CIPPCore/Public/Entrypoints/HTTP Functions/CIPP/Extensions/Invoke-ExecExtensionTest.ps1 @@ -83,9 +83,13 @@ Function Invoke-ExecExtensionTest { $Results = [pscustomobject]@{'Results' = 'Successfully Connected to HIBP' } } 'GitHub' { - $GitHubResponse = Invoke-GitHubApiRequest -Method 'GET' -Path 'user' + $GitHubResponse = Invoke-GitHubApiRequest -Method 'GET' -Path 'user' -ReturnHeaders if ($GitHubResponse.login) { - $Results = [pscustomobject]@{ 'Results' = "Successfully connected to GitHub user: $($GitHubResponse.login)" } + if ($GitHubResponse.Headers.'x-oauth-scopes') { + $Results = [pscustomobject]@{ 'Results' = "Successfully connected to GitHub user: $($GitHubResponse.login) with scopes: $($GitHubResponse.Headers.'x-oauth-scopes')" } + } else { + $Results = [pscustomobject]@{ 'Results' = "Successfully connected to GitHub user: $($GitHubResponse.login) using a Fine Grained PAT" } + } } else { $Results = [pscustomobject]@{ 'Results' = 'Failed to connect to GitHub. Check your API credentials and try again.' } } diff --git a/Modules/CippExtensions/Public/GitHub/Invoke-GitHubApiRequest.ps1 b/Modules/CippExtensions/Public/GitHub/Invoke-GitHubApiRequest.ps1 index 4cb649260d26..28c114d3d968 100644 --- a/Modules/CippExtensions/Public/GitHub/Invoke-GitHubApiRequest.ps1 +++ b/Modules/CippExtensions/Public/GitHub/Invoke-GitHubApiRequest.ps1 @@ -43,9 +43,10 @@ function Invoke-GitHubApiRequest { try { $Response = Invoke-RestMethod @RestMethod if ($ReturnHeaders.IsPresent) { - $ResponseHeaders + $Response | Add-Member -MemberType NoteProperty -Name Headers -Value $ResponseHeaders + return $Response } else { - $Response + return $Response } } catch { throw $_.Exception.Message