How to install MID Server automatically without manual install file download step

Jonathan F
Tera Expert

How do you auto-download the install file from a command line? This would replace the steps in the MID Server install instructions to navigate to your instance and download the install file to meet your needs.

 

After I download the file, the next steps are found here: https://community.servicenow.com/community?id=community_question&sys_id=df9f67d8dbdee494da1999ead39619be&view_source=searchResult

Based on my reading of the information in that link, there is still a manual step involved. Before you can run the automatic install process silently from powershell, you must first manually download the install file from your instance and send it to the server on which you are installing the MID Server application. I am working on fully automating this process, where I define the parameters for the new MID Server and press a button so that the server spins up and it runs the install process with no need to complete any manual steps like downloading an install file.

 

Bear in mind, we do NOT have a need to automatically grow and shrink our MID Servers based on traffic or any other change in our environment, so using containerization with Docker/Kubernetes is not the solution we are seeking.

4 REPLIES 4

Prabhu6
Tera Guru

Mid Server would install automatically whenever an instance upgrade.

Rahul Priyadars
Giga Sage
Giga Sage

mid server image reside on install.servicenow.com

you connect here and download it for installation or 

 I am working on fully automating this process, where I define the parameters for the new MID Server and press a button so that the server spins up and it runs the install process with no need to complete any manual steps like downloading an install file.--> Keep Mid server Image on some of your local path for Provisioning just like OS images are used for automated provisioning.

Regards

RP

MattSN
Mega Sage
Mega Sage

You can download the file directly with PowerShell. The URL is the same for all instances, but does need to be updated. On the plus side if you do install an old version, your instance will automatically upgrade it.

$URI = "https://install.service-now.com/glide/distribution/builds/package/app-signed/mid-windows-installer/2022/02/01/mid-windows-installer.sandiego-12-22-2021__patch0-hotfix1-02-01-2022_02-01-2022_2323.windows.x86-64.msi"

Invoke-WebRequest -Uri $URI -OutFile "winmid.msi"

This is good information. On day 1, we'll go with the "almost perfect" option of downloading a version, which may not be the most recent, and then depend on the auto update to get to the correct version for the connected MID Server. Long term, we may be able to look into ways to look up the correct URL for the correct version in real time and then use that URL.

There is one gap to this information which (after a little poking around) I answered fairly well, so I'll add it here. The gap? Where did the URL come from; i.e., how do we look it up? If folks find this article years down the road and are on version Washington DC, they don't want to download San Diego.

My answer: if you navigate to MID Server > Downloads, the info is hidden in the HTML. By viewing the source (or hitting F12 in your browser), you can find a hidden input field with id="mid_packages". Each type of download is named consistently in JSON format and the one in your example is called "winsows64MSI". Since we're on a newer patch of San Diego, my page has this URL: "https://install.service-now.com/glide/distribution/builds/package/app-signed/mid-windows-installer/2022/06/08/mid-windows-installer.sandiego-12-22-2021__patch4-05-25-2022_06-08-2022_0838.windows.x86-64.msi".

Thanks for the info! I'll try it out before marking the answer as correct.