Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2017
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. #
  2. # Cookbook Name:: database-mysql-dev
  3. # Recipe:: mysql
  4. #
  5. # Copyright (c) 2017 The Authors, All Rights Reserved.
  6.  
  7. include_recipe "yum-mysql-community::mysql56"
  8.  
  9. yum_package [ 'mysql-community-server' ] do
  10. action :install
  11. flush_cache [:before]
  12. end
  13.  
  14. include_recipe "database::mysql"
  15.  
  16. service 'mysqld' do
  17. action [:enable, :start]
  18. end
  19.  
  20. mysql_connection_info = {
  21. host: 'localhost',
  22. username: 'root',
  23. password: ''
  24. }
  25.  
  26. node['db'].each do |d|
  27. d.each do |n|
  28. if #n['name'].attribute?
  29. puts "################################################################"
  30. puts "########### ###########"
  31. puts "########### DATABASE- #{n['name']} ###########"
  32. puts "########### Executing recipes/mysql.rb ###########"
  33. puts "########### ###########"
  34. puts "################################################################"
  35.  
  36. mysql_database "#{n['name']}" do
  37. connection mysql_connection_info
  38. action :create
  39. ignore_failure true
  40. end
  41.  
  42. # Let this database user access this database
  43. puts #n['user']
  44. mysql_database_user "#{n['user']}" do
  45. connection mysql_connection_info
  46. host "#{n['host']}"
  47. password "#{n['pass']}"
  48. database_name "#{n['name']}"
  49. action :create
  50. ignore_failure true
  51. end
  52.  
  53. execute "grant-perms-#{n['user']}" do
  54. 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;\""
  55. action :run
  56. ignore_failure true
  57. end
  58.  
  59. # flush mysql privs if any are changed
  60. execute "mysql-flush-privs" do
  61. command "mysql -u root -r -B -N -e \"FLUSH PRIVILEGES;\""
  62. action :run
  63. end
  64.  
  65. end
  66. end
  67. end
  68.  
  69. bash 'character-set' do
  70. code " mysql -u root -e 'ALTER DATABASE #{node['db']['mysql-dev']['name']} CHARACTER SET utf8 COLLATE utf8_general_ci;'"
  71. end
  72.  
  73. if "mysql-development".include? node.chef_environment
  74. template "/etc/my.cnf" do
  75. mode '0644'
  76. source 'my-dev.conf.erb'
  77. end
  78. else
  79. template "/etc/my.cnf" do
  80. mode '0644'
  81. source 'my-test.conf.erb'
  82. end
  83. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement