Show
Ignore:
Timestamp:
02/06/08 14:09:34 (4 years ago)
Author:
gperier
Message:

cleverbox :

  • Add Root Group definition to initenv method
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • cleverbox/trunk/cleverbox/model/environment.py

    r211 r219  
    1111 
    1212class Environment: 
    13      
     13 
    1414    path = '' 
    15      
     15 
    1616    def __init__(self, envdir): 
    1717        self.path = envdir 
    1818        self.config = ConfigParser.SafeConfigParser() 
    1919        self.config.read(self.get_path('cleverbox.ini')) 
    20      
     20 
    2121    def create(self, version, parameters): 
    2222        """ 
     
    2929           parameters['general']['apache_group'] 
    3030           parameters['general']['clients_root'] 
     31           parameters['general']['root_group'] 
     32 
    3133        except KeyError, e: 
    3234            raise Exception, "Supplied parameters are not complete." 
     35 
    3336 
    3437        # Do not do anything if base directories is not empty 
     
    4144            for (k, v) in section_directives.items(): 
    4245                self.config.set(section_name, k, v) 
    43          
     46 
    4447        # Write all to disk 
    4548        try: 
     
    5356                env_dirs.append(self.get_path(dirname)) 
    5457            map(os.makedirs, env_dirs) 
    55              
     58 
    5659            # Create VERSION file 
    5760            try: 
     
    7679            logging.info("  Creating default configuration profile") 
    7780            print 
    78              
     81 
    7982            for filename in profile_files: 
    8083                shutil.copy( 
     
    8689 
    8790            # Set permissions 
    88             permissions = {self.get_path('VERSION')                               : (0640, 'root', 'www-data'),  
    89                            self.get_path('cleverbox.ini')                         : (0640, 'root', 'www-data'),  
    90                            self.get_path('clients-available')                     : (0750, 'root', 'www-data'),  
    91                            self.get_path('clients-enabled')                       : (0750, 'root', 'www-data'),  
    92                            self.get_path('projects-available')                    : (0750, 'root', 'www-data'),  
    93                            self.get_path('projects-enabled')                      : (0750, 'root', 'www-data'),  
    94                            self.get_path('profiles')                              : (0750, 'root', 'www-data'),  
    95                            self.get_path('profiles/default')                      : (0750, 'root', 'www-data'),  
    96                            self.get_path('profiles/default/trac-defaults.ini')    : (0640, 'root', 'www-data'),  
    97                            self.get_path('profiles/default/project.apache.conf')  : (0640, 'root', 'www-data'),  
    98                            self.get_path('profiles/default/permissions.ini')      : (0640, 'root', 'www-data'), 
    99                            self.config.get('general', 'clients_root')             : (0750, 'root', 'www-data')} 
    100              
     91            permissions = {self.get_path('VERSION')                               : (0640, 'root', self.config.get('general', 'root_group')), 
     92                           self.get_path('cleverbox.ini')                         : (0640, 'root', self.config.get('general', 'root_group')), 
     93                           self.get_path('clients-available')                     : (0750, 'root', self.config.get('general', 'root_group')), 
     94                           self.get_path('clients-enabled')                       : (0750, 'root', self.config.get('general', 'root_group')), 
     95                           self.get_path('projects-available')                    : (0750, 'root', self.config.get('general', 'root_group')), 
     96                           self.get_path('projects-enabled')                      : (0750, 'root', self.config.get('general', 'root_group')), 
     97                           self.get_path('profiles')                              : (0750, 'root', self.config.get('general', 'root_group')), 
     98                           self.get_path('profiles/default')                      : (0750, 'root', self.config.get('general', 'root_group')), 
     99                           self.get_path('profiles/default/trac-defaults.ini')    : (0640, 'root', self.config.get('general', 'root_group')), 
     100                           self.get_path('profiles/default/project.apache.conf')  : (0640, 'root', self.config.get('general', 'root_group')), 
     101                           self.get_path('profiles/default/permissions.ini')      : (0640, 'root', self.config.get('general', 'root_group')), 
     102                           self.config.get('general', 'clients_root')             : (0750, 'root', self.config.get('general', 'root_group'))} 
     103 
    101104            filesystem.set_permissions(permissions) 
    102105 
     
    105108            logging.error("  Environment couldn't be initialized in %(env_dir)s" % {'env_dir' : self.path}) 
    106109            logging.info("   Rolling back changes") 
    107              
     110 
    108111            for entry in os.listdir(self.path): 
    109112                path = os.path.join(self.path, entry) 
     
    112115                else: 
    113116                    os.remove(path) 
    114      
     117 
     118            # we remove clients_root directory 
     119            shutil.rmtree(self.config.get('general', 'clients_root')); 
     120 
     121 
    115122    def needs_upgrade(self, target_version): 
    116123        """ 
     
    118125        """ 
    119126        return parse_version(self.get_version()) < parse_version(target_version) 
    120      
     127 
    121128    def upgrade(self): 
    122129        """ 
     
    133140                break 
    134141            i = i + 1 
    135      
     142 
    136143    def get_version(self): 
    137144        """