Project

General

Profile

Idea #8066

Updated by Nico César almost 9 years ago

The API server has code to try to set this up itself, but it frequently fails because the parent directory doesn't exist, or the API server can't write to it.    Doing it from the package is much less error-prone. 

 When crunch-dispatch inits the repository, it frequently has wrong ownerships (root:root instead of www-data:www-data). 

 * Take the git init code out of crunch-dispatch. 
 * After config:check succeeds, grab the value of git_internal_dir.    If it doesn't exist, set up all directories as necessary as www-data:root 0770, root:www-data 0770 [is this right?], then @su -c "git init …" www-data@.    Make sure to follow symlinks all the way through, from the existence check to the final init. 
 * Make sure Puppet isn't going to thrash on these changes. 
 * Test on a test cluster to make sure it doesn't make any changes.

Back