Drupal Profiles follow up and discussion of setting up client sites on a VPS/Reseller hosting

Events happening in the community are now at Drupal community events on www.drupal.org.
colincalnan's picture

I really enjoyed the install profile talk that Boris gave on Saturday about install profiles and how they can make everyone's life a lot easier. But I think there were still a couple of things I felt I missed and was wondering if anyone could help clear them up.

1. Boris placed the themes and modules folders inside the Profile folder and said something to the effect that if you install the site using the profile Drupal remembers that your modules and themes are in that folder, is that correct, or did I miss something?

2. Based on the Bryght SVN of their profile it also appears that you can symlink these folders back to their counterpart folders in root. So the modules and themes are actually not linked in the /html/sites folder at all but that the profile manages them. Is this the best way to do that?

That's just two of the small questions that have been bugging me since that talk.

I've been pulling out my hair trying to figure out how to set up a new VPS for clients that would enable me to update all the sites as easily and quickly as possible. I've had a look here http://drupal.org/node/39807 and most of it makes sense, however they don't mention install profiles and that's what I want to use.

So I made some chicken scratches which I have attached seems like that didn't work - another link here and was wondering if anyone could help decipher the best way to do this. Bear in mind that it might be safer and easier to symlink the files within the /home/username/public_html folder (as discussed in other posts), but for now this is what I came up with.

Only local images are allowed.

The idea is to store the drupal core, themes, modules and profiles not in the user account, and in this configuration I also store the sites not in the user account, can this work?

Will the multisite setup work if the sites folder is not within the public_html folder but doubly symlinked?

Any discussion/help greatly appreciated.

Oh and well done to the awesome team who put last weekend's events together, I got more out of 4 sessions that I have out of forums, books and just winging it in the last 6 months.

Comments

Works

boris mann's picture

1) correct -- installing with a profile means that the system additionally looks in profiles/profile-name/modules for modules as well.

2) it is in my opinion :P

First off: any structure like /home/username/public_html is completely arbitrary. Why do you need separate user accounts at all if you control the entire system? You could keep everything in the sites/example.com folder, which is where the site specific info lives in any case. If you have full control, editing httpd.conf for adding new sites and managing DNS shouldn't be hard.

Now, for an extra wrinkle, you're likely controlling each client site in SVN as well. So, you can additionally make a top level "sites" folder (at the same level as patches, modules, html) and then symlink. Why do this? Well, client themes etc. will tend to rev most quickly, and if you put them at the top level, then you won't be versioning the entire HTML tree, which will be much more static. There is some advanced stuff where you could also use the svn:externals command, but I'll leave that as an exercise to the reader to go investigate.

I hope that helps. I am perhaps assuming quite a lot of sysadmin here. If you are using a control panel, all bets are off. I never use them, because they're not flexible enough for the different scenarios I need to support (e.g. a separate SVN checkout that is "trunk" for dev testing and test upgrades).

Lastly, if you're going to all that trouble to manage multiple sites, you should check out hostmaster: http://drupal.org/project/hostmaster

Vancouver

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: