DEV Community

Daniel Rolfe
Daniel Rolfe

Posted on

 

Using Sitecore Install Assistant Behind a Proxy

Setting up Sitecore has always been a little more painful than developers may have wished. To ease this pain we've had the Sitecore Installation Manager for many years and more recently the Sitecore Installation Framework (SIF). The latest iteration is called the Sitecore Install Assistant and was introduced in Sitecore 9.2.

Alt Text

We are in the process of a long awaited upgrade from Sitecore 8.0 to 9.3 and simplifying the process of setting up a developer environment is critical in the smooth transition to the new version. SIA seems like a great option to make this easy for developers who already complain about complex environments.

The Proxy Problem

When attempting to use SIA the following error was reported:

No match was found for the specified search criteria and module name 'PowerShellGet'. Try Get-PSRepository to see all available registered module repositories.
Unable to find module repositories.
The specified Uri 'https://sitecore.myget.org/F/sc-powershell/api/v2' for parameter 'SourceLocation' is an invalid Web Uri. Please ensure that it meets the Web Uri requirements.
The specified module 'SitecoreInstallFramework' with version '2.2.0' was not loaded because no valid module file was found in any module directory.
Enter fullscreen mode Exit fullscreen mode

Alt Text

SIF has similar problems and requires you to specify proxy credentials in powershell so I assumed this was proxy related. One Sitecore support ticket later and I discover that SIA does not support use behind a proxy. I recall a similar response for SIF.

The Solution

Please. There is ALWAYS a hack.

I created a class library project that implements IWebProxy and specify the proxy and credentials there. A small tweak to the setup.exe.config for SIA and viola, SIA is able to communicate with the outside world.

The code and details are here:

GitHub - ProxyInjector

SIF and SIA are excellent tools and I appreciate that Sitecore has created them but I do wonder how many of their customers are stuck with a proxy in the mix... just sayin.

Top comments (2)

Collapse
 
jdilday profile image
Jason

Well done!

Collapse
 
danielrolfe profile image
Daniel Rolfe

Do I get a gold star? :)

An Animated Guide to Node.js Event Loop

Node.js doesn’t stop from running other operations because of Libuv, a C++ library responsible for the event loop and asynchronously handling tasks such as network requests, DNS resolution, file system operations, data encryption, etc.

What happens under the hood when Node.js works on tasks such as database queries? We will explore it by following this piece of code step by step.