<div dir="ltr"><div><div><div><div><div><div><div>While writing a blog post about software configuration management I looked into buildout, and using it as an SCM tool. And it has one big restriction:<br><br></div>You can't run certain parts as root. <br><br></div>I think adding that would actually not be too hard. Are there any principal arguments against it? I looked at making an extension, but I would need a hook that is run before and after each step in that case.<br><br></div>I was thinking that you could define which parts should run as root in one of two ways:<br><br></div>1. A parameter in the part config<br></div>2. Having a global configuration with a list of parts. This for the case when the parts recipe itself has a parameter that clashes with the parameter in 1.<br><br></div><div>I'm leaning towards having a setuid parameter, so you can set to other id's than 0.<br></div><div><br></div>Technically it would be done by setuid to root for the configured parts, and then back after it has run. You would have to run buildout as a whole with sudo for this to work. It would use the login name as the "normal" setuid, unless configured explicitly with a global setuid parameter.<br><br></div><div>Thoughts?<br></div></div>