Advertisement
Guest User

Untitled

a guest
Nov 21st, 2016
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | None | 0 0
  1. #!/bin/bash -e
  2.  
  3. sudo su - postgres
  4. createdb testdb
  5.  
  6. psql -s tm351test -c "create user test password 'test';GRANT ALL PRIVILEGES ON DATABASE testdb TO test;"
  7.  
  8. touch /root/postgresql.done
  9.  
  10. package {
  11. [
  12. 'postgresql',
  13. 'postgresql-client'
  14. ]: ensure => latest;
  15. }
  16.  
  17. file {
  18. '/root/postgresql.setup':
  19. source => 'puppet:///modules/infinite_interns/root/postgresql.setup',
  20. owner => root,
  21. group => root,
  22. mode => '0744';
  23. }
  24.  
  25. #TO DO - how do we guarantee the postgresql server is running and tools available?
  26. exec {
  27. 'setup-postgresql':
  28. cwd => '/root',
  29. command => '/root/postgresql.setup',
  30. creates => '/root/postgresql.done';
  31. }
  32.  
  33. service {
  34. 'postgresql':
  35. ensure => running,
  36. enable => true;
  37. }
  38.  
  39. Package['postgresql'] -> Service['postgresql']
  40.  
  41. puppet module install puppetlabs-postgresql
  42.  
  43. mod 'puppetlabs-postgresql'
  44.  
  45. class { 'postgresql::globals':
  46. encoding => 'UTF-8',
  47. locale => 'en_US.UTF-8',
  48. version => '9.6',
  49. }->
  50. class { 'postgresql::server':
  51. ip_mask_deny_postgres_user => '0.0.0.0/32',
  52. ip_mask_allow_all_users => '0.0.0.0/0',
  53. listen_addresses => '*',
  54. version => '9.6',
  55. }
  56.  
  57. postgresql::server::db { 'testdb':
  58. user => 'test',
  59. password => postgresql_password('test', 'testpassword'),
  60. }
  61.  
  62. postgresql::server::pg_hba_rule { 'allow connection from ...':
  63. description => "Open up PostgreSQL for access from test domain",
  64. type => 'host',
  65. database => 'testdb',
  66. user => 'test',
  67. address => '.testdomain.com',
  68. auth_method => 'md5',
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement