daily pastebin goal
54%
SHARE
TWEET

Enable UAG Application

a guest Apr 6th, 2013 91 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. $ErrorActionPreference = "Stop"
  2.  
  3. Get-PSSession | Remove-PSSession
  4.  
  5. #Пароль для учетной записи, которая подключается удаленно к UAG
  6. $SecureString = ConvertTo-SecureString -String "\`d.T.~Vb/{41BAA34C-B0E6-41D0-8F2B-CB3901AAF6A8}\`d.T.~Vb/" -AsPlainText -Force
  7. $Creds = New-Object system.Management.Automation.PSCredential("domain\os2uag_connector", $SecureString)
  8. $SessionOpt = New-PSSessionOption -OperationTimeout (30*60*1000)
  9.  
  10. #Подключаемся к UAG через PSRemoting
  11. $Session = New-PSSession -ComputerName "server-uag01" -Credential $Creds -SessionOption $SessionOpt
  12.  
  13. #Импортируем модуль с функциями
  14. Invoke-Command -Session $Session -ScriptBlock {Import-Module "c:\Scripts\UAGFunctions.ps1"}
  15. #Устанавливаем глобальные переменные $BackupDir и UAGActivator
  16. Invoke-Command -Session $Session -ScriptBlock {Set-UAGConfig -BackupDir "c:\EGFBackups" -UAGActivatorPath "c:\Scripts\UAGActivate.exe" }
  17. #Бэкапим конфиг
  18. Invoke-Command -Session $Session -ScriptBlock {Backup-UAGConfig}
  19.  
  20. $ScriptBlock = {
  21.         #Заполняем входную информацию для публикации
  22.         $VMID = "\`d.T.~Ed/{6F6D86D8-3492-4328-B606-7B983F64826F}.VM ID\`d.T.~Ed/"
  23.         $AppName = "\`d.T.~Ed/{6F6D86D8-3492-4328-B606-7B983F64826F}.VM Name\`d.T.~Ed/"
  24.         $ProjectID = [int]("\`d.T.~Ed/{6F6D86D8-3492-4328-B606-7B983F64826F}.Cloud\`d.T.~Ed/".Split("_")[0].Substring(1))
  25.         $IPAddress = "\`d.T.~Ed/{90F45712-817A-4429-A5F0-668F26467CFD}.{08BCA15A-22A5-4770-81E7-1D41E21D1CDA}\`d.T.~Ed/"
  26.        
  27.         #Смотрим опубликовано ли уже приложение по имени
  28.         $App = Get-UAGApp -AppName $AppName
  29.         if ($App){
  30.                 if ($App.VMID -ne ($VMID.ToString().ToUpper().Replace("-",""))){
  31.                         #Если приложение (ВМ) с таким именем опубликовано и VMID различаются, то скорее всего старую ВМ удалил и создали с тем же именем
  32.                         #в этом случае отключаем исходное
  33.                         Disable-UAGApp -AppName $AppName
  34.                         #включаем ярлык, заполняем атрибутами
  35.                         Enable-UAGApp -AppName $AppName -AppGUID $VMID -ProjectID $ProjectID -IpAddr $IPAddress
  36.                 }
  37.                 else{
  38.                         #обновляем информацию о приложении
  39.                         Set-UAGApp -AppName $AppName -IpAddr $IPAddress -ProjectID $ProjectID
  40.                 }
  41.         }
  42.         else{
  43.                 $App = Get-UAGApp -VMID $VMID
  44.                 if (-not $App){
  45.                         #Включаем Unused приложение
  46.                         Enable-UAGApp -AppName $AppName -AppGUID $VMID -ProjectID $ProjectID -IpAddr $IPAddress
  47.                 }
  48.                 else {
  49.                         #обновляем информацию о приложении
  50.                         Set-UAGApp -AppName ($App.AppPortalName) -AppGUID $VMID -IpAddr $IPAddress -NewAppName $AppName -ProjectID $ProjectID
  51.                 }
  52.         }
  53. }
  54. #выполняем скрипт-блок, сформированный ранее
  55. Invoke-Command -Session $Session -ScriptBlock $ScriptBlock
  56.  
  57. $Session | Remove-PSSession
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top