Running VMWare powerCLI commands with SoapUI - powershell

I have a powershell script file with PowerCLI commands like Connect-VIServer etc. I am able to run the script file in PowerGUI after I added the library references to VMWare PowerCLI but I don't know how to run it through SoapUI. I'm guessing it won't work with the regular Powershell CLI either. Is there any way to make this work? Here's the error, if it helps:
The term 'Connect-VIServer' is not recognized as the name of a cmdlet, function
, script file, or operable program. Check the spelling of the name, or if a pat
h was included, verify that the path is correct and try again.
At Test.ps1:10 char:23
+ $vm = Connect-VIServer <<<< -Server $vcenterIP -User $vcenterUser -Password
$vcenterPW
+ CategoryInfo : ObjectNotFound: (Connect-VIServer:String) [], Co
mmandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

try calling this in the beginning of the script:
Add-PSSnapin "VMware.VimAutomation.Core" | Out-Null

You cannot execute PowerCLI commands outside of a Powershell host.
To add the snap-in to any Powershell host, use the command Tomas mentioned:
Add-PSSnapin VMware.VimAutomation.Core

Related

Why am I getting errors when trying to run Get-Transportconfig in a Powershell session?

I am trying to run Powershell to invoke Set-TransportConfig on my Exchange mailbox.
Windows Powershell ISE is running elevated as admin.
I am able to connect to Exchange:
Connect-ExchangeOnline -UserPrincipalName
When I attempt to run this command:
Get-TransportConfig -SmtpClientAuthenticationDisabled
I get the following error:
Get-TransportConfig : The term 'Get-TransportConfig' is not recognized
as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that
the path is correct and try again. At line:1 char:1
Get-TransportConfig -SmtpClientAuthenticationDisabled
+ CategoryInfo : ObjectNotFound: (Get-TransportConfig:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
If I run the following:
get-command *transportconfig*
It does not return any commands:.
I've tried running:
Import-Module ExchangeOnlineManagement
Install-Module ExchangeOnlineManagement
It does not return any errors or results (Does that mean it's correctly installed?)
Why can't I run the Get-TransportConfig command? What am I doing wrong here? Am I missing an additional library?

Get-Command : The term 'Get-AzStorageBlobContent' is not recognized as the name of a cmdlet, function, script file, or operable program

From my question about installing Azure Powershell
I was able to install Azure Powershell 5.1
However when I try to run
Get-Command Get-AzStorageBlobContent
I get
Get-Command : The term 'Get-AzStorageBlobContent' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name,
or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Get-Command Get-AzStorageBlobContent
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-AzStorageBlobContent:String) [Get-Command], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Commands.GetCommandCommand
I can see the commands listed in the right panel of ISE and I get intellisence help
The link 135170 takes me here
Get-ExecutionPolicy
returns Restricted
You could run set-executionpolicy remotesigned as administrator to fix the issue.
See: https://www.faqforge.com/windows/windows-powershell-running-scripts-is-disabled-on-this-system/

Running Invoke-AzureRmVMRunCommand through Azure automation

I am trying to run a script thorugh Invoke-AzureRmVMRunCommand from azure automation but it is showing cmdlet does not exist. Please let me know how to implement this.
Below the script
Invoke-AzureRMVMRunCommand -ResourceGroup 'XXXXXX' -Name XXXXX-CommandID 'RunPowerShellScript' -ScriptPath 'Test.ps1'
Error details.
Invoke-AzureRMVMRunCommand : The term 'Invoke-AzureRMVMRunCommand' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At line:1 char:1
+ Invoke-AzureRMVMRunCommand -ResourceGroup 'olf3em-rds-mgmt' -Name OLF ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Invoke-AzureRMVMRunCommand:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
You need to install modules before using those:
https://learn.microsoft.com/en-us/azure/automation/automation-runbook-gallery#modules-in-powershell-gallery
in short:
go to modules
browse gallery
install
The Invoke-AzureRmVMRunCommand command is included in the AzureRM.Compute module. Which you will first need to install in your Automation Account.

Powershell Runbook - The term 'Get-AzureRMWebAppSlot' is not recognized as the name of a cmdlet

I'm trying to switch connection strings of a website to perform DB Failover, as part of HighAvailability. Please suggest if there are any suitable workarounds for the current requirement.
However, the same script which ran on my local machine is not executing while in the Azure portal as a PowerShell Workflow Runbook.
Powershell Code:
Set-AzureRMWebAppSlot -ResourceGroupName $reourceGroupName -Name $WebSiteName -ConnectionStrings $SecnodaryConnectionStrings -Slot $WebSiteSlot
Error:
Set-AzureRMWebAppSlot : The term 'Set-AzureRMWebAppSlot' is not recognized as the name of a cmdlet, function, script
file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct
and try again.
At AppService-DBConnnectionFailoverSwitch:37 char:37
+
+ CategoryInfo : ObjectNotFound: (Set-AzureRMWebAppSlot:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
This can be done by adding modules to your automation account under Assets
Assets > Modules > Add a Module
Browse Gallery to find AzureRM.Compute

Get-QADUser' is not recognized as the name of a cmdlet

I am trying to take users from AD with some filter criteria but while executing Get-QADUser' command I am getting following error.
Get-QADUser : The term 'Get-QADUser' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was
included, verify that the path is correct and try again.
At line:1 char:1
+ Get-QADUser
+ ~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-QADUser:String) [], CommandNotFoundExce
ption
+ FullyQualifiedErrorId : CommandNotFoundException
Can Anybody tel me how to resolve this?
I using following reference link
http://wiki.powergui.org/index.php/Get-QADUser
QAD cmdlets FAQ
To load QAD cmdlets for one particular script:
Add this line in the beginning of the script:
Add-PSSnapin Quest.ActiveRoles.ADManagement -ErrorAction Stop
To make QAD cmdlets available for all your scripts on a particular computer:
Open your PowerShell profile (for example, by starting PowerGUI Script Editor and selecting File / Open Current User Profile). Add this line to the profile code:
Add-PSSnapin Quest.ActiveRoles.ADManagement -ErrorAction Stop
PS. Original Quest article was recommending -ErrorAction SilentlyContinue but I cannot agree with such.