示例#1
0
    def populateController(self, 
                           verbose,
                           nodaemon,
                           mysql_username, 
                           mysql_password, 
                           mysql_hostname, 
                           mysql_port, 
                           mysql_schema, 
                           auth_driver,
                           logdir,
                           state_path,
                           s3_host,
                           s3_dmz,
                           rabbit_host,
                           ec2_host, 
                           ec2_dmz_host, 
                           network_manager,
                           network_fixed_range,
                           network_size,
                           use_project_ca):
        
        controller = StackOps.component()
        controller.set_name('controller')

        generic = self.populateGeneric(verbose,nodaemon)
        controller.add_service(generic)
        
        sql_connection = self.populateSqlConnection(mysql_username, mysql_password, mysql_hostname, mysql_port, mysql_schema)
        controller.add_service(sql_connection)
        
        auth = self.populateAuthentication(auth_driver,use_project_ca)
        controller.add_service(auth)

        logs = self.populateLogs(logdir)
        controller.add_service(logs)

        state = self.populateState(state_path)
        controller.add_service(state)

        s3 = self.populateS3(s3_host, s3_dmz)
        controller.add_service(s3)

        mom = self.populateMomHost(rabbit_host)
        controller.add_service(mom)

        ec2= self.populateEc2(ec2_host,ec2_dmz_host)
        controller.add_service(ec2)

        network_manager = self.populateNetworkManager(network_manager,network_fixed_range,network_size)
        controller.add_service(network_manager)

        return controller