Cannot Install components from Marketplace

Product: PowerShell Universal
Version: 2.8.3

I have been facing issues installing components with PSU hosted in Azure Webapp(custom domain) as a container. There is no error, but the component does not install neither does the Module search work.
I have OIDC configured , I am not sure if I am missing something. OIDC Auth works just fine.

That’s interesting. For me OIDC refuses to work when running PSU in Azure as a Web App (container type, also) together with the inability to install any components, Modules search gives no results and my online license key is unable to contact the licensing server.

We have an issue here. Some more info on this thread.

2 Likes

There are few caveats to get OIDC working. The appsettings.json should have following, URL should be https(your webapp ) as shown below in the given section.
“Api”: {

"Url": "{{URL}}"    

}

Also , there are few additional configs I added to the webapp to get it working . Let me know if you need help configuring your app.
Thanks

Api URL has been configured as described but still getting the error that mentions wrong reply url.
The request from universal webapp uses http:\ but the app registration for OIDC requires https:\.

Would love your help to get this working for us!

This is what I have as additional configs for the webapp as container(Linux).
PS: my appsettings.json is named appsettings.linux.json

{
“name”: “ASPNETCORE_FORWARDEDHEADERS_ENABLED”,
“value”: “true”,
“slotSetting”: false
},
{
“name”: “Data__AppSettingsPath”,
“value”: “/Data/Repository/.universal/appsettings.linux.json”,
“slotSetting”: false
}

Yes, App registration in Azure Ad requires https. All other settings in the appsettings* are same as mentioned in the documentation provided by Ironman.

1 Like

That, now that it is presented like this, makes so much sense…!
Thank you very much for sharing. I’m not able to implement this right away, but will do as soon as I get back in the office tomorrow.

Very exciting!

2 Likes

Hello Adam,
I am now able to install Modules perfectly. But, I still have issues installing from MarketPlace.

Error:
Failed to load resource: the server responded with a status of 400 ()

I am not sure if my appsettings.json is responsible for this. I am running PSU in a webapp as a container with OIDC configured.

Thank You

Can you grab a log from Settings \ General \ Diagnostics? Hopefully it has a more useful error message.

You should be able to install the components from the Modules page and use them in your dashboards as a workaround. They just won’t be listed in the Components page.

The error in the Log is as below:

2022-03-09 18:56:14.994 +00:00 [ERR] Failed to save module
System.NullReferenceException: Object reference not set to an instance of an object.
at Universal.Server.Services.DashboardAssetManager.SaveModule(String name, String version) in D:\a\universal\universal\src\Universal.Server\Services\Dashboard\DashboardAssetManager.cs:line 64.

Ok, I will try the workaround.
Thank you

1 Like

I get the same issue when using Linux using 2.9. When clicking the install button nothing happens and this message is displayed in the logs.

Is it possible to download the nuget packages and install manually when using linux - If I download a standalone powershell install and install the packages using that will they be available when using the integrated environment?

The integrated environment uses the PSModulePath environment variable just like regular PowerShell so if you install them manually, they should show up.

Are you using PSU 2.9.2? In that version, we started including PackageManagement v3 that doesn’t require any special configuration or package providers like v2 required. If you could get me a log, I’d be happy to take a look.

Thanks! I’m doing my job that pays me money at the moment but I’ll check that as soon as I am able.

1 Like

Hi. Yes, I’m using 2.9.2.

The logs are showing the following for each attempt to download a component

2022-03-17 18:39:12.290 +00:00 [ERR] Failed to save module
System.NullReferenceException: Object reference not set to an instance of an object.
   at Universal.Server.Services.DashboardAssetManager.SaveModule(String name, String version) in D:\a\universal\universal\src\Universal.Server\Services\Dashboard\DashboardAssetManager.cs:line 54

I also can’t see the inbuild components (such as the editor, chart’s etc) when I click the modules button whilst editing a dashboard, i’m not sure if that’s related.

Thanks!

Thanks. I’ll spin up a Linux box to see if I can reproduce this. It looks like it’s installing the module but failing to read the information about it.

1 Like