Support automated installation #74

Closed
johnbender opened this Issue Jul 4, 2011 · 5 comments

Projects

None yet

3 participants

@johnbender

Automating Installation

In the interest of helping people install their own testswarms it might be valuable to provide a couple different automated setup/installation options.

Provisioning frameworks

The main advantage to using infrastructure management tools is the flexibility they provide. For example the user can configure their install to point to a specific js repository and subdirectory for serving their js files for testing.

Additionally "server config as code" is approachable for community contributions and its much easier to understand the overall setup process, ie its self documenting.

Chef - http://wiki.opscode.com/display/chef/Home
Puppet - http://docs.puppetlabs.com/

Package management

Creating packages for installing testswarm is probably the best user experience in terms of setting up the software, though configuring it to work with a given library may be more involved in the long run.

Ubuntu - https://wiki.ubuntu.com/PackagingGuide/Complete
Redhat - http://www.ibm.com/developerworks/library/l-rpm1/

@jzaefferer
Member

Good idea. Could also provide a nginx config file to replace the Apache-specific .htaccess.

A lot of the setup involving cronjobs and perl scripts could be replaced by the Hudson-TestSwarm plugin: https://github.com/appendto/hudson-testswarm

@Krinkle
Member
Krinkle commented Mar 17, 2012

At the Wikimedia Foundation we've created a debian package for Ubuntu that automatically installs TestSwarm.

I've created bug 35282 at bugzilla.wikimedia.org which requests it be made usable for third parties and publish it.

@jzaefferer
Member

Once that Debian package is published, we can mention/link to that in the TestSwarm readme.

@jzaefferer
Member

Created #174 for nginx support.

Once 1.0.0 is final, getting the Debian package done would be nice.

@Krinkle
Member
Krinkle commented Oct 13, 2012

We now have:

  • database installation script
  • apache/nginx config
  • option in cli scripts to surpress user input and options to force overrides (e.g. php dbInstall.php --quiet)
  • option to store settings elsewhere (by creating a custom localSettings.php implementation instead/besides reading localSettings.json)

Anything else is probably best kept out of the repository and instead published else where.

I am currently writing on a generic Puppet manifest. And #221 notified us of a Chef cookbook. A debian package would be nice as well. But closing this issue for now as I believe any necessary support from within TestSwarm has been taken care of.

@Krinkle Krinkle closed this Oct 13, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment