Loading smlets fails
We currently installed a new Orchestrator 2019 version.
We have 2 runbook servers and on every of these 2 servers I installed the Module smlets via "Install-module smlets -Scope CurrentUser" with our SCO Serviceaccount. After that I changed the psm1 file as described in the manuals on the web.
After that I can import the module and use all smlet commands. But whenever I try that with a .net Activity in the Orchestrator Runbook Designer (not the Tester), the error message "The term 'get-scsmclass' is not recognized as the name of a cmdlet,...". I also added the Reg DWORD "OnlyUseLatestCLR" and set it to 1. Server Restarts etc., all didn't work.
I also tried installing it with the .msi file on github, but alsowith that it is not working. Has anyone experienced the same problem?
Best Answer
-
Simon_Zeinhofer Customer Ninja IT Monkey ✭✭✭✭
I found the solution. Apparently, it is not enough to have a machine path variable - at least on our servers.
I copied the SMLets content to C:\Program Files\WindowsPowerShell\Modules and after that I logged on locally with our SCO Service Account.
I entered the following command in a Admin Powershell:
And voilà, it is working. I also did that for the 2nd runbook server and it immediately worked. Maybe this helps someone who has the same problem :)
1
Answers
It almost sounds like the module is not installed for all users. What do you have in the .Net Activity? Do you include
Import-Module SMLets
in the body of the script?If you run
(Get-Module -Name SMLets -ListAvailable).ModuleBase
, what path does it show for you? I have the module installed globally so my path shows Program Files:C:\Program Files\WindowsPowerShell\Modules\SMLets\1.0.2016.0
If it is installed in the CurrentUser scope, it will default to
%USERPROFILE%\Documents\WindowsPowerShell\Modules
Hello Matt,
for testing I installed it via Install-module for my admin user, but I also installed it via the MSI. It is very strange, because when I install it via the msi, it gets installed into the \windows\system32\windowspowershell folder and not into the porgram files.
To test it i copied the content into the program files\windowspowershell\modules folder, but even then the error occurs.
Yesterday I tried imprting it with the full path "C:\windows...\..\SMlets", which is functioning without any problem. I also controlled the psmodule variable, which is pointing to all destinations, where SMlets is installed.
On my 2nd Runbook Server it is exactly the same issue.
I found the solution. Apparently, it is not enough to have a machine path variable - at least on our servers.
I copied the SMLets content to C:\Program Files\WindowsPowerShell\Modules and after that I logged on locally with our SCO Service Account.
I entered the following command in a Admin Powershell:
And voilà, it is working. I also did that for the 2nd runbook server and it immediately worked. Maybe this helps someone who has the same problem :)