Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #
- # Cookbook Name:: database-mysql-dev
- # Recipe:: mysql
- #
- # Copyright (c) 2017 The Authors, All Rights Reserved.
- include_recipe "yum-mysql-community::mysql56"
- yum_package [ 'mysql-community-server' ] do
- action :install
- flush_cache [:before]
- end
- include_recipe "database::mysql"
- service 'mysqld' do
- action [:enable, :start]
- end
- mysql_connection_info = {
- host: 'localhost',
- username: 'root',
- password: ''
- }
- node['db'].each do |d|
- d.each do |n|
- if #n['name'].attribute?
- puts "################################################################"
- puts "########### ###########"
- puts "########### DATABASE- #{n['name']} ###########"
- puts "########### Executing recipes/mysql.rb ###########"
- puts "########### ###########"
- puts "################################################################"
- mysql_database "#{n['name']}" do
- connection mysql_connection_info
- action :create
- ignore_failure true
- end
- # Let this database user access this database
- puts #n['user']
- mysql_database_user "#{n['user']}" do
- connection mysql_connection_info
- host "#{n['host']}"
- password "#{n['pass']}"
- database_name "#{n['name']}"
- action :create
- ignore_failure true
- end
- execute "grant-perms-#{n['user']}" do
- command "mysql -u root -r -B -N -e \"GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, EXECUTE, CREATE VIEW, SHOW VIEW, TRIGGER ON #{n['name']}.* TO #{n['user']}@'%' WITH GRANT OPTION;\""
- action :run
- ignore_failure true
- end
- # flush mysql privs if any are changed
- execute "mysql-flush-privs" do
- command "mysql -u root -r -B -N -e \"FLUSH PRIVILEGES;\""
- action :run
- end
- end
- end
- end
- bash 'character-set' do
- code " mysql -u root -e 'ALTER DATABASE #{node['db']['mysql-dev']['name']} CHARACTER SET utf8 COLLATE utf8_general_ci;'"
- end
- if "mysql-development".include? node.chef_environment
- template "/etc/my.cnf" do
- mode '0644'
- source 'my-dev.conf.erb'
- end
- else
- template "/etc/my.cnf" do
- mode '0644'
- source 'my-test.conf.erb'
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement