1

What tool would let me manage what is installed on windows development machines (and windows jenkins machines) in a easy, straightforward way? I imagine making a file like so:

eclipse: 4.4
vim: 7.4
cygwin: 1.7

Then I would point said fantasy tool at this file and it would make it so, upgrading where necessary etc.

I've looked at Saltstack (too hard), Ansible (linux master), Chef (hard), Puppet (hard), Vagrant (VM), Boxen (OSX), and surely others I'm forgetting. Aside from the reasons listed, I still don't think any of them work without a lot more configuration than my fantasy file above.

I'm looking at Chocolatey for the package management part and it's great. I just need something around it for a bit of simple automation. This page looked really promising but it's not quite as simple as I'd like.

Anthony Mastrean
  • 21,850
  • 21
  • 110
  • 188
randy909
  • 386
  • 1
  • 3
  • 12
  • 1
    `ansible` works with Windows too via `winrm` and `powershell` AFAIK. So you should be able to use it. Question in general is too broad. – Kashyap Apr 13 '15 at 18:41
  • with saltstack you can make your own repository of windows applications, with custom install. check this: http://docs.saltstack.com/en/latest/topics/windows/windows-package-manager.html – avenda Apr 20 '15 at 02:12

2 Answers2

2

From a Chocolatey stand point, you could make use of the packages.config file, which can be passed to the install command, described here.

In the packages.config file, you would specify the application and version number that is required, and you would maintain this "somewhere". And then periodically call the choco install command, say from a scheduled task. The install of the package will only take place if that application version is not installed.

Gary Ewan Park
  • 17,610
  • 5
  • 42
  • 60
0

For your Jenkins machines, the custom tools plugin is one way to do it: https://wiki.jenkins-ci.org/display/JENKINS/Custom+Tools+Plugin

It will ensure that the correct versions of the required tools are installed whenever a Jenkins job is started. You can change the version of the tools in the Jenkins master configuration at any time.

Timmy Brolin
  • 1,101
  • 1
  • 8
  • 18