File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -23,18 +23,33 @@ General notes
2323function Get-GithubToken {
2424 [CmdletBinding ()]
2525 param (
26- [Parameter (Mandatory )]
26+ [Parameter (Mandatory , ParameterSetName = " Data" )]
27+ [string ]
28+ $KeyData ,
29+ [Parameter (Mandatory , ParameterSetName = " Path" )]
2730 [string ]
2831 $KeyPath ,
29- [Parameter (Mandatory )]
32+ [Parameter (Mandatory , ParameterSetName = " Data" )]
33+ [Parameter (Mandatory , ParameterSetName = " Path" )]
3034 [int ]
3135 $AppId ,
32- [Parameter (Mandatory )]
36+ [Parameter (Mandatory , ParameterSetName = " Data" )]
37+ [Parameter (Mandatory , ParameterSetName = " Path" )]
3338 [int ]
3439 $InstallationId
3540 )
3641
37- $jwt = Get-JWTToken - AppId $AppId - KeyPath $KeyPath
42+ switch ($PSCmdlet.ParameterSetName ) {
43+ " Data" {
44+ $jwt = Get-JWTToken - AppId $AppId - KeyData $KeyData
45+ }
46+ " Path" {
47+ $jwt = Get-JWTToken - AppId $AppId - KeyPath $KeyPath
48+ }
49+ default {
50+ throw [System.NotImplementedException ]::new($PSCmdlet.ParameterSetName )
51+ }
52+ }
3853
3954 $headers = @ {
4055 Authorization = " Bearer $jwt "
Original file line number Diff line number Diff line change 11function Get-JWTToken {
22 param (
3- [Parameter (Mandatory )]
3+ [Parameter (Mandatory , ParameterSetName = " Data" )]
4+ [string ]
5+ $KeyData ,
6+ [Parameter (Mandatory , ParameterSetName = " Path" )]
47 [string ]
58 $KeyPath ,
6- [Parameter (Mandatory )]
9+ [Parameter (Mandatory , ParameterSetName = " Data" )]
10+ [Parameter (Mandatory , ParameterSetName = " Path" )]
711 [int ]
812 $AppId ,
913 [ValidateScript ({ $_ -gt 30 })]
@@ -33,7 +37,9 @@ function Get-JWTToken {
3337 # D) Create Signature
3438
3539 # # 1.) Load PEM
36- $keyData = Get-Content - Path $KeyPath - Raw
40+ if ($PSCmdlet.ParameterSetName -eq " Path" ){
41+ $KeyData = Get-Content - Path $KeyPath - Raw
42+ }
3743 $reader = [System.IO.StringReader ]::new($keyData )
3844 try {
3945 $pemReader = New-Object Org.BouncyCastle.OpenSsl.PemReader $reader
You can’t perform that action at this time.
0 commit comments