1 |
On Sunday 03 August 2003 8:03 pm, Max Kalika wrote: |
2 |
> Chugga chugga chugga! :-) |
3 |
|
4 |
Lots of laughter. |
5 |
|
6 |
> You're absolutely right, and in fact this is what the eclass does right now |
7 |
> (as shown by the example I posted earlier). |
8 |
|
9 |
;-) |
10 |
|
11 |
> > Thanks for the example - it helps a great deal. Now, how would you deal |
12 |
> > with a site needing to run two copies of horde under the one web server? |
13 |
> |
14 |
> Hmm. This depends on the app. Some apps have virtual hosting built-in |
15 |
> others do not. Those that do not, may need some sysadmin intervention, |
16 |
> doing some parallel installs, symlinking, what-have-you. I think we need |
17 |
> to have a limit to how much we can do at install time and how much we can |
18 |
> configure for the user out-of-the-box. For example, we don't have any way |
19 |
> of having two postfix instances installed and running on the same box with |
20 |
> the ebuild, but the sysadmin can go ahead and configure the installed |
21 |
> product to achieve the needed functionality. |
22 |
|
23 |
True. But most webapps will rely on the webserver to handle the virtual |
24 |
hosting side of things - and that's something we *can* support through |
25 |
user-space tools. |
26 |
|
27 |
> > Yeah - but how do you handle sites (like ISPs) that need to run multiple |
28 |
> > installations of the same app on the same box? You can't have a single |
29 |
> > globla configuration file for that. Makes sense for the home user, but |
30 |
> > not for ISPs. |
31 |
> |
32 |
> Continuing from above, it seems best left to the systems admin in designing |
33 |
> how to implement virtual hosting. For example, horde has built-in virtual |
34 |
> hosting where you specify multiple servers and the specific one gets chosen |
35 |
> based on the server hostname. Of course this isn't foolproof as things |
36 |
> like SSL will break it, but in any case, this decision has to be left to |
37 |
> the person installing it. It seems like the gentoo philosophy is to install |
38 |
> the necessary minimum to have a running product and leave the major |
39 |
> tinkering to the admin. |
40 |
|
41 |
Quoting www.gentoo.org again, the phrase 'automatically configured' can be |
42 |
found. Where we can do a sensible minimum, I think we should. |
43 |
|
44 |
> Going back to the postfix example, although the |
45 |
> package has support for delivering mail to LMTP through a content filter |
46 |
> that will scan for spam and viruses, it doesn't do it out of the box and |
47 |
> takes a bit of tinkering to get right. I'm of the opinion that if someone |
48 |
> wants to set up an ISP, they better know what they're doing and will be |
49 |
> able to figure out how to virtualize the necessary packages they want to |
50 |
> offer to their clients. |
51 |
|
52 |
Problem with that is that it prevents 'emerge -u world' from being something |
53 |
that you can safely put in cron. |
54 |
|
55 |
> Ok. If there's a lot of language-specific work that needs to be done, then |
56 |
> breaking it up into separate eclasses makes sense, otherwise, I'm worried |
57 |
> about clutter. :) |
58 |
|
59 |
Yeah, clutter is a problem - but so is ten ebuilds each with their own way of |
60 |
achieving the same piece of testing. |
61 |
|
62 |
And on that note ... (drum roll please) ... take a look at the new |
63 |
webapp-apache.eclass file that I've just committed to CVS. All it does (for |
64 |
now) is provide a standardised way of determine where HTDOCSDIR is, and which |
65 |
Apache version to install support for. |
66 |
|
67 |
I admit it's a stop-gap solution; it's not enough on its own to make ebuilds |
68 |
webserver-neutral. But at least we can move all the apache-specific crud |
69 |
into the one place, as a starter for ten. |
70 |
|
71 |
Yeah, okay, I'm jumping ahead of the GLEP being approved perhaps, but I needed |
72 |
this to close two outstanding bugs this afternoon, so that's my justification |
73 |
<grin>. Not exactly like I've gone and moved stuff into the proposed |
74 |
'web-???' categories yet ;-) |
75 |
|
76 |
> Fair enough. So something like "webapp-config <application> <webserver>" ? |
77 |
|
78 |
I think so, yeah. Robin's the best person to talk about this, as he had very |
79 |
firm ideas about what he wanted to implement. |
80 |
|
81 |
> > How do you make an app install on (say) Zeus or (say) iPlanet or (say) |
82 |
> > n.e.other web server if the ebuild itself is server-specific? We're |
83 |
> > boxing ourselves in, for no good reason. |
84 |
> |
85 |
> No idea. :-) |
86 |
|
87 |
Exactly ;-) This is the problem that I think we should be solving. |
88 |
|
89 |
Anyway, take a look at the eclass, and let's talk about what else needs adding |
90 |
to it - and let's get it added. |
91 |
|
92 |
A word of warning - although the eclass is called 'webapp-apache', it's |
93 |
designed to *hide* apache-specificness as much as possible behind its |
94 |
interface. If you add anything to the eclass, I'd appreciate it if you |
95 |
followed this design idea ;-) |
96 |
|
97 |
Robin (if you're following this!) I think you could make mod_php inherit this |
98 |
class safely too, to reduce duplication still further. |
99 |
|
100 |
Take care, |
101 |
Stu |
102 |
-- |
103 |
Stuart Herbert stuart@g.o |
104 |
Gentoo Developer http://www.gentoo.org/ |
105 |
Beta packages for download http://dev.gentoo.org/~stuart/packages/ |
106 |
|
107 |
GnuGP key id# F9AFC57C available from http://pgp.mit.edu |
108 |
Key fingerprint = 31FB 50D4 1F88 E227 F319 C549 0C2F 80BA F9AF C57C |
109 |
-- |