Skip to content

Commit 6db9a81

Browse files
committed
Updated license Cmdlets
1 parent 4f813e0 commit 6db9a81

1 file changed

Lines changed: 47 additions & 7 deletions

File tree

src/StorageGRID-Webscale.psm1

Lines changed: 47 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12257,24 +12257,42 @@ function Global:Get-SgwIlmRules {
1225712257

1225812258
## license ##
1225912259

12260-
# complete as of API 2.1
12260+
# complete as of API 2.2
1226112261

1226212262
<#
1226312263
.SYNOPSIS
1226412264
Retrieves the grid license
1226512265
.DESCRIPTION
1226612266
Retrieves the grid license
12267+
.PARAMETER Server
12268+
StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.
12269+
.PARAMETER ProfileName
12270+
StorageGRID Profile to use for connection.
1226712271
#>
1226812272
function Global:Get-SgwLicense {
1226912273
[CmdletBinding()]
1227012274

1227112275
PARAM (
1227212276
[parameter(Mandatory = $False,
1227312277
Position = 0,
12274-
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server
12278+
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server,
12279+
[parameter(Mandatory = $False,
12280+
Position = 1,
12281+
HelpMessage = "StorageGRID Profile to use for connection.")][Alias("Profile")][String]$ProfileName
1227512282
)
1227612283

1227712284
Begin {
12285+
if (!$ProfileName -and !$Server -and !$CurrentSgwServer.Name) {
12286+
$ProfileName = "default"
12287+
}
12288+
if ($ProfileName) {
12289+
$Profile = Get-SgwProfile -ProfileName $ProfileName
12290+
if (!$Profile.Name) {
12291+
Throw "Profile $ProfileName not found. Create a profile using New-SgwProfile or connect to a StorageGRID Server using Connect-SgwServer"
12292+
}
12293+
$Server = Connect-SgwServer -Name $Profile.Name -Credential $Profile.Credential -AccountId $Profile.AccountId -SkipCertificateCheck:$Profile.SkipCertificateCheck -DisableAutomaticAccessKeyGeneration:$Profile.disalble_automatic_access_key_generation -TemporaryAccessKeyExpirationTime $Profile.temporary_access_key_expiration_time -S3EndpointUrl $Profile.S3EndpointUrl -SwiftEndpointUrl $Profile.SwiftEndpointUrl -Transient
12294+
}
12295+
1227812296
if (!$Server) {
1227912297
$Server = $Global:CurrentSgwServer
1228012298
}
@@ -12307,25 +12325,47 @@ function Global:Get-SgwLicense {
1230712325
Update the license
1230812326
.DESCRIPTION
1230912327
Update the license
12328+
.PARAMETER Server
12329+
StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.
12330+
.PARAMETER ProfileName
12331+
StorageGRID Profile to use for connection.
12332+
.PARAMETER License
12333+
StorageGRID Webscale license.
12334+
.PARAMETER Passphrase
12335+
StorageGRID Webscale Passphrase.
1231012336
#>
1231112337
function Global:Update-SgwLicense {
1231212338
[CmdletBinding()]
1231312339

1231412340
PARAM (
1231512341
[parameter(Mandatory = $False,
1231612342
Position = 0,
12317-
HelpMessage = "StorageGRID Webscale license.",
12318-
ValueFromPipeline = $True,
12319-
ValueFromPipelineByPropertyName = $True)][String]$License,
12343+
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server,
1232012344
[parameter(Mandatory = $False,
1232112345
Position = 1,
12322-
HelpMessage = "StorageGRID Webscale Passphrase.")][String]$Passphrase,
12346+
HelpMessage = "StorageGRID Profile to use for connection.")][Alias("Profile")][String]$ProfileName,
1232312347
[parameter(Mandatory = $False,
1232412348
Position = 2,
12325-
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server
12349+
HelpMessage = "StorageGRID Webscale license.",
12350+
ValueFromPipeline = $True,
12351+
ValueFromPipelineByPropertyName = $True)][String]$License,
12352+
[parameter(Mandatory = $False,
12353+
Position = 3,
12354+
HelpMessage = "StorageGRID Webscale Passphrase.")][String]$Passphrase
1232612355
)
1232712356

1232812357
Begin {
12358+
if (!$ProfileName -and !$Server -and !$CurrentSgwServer.Name) {
12359+
$ProfileName = "default"
12360+
}
12361+
if ($ProfileName) {
12362+
$Profile = Get-SgwProfile -ProfileName $ProfileName
12363+
if (!$Profile.Name) {
12364+
Throw "Profile $ProfileName not found. Create a profile using New-SgwProfile or connect to a StorageGRID Server using Connect-SgwServer"
12365+
}
12366+
$Server = Connect-SgwServer -Name $Profile.Name -Credential $Profile.Credential -AccountId $Profile.AccountId -SkipCertificateCheck:$Profile.SkipCertificateCheck -DisableAutomaticAccessKeyGeneration:$Profile.disalble_automatic_access_key_generation -TemporaryAccessKeyExpirationTime $Profile.temporary_access_key_expiration_time -S3EndpointUrl $Profile.S3EndpointUrl -SwiftEndpointUrl $Profile.SwiftEndpointUrl -Transient
12367+
}
12368+
1232912369
if (!$Server) {
1233012370
$Server = $Global:CurrentSgwServer
1233112371
}

0 commit comments

Comments
 (0)