[Camps-users] Camp Installation and Configuration

Ethan Rowe ethan at endpoint.com
Wed Jan 7 03:42:24 UTC 2009

Jim Anderson wrote:
> I saw your presentation on Camps at UTOSC and was interested in trying 
> this baby out.

Jim, I wasn't the presenter, but I gave Jon plenty of moral support in
his preparations.  :)

> My question[s] for you then are:
> [1] What documentation [if any] do you have on installing/implementing 
> Camps?

The documentation is rough, to put it honestly.  The commands themselves
for using camps are under-documented.  The main module that actually
gives the base camp functionality is reasonably documented, I think
(though I wrote most of the documentation, so my judgment isn't objective).

What's really missing is a tutorial or how-to outlining the process of
setting up camps for whatever it is you want "campified".  But that's
something we could help with here on the list.

> [2] How tricky is this going to be? [In your presentation, you mentioned 
> that existent code bases were tricky to implement]

It depends on a variety of things, mostly coming down to:
* is your stuff already in version control or not?  If not, then getting
it prepared for version control can be painstaking.  Any hostnames, port
numbers, file/URL paths, etc. need to be relative (in the case of paths)
or abstracted out into configuration files that are outside of version
control.  This is an aspect of version control, period, and not specific
to the camp system, but the camp system will punish you pretty harshly
if you don't do things correctly.
* what components make up your software stack?  The camp system
currently has support for:
- Apache web server
- Postgres or MySQL database (one or the other, not both)
- Git, SVN, SVK version control systems
- Interchange and/or Rails appservers

If you're dealing with a PHP app, a FastCGI app, a
mod_perl/mod_python/etc. app, then having the camp support Apache and
having your app code in version control suffices for the camp system to
drive it; you don't need specialized appserver support the way
Interchange does and the way Rails does when used with Mongrel.

We've used camps in production for a variety of web applications, for a
number of End Point clients.  Mostly Interchange (Perl) or Ruby apps.
However, we've successfully set up camps running PHP apps (I think
osCommerce was the one we tried), a Django (Python) app, and I believe
another Perl app with fastCGI (though I don't recall which, to be honest).

> [3] Is Camps something that is viable for company use or is it still in 
> the "Private" use stability stage?

It's certainly viable for use, depending on whether you can deal with
the setup.  We are talking about having some significant revisions,
however, which might change things considerably.

Basically, setting it up is tough, and it is admittedly under-documented
at present.  Once it's set up, it works quite well.

> [4] What work has been done recently on Camps?

On the Camp system itself?  Mostly tinkering at the edges, while we've
had some discussion (a lot of it off-list, unfortunately, but that's
about to change, I promise) about aforementioned significant revisions
to make the system more cleanly designed in its implementation, more
extensible, more flexible, etc.

> Sorry to harass you on this. If my questions are unwelcome, please just 
> say so. I don't mean to infringe. :)

This hardly constitutes harassment, my friend.  Try harder if you want
to upset anybody.  :)

If you could give some details about what you're considering putting in
camps, we might be able to offer you more specifics.

- Ethan

Ethan Rowe
End Point Corporation
ethan at endpoint.com

More information about the Camps-users mailing list