Skip to content

Commit 67c6638

Browse files
committed
Updated region Cmdlets
1 parent aae8402 commit 67c6638

1 file changed

Lines changed: 54 additions & 8 deletions

File tree

src/StorageGRID-Webscale.psm1

Lines changed: 54 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13220,6 +13220,10 @@ function Global:Start-SgwRecovery {
1322013220
StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.
1322113221
.PARAMETER ProfileName
1322213222
StorageGRID Profile to use for connection.
13223+
.PARAMETER Passphrase
13224+
StorageGRID Webscale Provisioning Passphrase.
13225+
.PARAMETER Path
13226+
Path to store recovery package
1322313227
#>
1322413228
function Global:Get-SgwRecoveryPackage {
1322513229
[CmdletBinding()]
@@ -13233,10 +13237,10 @@ function Global:Get-SgwRecoveryPackage {
1323313237
HelpMessage = "StorageGRID Profile to use for connection.")][Alias("Profile")][String]$ProfileName,
1323413238
[parameter(Mandatory = $True,
1323513239
Position = 2,
13236-
HelpMessage = "StorageGRID Webscale Passphrase.")][String]$Passphrase,
13240+
HelpMessage = "StorageGRID Webscale Provisioning Passphrase.")][String]$Passphrase,
1323713241
[parameter(Mandatory = $True,
1323813242
Position = 3,
13239-
HelpMessage = "Path to store log collection in")][System.IO.DirectoryInfo]$Path
13243+
HelpMessage = "Path to store recovery package")][System.IO.DirectoryInfo]$Path
1324013244
)
1324113245

1324213246
Begin {
@@ -13287,35 +13291,57 @@ function Global:Get-SgwRecoveryPackage {
1328713291

1328813292
## regions ##
1328913293

13294+
# complete as of API 2.2
13295+
1329013296
<#
1329113297
.SYNOPSIS
1329213298
Lists configured regions
1329313299
.DESCRIPTION
1329413300
Lists configured regions
13301+
.PARAMETER Server
13302+
StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.
13303+
.PARAMETER ProfileName
13304+
StorageGRID Profile to use for connection.
1329513305
#>
1329613306
function Global:Get-SgwRegions {
1329713307
[CmdletBinding()]
1329813308

1329913309
PARAM (
1330013310
[parameter(Mandatory = $False,
1330113311
Position = 0,
13302-
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server
13312+
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server,
13313+
[parameter(Mandatory = $False,
13314+
Position = 1,
13315+
HelpMessage = "StorageGRID Profile to use for connection.")][Alias("Profile")][String]$ProfileName
1330313316
)
1330413317

1330513318
Begin {
13319+
if (!$ProfileName -and !$Server -and !$CurrentSgwServer.Name) {
13320+
$ProfileName = "default"
13321+
}
13322+
if ($ProfileName) {
13323+
$Profile = Get-SgwProfile -ProfileName $ProfileName
13324+
if (!$Profile.Name) {
13325+
Throw "Profile $ProfileName not found. Create a profile using New-SgwProfile or connect to a StorageGRID Server using Connect-SgwServer"
13326+
}
13327+
$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
13328+
}
13329+
1330613330
if (!$Server) {
1330713331
$Server = $Global:CurrentSgwServer
1330813332
}
1330913333
if (!$Server) {
1331013334
Throw "No StorageGRID Webscale Management Server management server found. Please run Connect-SgwServer to continue."
1331113335
}
13312-
if ($Server.AccountId) {
13313-
Throw "Operation not supported when connected as tenant. Use Connect-SgwServer without the AccountId parameter to connect as grid administrator and then rerun this command."
13314-
}
1331513336
}
1331613337

1331713338
Process {
13318-
$Uri = $Server.BaseURI + "/grid/regions"
13339+
if ($Server.AccountId) {
13340+
$Uri = $Server.BaseURI + "/org/regions"
13341+
}
13342+
else {
13343+
$Uri = $Server.BaseURI + "/grid/regions"
13344+
}
1331913345
$Method = "GET"
1332013346

1332113347
try {
@@ -13335,6 +13361,12 @@ function Global:Get-SgwRegions {
1333513361
Change the regions used by the grid
1333613362
.DESCRIPTION
1333713363
Change the regions used by the grid
13364+
.PARAMETER Server
13365+
StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.
13366+
.PARAMETER ProfileName
13367+
StorageGRID Profile to use for connection.
13368+
.PARAMETER Regions
13369+
List of regions. A region can only include letters, numbers, and hyphens.
1333813370
#>
1333913371
function Global:Update-SgwRegions {
1334013372
[CmdletBinding()]
@@ -13345,10 +13377,24 @@ function Global:Update-SgwRegions {
1334513377
HelpMessage = "StorageGRID Webscale Management Server object. If not specified, global CurrentSgwServer object will be used.")][PSCustomObject]$Server,
1334613378
[parameter(Mandatory = $False,
1334713379
Position = 1,
13348-
HelpMessage = "Regions.")][String[]]$Regions
13380+
HelpMessage = "StorageGRID Profile to use for connection.")][Alias("Profile")][String]$ProfileName,
13381+
[parameter(Mandatory = $False,
13382+
Position = 2,
13383+
HelpMessage = "List of regions. A region can only include letters, numbers, and hyphens.")][String[]]$Regions
1334913384
)
1335013385

1335113386
Begin {
13387+
if (!$ProfileName -and !$Server -and !$CurrentSgwServer.Name) {
13388+
$ProfileName = "default"
13389+
}
13390+
if ($ProfileName) {
13391+
$Profile = Get-SgwProfile -ProfileName $ProfileName
13392+
if (!$Profile.Name) {
13393+
Throw "Profile $ProfileName not found. Create a profile using New-SgwProfile or connect to a StorageGRID Server using Connect-SgwServer"
13394+
}
13395+
$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
13396+
}
13397+
1335213398
if (!$Server) {
1335313399
$Server = $Global:CurrentSgwServer
1335413400
}

0 commit comments

Comments
 (0)