Best Practices for Software Deployment and Software Upgrades
Hello everyone!
Currently, we are very close to purchasing a K1000 for our company but I have somethings I need cleared up. To me, it seems like software uninstalls, or software upgrades are not very clear. We use GPO currently and if I needed to uninstall something, I would simply remove one package, add the other, and the next time the user logs on, their app would uninstall and the new one would be installed. It's very simple. With kace, I'm struggling to understand how software removal works.
Does anyone have any best practices for removing and reinstalling software? Any best practices for upgrading software? Thanks in advance for the help!
Answers (2)
For something like that I would use Kscripting. Doing it this way will first check that the old software is installed. If it is it will remediate it by first uninstalling, then installing the new software. The next time this script runs if will see that "%programfiles%\old\app.exe" does not exist so there is no need to remediate the next time.
Dependencies: New_software.msi
Verify: File Exists
"%programfiles%\old\app.exe"
On Success: Log Message
Software already uninstalled
Remediation: Run batch file
msiexec /x {uninstall string} /qn
msiexec /i new_software.msi /qn
Remediation Success: Log Message
Software installed
Remediation Failure: Log Message
Software not installed.
Comments:
-
We just purchased both the K1000 and K2000, and have been loving them. They are like having 2 new employees that work 24/7.
The nice thing about Kace is that you can do a lot of conditionals relating to installs/updates/uninstalls. It takes a little more thought, but it pays real dividends. It also cuts down on our calls due to the user notifications, the users are not just surprised by updates/installs/removals. - kwhatcher 12 years ago
For MSI upgrades, I stongly suggest you learn about the upgrade table and how to setup MSI to upgrade different versions. Learning and using this MSI ability will simplify your softare management the most.
Kwatcher hit the 2nd option, use your deployment tools filtering/condition features (if they exist, don't use Kace, I would be surprised if it didn't).
3rd option is as dugullet suggested, scripting. Just my opinion but scripting is always a last resort for me, for either packaging or deployment. Though it sounds like Kscript might be "kaces" way of filtering/conditions.