def add_plan(self, site, **kwargs): """ Returns a service plan """ password = passgen(16) info = {'name':site.slug[:16], 'user':passgen(), 'pass':password, 'host':self.host, 'port':self.port,} commands = ['sudo rabbitmqctl add_user %(user)s %(pass)s', 'sudo rabbitmqctl add_vhost %(name)s', 'sudo rabbitmqctl set_permissions -p %(name)s %(user)s ".*" ".*" ".*"',] shell = self.get_shell() for cmd in commands: shell.run(cmd % info) plan = RabbitmqServicePlan(service=self, site=site, add_log=shell.logger.read_log(), active=True, environ=info,) plan.save() return plan
def add_plan(self, site, **kwargs): """ Returns a service plan """ password = passgen(16) info = {'dbname':site.slug[:16], 'dbuser':passgen(), 'dbpass':password, 'dbhost':self.host, 'dbport':self.port,} commands = ["create database %(dbname)s character set utf8", "grant all on %(dbname)s.* to '%(dbuser)s'@'%%' identified by '%(dbpass)s'", "flush privileges",] connection = self.get_admin_connection() c = connection.cursor() for cmd in commands: c.execute(cmd % info) plan = MysqlServicePlan(service=self, site=site, add_log='', active=True, environ=info,) plan.save() return plan