I have the following folder structure:
bootstrap.py
setup.py
conf/
buildout.cfg
Now how do I make it so that running python bootstrap.py puts the generated folders bin, eggs, parts, etc. on the root instead of under conf folder?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
The base directory for buildout is always the directory that the starting configuration file is found in, so in your case that’s in
conf/.There are two work-arounds for this, one easy, one harder. The first is to just place a bare
buildout.cfgfile in the root, and have it include the file inconf/:Alternatively, you can set the
*-directoryoptions in yourconf/buildout.cfgfile for each of theeggs,develop-eggs,partsandbindirectories:That’ll set the these directories to the parent of your
conf/directory; e.g. the same directory your bootstrap file is in.However, any recipe that still refers to
${buildout:directory}will still use theconf/directory insead of your project root dir. You cannot set that option to a relative path, you must either let buildout set it for you or specify a full path:In my opinion, you are best off using the first option, it makes running the bootstrap script easier anyway as it by default looks for a
buildout.cfgfile in the current directory.