Forum Discussion
donfouts_363600
Apr 24, 2019Nimbostratus
this is the corrected code = after following the answer below,
but i wanted to post this for any other Powershell users out there...
virtual server creation
$snap = @{}
$snap.Add('type','automap')
$snapp = $snap | convertto-json
$profile = @{}
$profile.add('kind','ltm:virtual:profile')
$profile.add('name','http')
$profile.add('partition','Common')
check to see if vs is already created
$uri = "https://$f5ip/mgmt/tm/ltm/virtual/$vs"
reset err value
$err = $false
try{$resp=Invoke-WebRequest -Method Get -Uri $uri -insecure -Headers $headers -Credential $credentials}catch{$err = $_.Exception}
if($err.Response.statuscode -match 'NotFound')
{
write-error 'returned a 4xx, virtual server must not exist'
create https vs
$URI = "https://$f5ip/mgmt/tm/ltm/virtual"
$rules = @("_sys_https_redirect")
$body = @{"name"="$vs";
"partition"="Common";
"rateLimit"="disabled";
"ipProtocol"="tcp";
"source"="0.0.0.0/0";
"destination"="${stgvip}:443";
"mask"="255.255.255.255";
"description"="autocreated $vs";
"pool"=$PoolName;
"profiles"= @($profile);
"sourceAddressTranslation"=$snap}
$JSONBody = $body | ConvertTo-Json
$newvirtualserver = invoke-webrequest -Method POST -URI "$URI" -Insecure -Body $JSONBody -Headers $headers -Credential $credentials
}else{
write-error 'server already exists'
}