INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: strategy for installing upgrades on several PCs  (Read 3341 times)

zxsix

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1753
strategy for installing upgrades on several PCs
« on: December 06, 2007, 02:48:42 pm »

Being on the beta team keeps me installing new builds fairly often.
I also have MC installed on 5 other household computers for family members.
I'm going to start using the multiple instance feature with the "MC12.exe /LibraryReadOnly" shortcut on all other computers but mine.
Since I'll be doing away with individual libraries and having everyone point to a single library on the server machine now, I'm guessing it's more critical that each computer is running the same build of MC.

So, since the application is installed locally on 6 machines, is there any easier way to roll out today's updated build without having to go around to each machine?

The server is a Windows 2003 server and the workstations are 4 XP and 1 Vista.
I've heard that 'group policy' can be used to roll out applications to users but haven't looked to deeply into that.  Not sure how it would work with updates vs. new installs either.

Do y'all just bite the bullet and make a tour of all the household computers and run the setup file?
Logged

zxsix

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1753
Re: strategy for installing upgrades on several PCs
« Reply #1 on: December 06, 2007, 03:42:56 pm »

a quick search on installing to workstations using group policy tells me that it requires the installation program to be an .msi file, a .exe installer won't work.

So, what does everyone else do?
Logged

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: strategy for installing upgrades on several PCs
« Reply #2 on: December 06, 2007, 05:45:28 pm »

What I do is download the build to a central shared folder and always name it the same thing (every time I download it I always name it MCSetup.exe - no matter what it's called on JRiver's server). Then I just create a shortcut to it on each PC. I run it once from each PC, making sure that the "use autoinstall" option is checked. Then at least all I have to do is trigger the shortcut from each PC. I don't need to do anything else.

I've never looked into it, but I'm sure there are numerous ways to remotely trigger execution of an app.

There are also ways of creating an .msi from an .exe setup program, but again, I haven't dug too deeply into how to do that.
Logged

zxsix

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1753
Re: strategy for installing upgrades on several PCs
« Reply #3 on: December 06, 2007, 06:03:13 pm »

I read up on converting .exe to .msi.
It requires expensive software or takes more time that just running it individually.
I suppose I can name it the same way each time like you do, then modify their login scripts to execute it once.

Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42376
  • Shoes gone again!
Re: strategy for installing upgrades on several PCs
« Reply #4 on: December 06, 2007, 06:10:11 pm »

The JRiver installer has a /Silent switch, but I'm not sure if the self-extractor passed the command line to the installer.

(edited to correct slash direction)
Logged
Matt Ashland, JRiver Media Center

DWAnderson

  • Galactic Citizen
  • ****
  • Posts: 484
  • nothing more to say...
Re: strategy for installing upgrades on several PCs
« Reply #5 on: December 06, 2007, 06:52:45 pm »

The server is a Windows 2003 server and the workstations are 4 XP and 1 Vista.
I've heard that 'group policy' can be used to roll out applications to users but haven't looked to deeply into that.  Not sure how it would work with updates vs. new installs either.

Do y'all just bite the bullet and make a tour of all the household computers and run the setup file?


Your setup is remarkably similar to mine, so it's nice to find a kindred spirit. I would love to see the MC package as an .msi too, but I figured (and still do) that I'm in the minority.

The ideas about login scripts and "use autoinstall" are good ones, but I am curious as to where the "use autoinstall" option is checked. Is it some sort of command line switch that can be used with the installer .exe?

zxsix

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1753
Logged

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: strategy for installing upgrades on several PCs
« Reply #7 on: December 06, 2007, 08:50:29 pm »

I am curious as to where the "use autoinstall" option is checked. Is it some sort of command line switch that can be used with the installer .exe?

It's right on the installer screen, right after the EULA.

I wouldn't mind seeing MC distributed as an .msi file, if only for the additional flexibility it would allow.

Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42376
  • Shoes gone again!
Re: strategy for installing upgrades on several PCs
« Reply #8 on: December 06, 2007, 11:32:46 pm »

I wouldn't mind seeing MC distributed as an .msi file, if only for the additional flexibility it would allow.

This is not going to happen.

We wrote our own installer years ago and are pretty happy with the results.
Logged
Matt Ashland, JRiver Media Center

MrHaugen

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 3774
Re: strategy for installing upgrades on several PCs
« Reply #9 on: December 07, 2007, 02:03:21 am »

The easiest in a Windows environment would be a msi. You could distribute and install it in different ways, but as you say, it would be more work than wanted.

What I think I would do is to make a simple visual basic script (vbs) who launches the silent install of a the setup file (static name) on a share.

Code: [Select]
' Declearing variables
Dim objWSHShell, strMainProgram
' String value
strMainProgram     = "\\DistributionServer\Setups\MC12\Setup.exe /silent"
' Run app
objWSHShell.Run strMainProgram,1,False

(Have not tested the code above. Sure it can be done simpler too)

