Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Question:

I am looking for links or personal accounts of lessons & experiences on setting up sets of servers\systems for developers. In particular I am interested in the amount of automation and if it has turned out to be more work than it is worth or a god-send. I realize depending on the nature of the products developed, this may be simplier or more complex. I am also new into this area (<4 months) so my perspective is very limited :( The following are points I am most interested in:

  • Version control you use and why?
  • Is anything automated?
    • Do you have developers work with the repository directly for general day to day use?
    • Do you take advantage of repository scripted hooks?
    • Do you tie any of your tools together or integrate them with each other in any way?
  • Do developers use console-based or graphical tools?
  • What is your #1 priority when you are upgrading infrastructure or improving things?

My Limited Experience

In my case the team develops web applications utilizing MySQL and PHP. The updated infrastructure I have been working on gives them version control with Mercurial and the project management system Redmine. We also have dev, test, and production servers for the site as well as a database server. I combine the version control and project management onto one server.

From a strict usability perspective the above sitting on their own servers is enough, but I have been working on approaches using post-commit hooks to send the newest incoming commits to the dev server automatically, script processing (like minimizing CSS and JS files), and integrating the triggers of publishes to test and dev into the Redmine UIs with permissions control. I have also added hooks into Redmine to do custom Repository creation and deletion (with custom hooks).

I have also experimented with custom Dreamweaver plugins to grab commit messages from developers and automatically handle the commit process (minimizing time spent switching windows and clicking around in TortoiseHg.)

As I am still testing, I am unsure what will make it into the final product. I was just curious what others did as far to the extents they ran.

share|improve this question
    
Try googling "continuous integration" and "continuous deployment" and you'll see exactly what the range of possibilities are. There are companies out there that have automated the complete process from developer check in to deployment. –  Fred the Magic Wonder Dog Apr 17 at 15:33
add comment

1 Answer

up vote 7 down vote accepted

My answer to that question would always be: ask the users, in your case the developers. IT systems do not have an intrinsic value of their own, they always fulfill a role within the context of the business they are used in. Therefore the better you can make them do what is needed in that context, the better for the business.

Some more specific answers:

Version Control: we use svn, cvs and git (legacy reasons, there are moves under way to consolidate this into git only).
Automation: plenty. Each of these systems has hook scripts galore. Due to the fact that requirements keep on changing, the engineering teams actually have a "tool maker", i.e. a particular software engineer who does nothing else but provide and improve the tools for everybody else. The IT team doesn't actually get involved with this at all, we focus on the servers as such (hardware, OS, upgrades, performance, networking, etc.)
Console vs. GUI: Anything goes. And we in IT don't really care what they use as long as it does the trick, can be installed/upgraded via package management (we also have our own package repository for our internal tools) and doesn't violate any laws or infringes any copyright.
The #1 priority is always uninterrupted service to all users.

share|improve this answer
1  
+1 for "IT systems do not have an intrinsic value of their own, they always fulfill a role within the context of the business they are used in." <-- One of the best IS-related comments I've ever seen. :) –  Zayne S Halsall Aug 28 '10 at 15:56
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.