[Web-SIG] WSGI deployment config

James Gardner james at pythonweb.org
Sun Aug 7 20:33:53 CEST 2005


Phillip J. Eby wrote:

> This approach is capable of doing everything you've proposed, except 
> that it doesn't provide access to the private configuration data of 
> individual services.  It would be possible, however, to load the 
> service chain from a deployment file without instantiating 
> applications or middleware, in order to e.g. run utility programs.  
> You can still include arbitrary configuration if you want, just by 
> creating a service whose job is to provide such information. 

OK, fair point and I'm perfectly happy with this.

> The point isn't to have a standardized format or globally accessible 
> configuration, it's to *hide* configuration so that other objects 
> don't have to know about it. 

What exactly are you defining as a service then? A service would have to 
have some way of providing its useful code to utilities etc as well as 
deploying middleware. In the original model each WSGI middleware 
component might rely on other ones, both the middleware component and 
middleware it relies on might need configuration. We can describe the 
whole middleware chain in a config file so that it can all be configured 
at once. I might be missing the point but is your idea of services that 
by passing them the service chain they have an opportunity to decide 
what services to load based on services they rely on and thereby bypass 
some of the configuration? Surely almost all middleware would need at 
least some configuration so you are unlikely to make the config file 
much shorter?

> The only other piece I think we're missing is a way to handle 
> branching, because our pipeline configuration is quite linear.  
> There's no obvious way to branch at the moment, except by having a way 
> to configure a middleware component to refer to other pipelines.

I don't think I've quite caught your full vision here. Using the 
services idea my understanding is just that an application needs certain 
services to function and also certain configuration for those services 
before it can run, since many applications on the same site may need the 
same services configured in the same way it is useful to be able to 
share configuration and to do that it is helpful for a local application 
to inherit configuration from another source of components, possibly in 
the way I suggested. I don't think branching really fits into that model 
so how are you envisaging deployments?

Cheers,

James



More information about the Web-SIG mailing list