> You hit the nail on the head!! What we really need is a serious well > experienced network/security admin/engineer who can help architect the > system.
You could probably find some candidates from within the Debian community. Perhaps a DD could comment on which mailing list would be appropriate for a job posting and/or consulting RFP. (I might be interested in the role myself.) > Our goals: > * Provide Project Management Many "project management" functions relevant to open source projects are implemented in GForge. Have a look at http://alioth.debian.org/. MS Project it's not, but Gantt charts and resource allocation are often not practical in volunteer projects. Note that some commercially sponsored projects whose results are released under a free software license do use a more traditional project management approach, and you could potentially fill a useful niche by making it easy for a person in a project manager role to track actual progress (especially in areas like testing and graphic design). > * Provide a Development Network of Servers It would be good to spell this out further. What coverage of architectures and operating systems do you have in mind? Do you intend to provide shell accounts or more restricted functions like autobuilders and web development environments? The Debian autobuilders are very important to the testing and release process, and perhaps your project could contribute to the packaging of buildd functionality for wider adoption. For an example of public shell access for open source development purposes, check out the Skiff Cluster (ARM Linux on iPaq) described at http://www.handhelds.org/projects/skiffcluster.html. > * Provide Test Servers > * Allow users to configure Test Servers as Required > * Allow users to build/execute/test their code on the Test Servers These things are relatively easy to provide on Debian systems thanks to debootstrap and user-mode linux. (If the application needs direct hardware access, the developer/tester probably needs his or her own hardware anyway.) Networked applications, even those desiring a privileged port, can be installed and tested given root privileges inside a UML instance and sleight of hand with a NAT firewall. (Suppressing malicious use is an issue, but it's a social engineering problem, not a technical issue. Most developers are willing to have their use of public systems audited.) > Obviously, this kind of environment has to be carefully built/implemented. > Our question is how can it be done? What are the tradeoffs that need to be > made? Has anyone constructed a network close to this? Our initial thoughts > were of University/Computer labs... But even these are a little more tied > down... At one level this is a routine job for an engineering department sysadmin. Perhaps the analogy is not to a university lab but to a circuit design and verification lab or an animation rendering farm, where there are many workers in whose skills and motivation you have varying degrees of trust. Resource accounting is a must so that people know what level of support they can count on as a deadline nears. The level on which it is not routine is social and financial; participants in open source projects are motivated differently from those in corporate projects, and the support process has to be designed accordingly. It's not easy to allocate the lion's share of limited resources to worthwhile projects without alienating potential future contributors whose current project seems marginal. > -Bruce - Michael