I would then make a Scheduled task to run this vbs script every whole hour.
The trick would then be to have all the computers online at the time of install.
And you would also have to remove/delete or rename the setup file before the next hour, or else it would launch the setup every hour untill you do.

It's a little dumb that the script will allways launch the setup file. You can make the vbs look for a code in a text file or something. To check if it have installed before. I'll see if I can find some in a vbs script later on.
Logged
- I may not always believe what I'm saying

MrHaugen

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 3774
Re: strategy for installing upgrades on several PCs
« Reply #10 on: December 07, 2007, 07:39:24 am »

The JRiver installer has a \Silent switch, but I'm not sure if the self-extractor passed the command line to the installer.

It does, and thank you for that. It's /silent by the way.

I made a better code here for automation install and upgrade on several machines (tested and working):
Code: [Select]
Option Explicit
Dim strMainProgram
Dim objFSO, objFolder, objShell, objFile
Dim strDirectory, strFile

strDirectory = "d:\temp2"
strFile = "\MachineName.txt"
strMainProgram = "\\Machine\sharedFolder\directory\setup.exe /silent"

' ---- Create the Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
set objShell=CreateObject("Wscript.Shell")


' ---- Check that the strDirectory folder exists
If objFSO.FolderExists(strDirectory) Then
   Set objFolder = objFSO.GetFolder(strDirectory)
Else
' ---- Create strDirectory
Set objFolder = objFSO.CreateFolder(strDirectory)
End If

' ---- Check if file exists
If objFSO.FileExists(strDirectory & strFile) Then
Set objFolder = objFSO.GetFolder(strDirectory)
Else
' ---- If not, create file
Set objFile = objFSO.CreateTextFile(strDirectory & strFile)
' Run app
objShell.Run(strMainProgram)
End If

WScript.Quit

What you have to do initially is:
1. Make a .vbs file, copy the above code into the file and save.
2. Replace directory on line 6 who will point to the directory the text files form each computer is saved. Easiest to have them together with the MC12 setup file.
3. Replace directory on line 8 with the place you have put your J River MC 12 setup file.
4. Copy the vbs script to each of your computers.
5. Edit the vbs file and replace strFilename value with the right computer name (should be different on each computer if you want to be able to control individual upgrades).
6. Make a scheduled task that runs the script for example each half hour.

What you have to do each upgrade:
1. Download and rename the setup file to f.eks. setup.exe (as written in the script)
2. Delete the MachinName.txt files representing the machines you wich to upgrade.

If the .txt files are there, MC will not be upgraded each time. But they HAVE to be removed the one time you want to upgrade.
This script does NOT handle spaces in directories or file names well! If you need it you have to edit the script.
Logged
- I may not always believe what I'm saying

benn600

  • Citizen of the Universe
  • *****
  • Posts: 3849
  • Living: Santa Monica CA Hometown: Cedar Rapids IA
Re: strategy for installing upgrades on several PCs
« Reply #11 on: December 07, 2007, 06:48:30 pm »

My situation is remarkably similar too.  I somehow manage to keep increasing my PC count--just got the Asus EEE.

I also download to a special folder.  Since I keep all latest and 2nd to latest installers I just download it to my Media Center 12 folder and then I can install it on the other computers.  The problem is that the other computers are used about a tenth as much as mine so there is very little incentive to update and I rarely do.  If I'm at a computer I will but I never make a point of it--unless I want a new feature in a release on that specific computer.

I've suggested some kind of option to enable automatic updating for the latest build (on the forum) and even thought it could check a local location, too, so it would save J River some bandwidth.  It could even be sent over library server...
Logged

llafriel

  • World Citizen
  • ***
  • Posts: 230
Re: strategy for installing upgrades on several PCs
« Reply #12 on: December 08, 2007, 08:39:28 am »

MC checks the version whenever it connects to a library. How about adding a code wich upgrades to the versionnumber it recieves?

This would work also when connecting to a library over internet.
Logged

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: strategy for installing upgrades on several PCs
« Reply #13 on: December 08, 2007, 08:45:46 am »

The JRiver installer has a /Silent switch, but I'm not sure if the self-extractor passed the command line to the installer.

(edited to correct slash direction)

It is possible to extract the MC installer package to a shared folder on the server (for example Winrar can do this) and run the InstallWizard.exe file with the /Silent switch from a shotcut on each PC. This might help a bit.
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

benn600

  • Citizen of the Universe
  • *****
  • Posts: 3849
  • Living: Santa Monica CA Hometown: Cedar Rapids IA
Re: strategy for installing upgrades on several PCs
« Reply #14 on: December 08, 2007, 10:11:31 am »

So then: does the installer ignore installation if the latest version has already been installed?  Because it would be easy to put an item in the startup folder that just points to a set location on the server "//Chenbro/titanium/Installers/Workstation/Media/Media Center 12/Latest.exe" /Silent

So then when the administrator determined the new version was worth it or did not break anything major to the family, the latest file would be replaced with the latest (and I'd keep a copy Media Center 12.0.386 so I can just delete Latest.exe when done).
Logged
Pages: [1]   Go Up