[buildout] extends = {{ master_cfg }} parts += neo-storage logrotate-storage [mysqld] recipe = slapos.cookbook:generic.mysql.wrap_mysqld output = ${directory:etc_run}/mariadb binary = ${:mysql-base-directory}/bin/mysqld configuration-file = ${my-cnf:rendered} data-directory = ${directory:srv_mariadb} mysql-install-binary = ${:mysql-base-directory}/scripts/mysql_install_db mysql-base-directory = {{ mariadb_location }} [my-cnf-parameters] socket = ${directory:var_run}/mariadb.sock data-directory = ${mysqld:data-directory} pid-file = ${directory:var_run}/mariadb.pid error-log = ${directory:log}/mariadb_error.log slow-query-log = ${directory:log}/mariadb_slowquery.log long-query-time = {{ dumps(slapparameter_dict.get('long-query-time', 1)) }} relaxed-writes = {{ dumps(slapparameter_dict.get('relaxed-writes', False)) }} init-file = ${init-script:rendered} [my-cnf] recipe = slapos.recipe.template:jinja2 rendered = ${directory:etc}/mariadb.cnf template = {{ template_my_cnf }} context = section parameter_dict my-cnf-parameters [init-script] recipe = slapos.recipe.template:jinja2 # XXX: is there a better location ? rendered = ${directory:etc}/mariadb_initial_setup.sql database = neo template = inline: CREATE DATABASE IF NOT EXISTS ${:database}; [neo-storage] recipe = slapos.cookbook:neoppod.storage binary = {{ bin_directory }}/neostorage wrapper = ${directory:etc_run}/neostorage logfile = ${directory:log}/neostorage.log ip = {{ (ipv4_set | list)[0] }} cluster = {{ dumps(slapparameter_dict['cluster']) }} masters = {{ dumps(slapparameter_dict.get('masters', '')) }} database-adapter = MySQL database-parameters = root@${init-script:database}${my-cnf-parameters:socket} wait-database = 60 [directory] bin = ${buildout:directory}/bin etc = ${buildout:directory}/etc var = ${buildout:directory}/var etc_run = ${:etc}/run var_run = ${:var}/run srv_mariadb = ${buildout:directory}/srv/mariadb [logrotate-storage] recipe = slapos.cookbook:logrotate.d logrotate-entries = ${logrotate:logrotate-entries} backup = ${logrotate:backup} name = neo-storage log = ${neo-storage:logfile} post = {{ bin_directory }}/slapos-kill -n neostorage -s RTMIN+1 ${:log}