New-UDPage -Url "/SpCmdbCompare" -Name "SpCmdbCompare" -Content { # Use Get-UDPage -Name 'SpCmdbCompare' to use this page in your dashboard ## New-UDForm -Content { New-UDTypography -Text 'Enter FQDN to Compare' New-UDRow -Columns { New-UDColumn -SmallSize 6 -LargeSize 6 -Content { New-UDTextbox -Id 'VMName' } } } -OnValidate { $FormContent = $EventData if ($FormContent.VMName -eq $null -or $FormContent.VMName -eq '') { New-UDFormValidationResult -ValidationError "VMName is required" } else { New-UDFormValidationResult -Valid } } -OnSubmit { New-ITDServiceNowSession -Environment Production -Credential $Secret:snow_vmcred #Invoke-PSUScript -Script 'Sync-ITDVMwareVMMetadataToSharePoint.ps1' -VMName $EventData.VMName -Wait | Out-Null $SPItem = Get-ITDVMwareSharePointVMGuestList -Credential $Secret:ndgov_svcitdiaassprw | Where-Object Title -eq $EventData.VMName $Hostname = $SPItem.Title.split('.')[0] $Cmdb = Get-ITDServiceNowRecord -Table cmdb_ci_server -Filter "name=$HostName" New-UDLink -Url ("https://northdakota.service-now.com/nav_to.do?uri=" + $Cmdb.sys_class_name.value + ".do?sys_id=" + $Cmdb.sys_id.value) -Id "lnkCmdbCi" -Text "Open Cmdb Record" New-UDLink -Url ("https://northdakota.service-now.com/now/nav/ui/classic/params/target/cmdb_ci_server_list.do%3Fsysparm_query%3DnameSTARTSWITH$HostName") -Text "Open Cmdb Table View" New-UDTypography -Text "SpTitle and Cmdb HostName" -Variant h5 New-UDTextBox -Id SpTitle -Value $SPItem.Title New-UDTextBox -Id SpTitle -Value $Cmdb.name.display_value New-UDTypography -Text "Environment" -Variant h5 New-UDButton -Id "btnEnvironment" -Text "Push Environment to Cmdb" -Color Secondary -Size small -OnClick { Update-ITDServiceNowRecord -Table cmdb_ci_server -SysId $Cmdb.sys_id.value -Values @{environment = $SPItem.Environment} } New-UDTextBox -Id SpTitle -Value $SPItem.Environment New-UDTextBox -Id SpTitle -Value $Cmdb.environment.display_value New-UDTypography -Text "AppName" -Variant h5 New-UDButton -Id "btnAppName" -Text "Push AppName to Cmdb" -Color Secondary -Size small -OnClick { Update-ITDServiceNowRecord -Table cmdb_ci_server -SysId $Cmdb.sys_id.value -Values @{u_nd_application_svc = $SPItem.AppName} } New-UDTextBox -Id SpTitle -Value $SPItem.AppName New-UDTextBox -Id SpTitle -Value $Cmdb.u_nd_application_svc.display_value New-UDTypography -Text "LicensingRestrictions" -Variant h5 New-UDButton -Id "btnLicesning" -Text "Push Licensing to Cmdb" -Color Secondary -Size small -OnClick { Update-ITDServiceNowRecord -Table cmdb_ci_server -SysId $Cmdb.sys_id.value -Values @{u_nd_licensing_restrictions = $SPItem.LicensingRestrictions} } New-UDTextBox -Id SpTitle -Value $SPItem.LicensingRestrictions New-UDTextBox -Id SpTitle -Value $Cmdb.u_nd_licensing_restrictions.display_value New-UDTypography -Text "DR_Protection" -Variant h5 New-UDButton -Id "btnDRProtection" -Text "Push DR_Protection to Cmdb" -Color Secondary -Size small -OnClick { Update-ITDServiceNowRecord -Table cmdb_ci_server -SysId $Cmdb.sys_id.value -Values @{u_nd_dr_protection = $SPItem.DR_Protection} } New-UDTextBox -Id SpTitle -Value $SPItem.DR_Protection New-UDTextBox -Id SpTitle -Value $Cmdb.u_nd_dr_protection.display_value New-UDTypography -Text "SRM Recovery Type" -Variant h5 New-UDButton -Id "btnSRMRecoveryType" -Text "Push SRM Recovery Type to Cmdb" -Color Secondary -Size small -OnClick { Update-ITDServiceNowRecord -Table cmdb_ci_server -SysId $Cmdb.sys_id.value -Values @{u_srm_recovery_type = $SPItem.SRM_RecoveryVMtype} } New-UDTextBox -Id SpTitle -Value $SPItem.SRM_RecoveryVMtype New-UDTextBox -Id SpTitle -Value $Cmdb.u_srm_recovery_type.display_value } } -Title "SpCmdbCompare" -Icon @{ id = '1d8ccbbe-f274-4e34-bc59-6ed19e2dfa0e' type = 'icon' }