Ovid wrote:

For those of you in large environments, do you run "make test" or an equivalent 
when you push your code out to a production server?  Why or why not?

We don't for a couple of reasons. Like your #2 our tests are very CPU/memory/DB intensive so they would be extremely disruptive if the system was already running. Also, while we try to make our tests cleanup after themselves properly there's always the problem of stray data left behind, or even of cleaning up too much such that using an in-use production system could cause problems.

We do make sure that all of our machines have the same versions of the same Perl modules. Also same versions of important C libraries and same versions of other systems (mysql, spread, etc).

But when we are putting a new machine into production we often run the full test suite on it to make sure it will behave like all of the others. This is especially true if we are changing OS/architecture with that new machine. Not all our machines are exactly the same. Some are 64bit (mainly for databases and cache) and some are not. Some run Fedora, some run CentOS and we might even start using some OpenSolaris.

While I won't say it's perfect, and it wouldn't bother me if someone else had a stricter system, but it hasn't caused us any problems so far.

--
Michael Peters
Plus Three, LP

Reply via email to