diff --git a/clients/ldap-4.json b/clients/ldap-4.json new file mode 100644 index 0000000..e680bc5 --- /dev/null +++ b/clients/ldap-4.json @@ -0,0 +1,4 @@ +{ + "name": "ldap-4", + "public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmzFyZh5/J2BsKRunghis\nwUGbv4j/ynAF7QY+CYoOwDBcbLHk6odn1JyUqCgfhCIX0mh8F/fDKyU9Aw6+HHZ/\nX0DTt/enLTaWc2vxRfyJLRXP7/ymHOr4u6HYEINMdVJp4yQ9XLcWpuRHfA+fHrZ7\n9fI8sCMSEawvVpEKytYdVnm3VCjfIVrfCAkY0lP0mNG908edX2ZuJ4GS1UwADUZX\nLZuMhbGX9JqIQYWCyiMDakD7P7PlEDf/JVkvkao4HQatkqJGmGDhvfIPodIo8JC0\n6FsYxWtvrLJBArYjnVBKRuxIlBqq/7Yx0gj09kGf84aSXvkMDgio7AO4xSp9GJTJ\n4wIDAQAB\n-----END PUBLIC KEY-----\n" +} \ No newline at end of file diff --git a/nodes/akkounts-1.json b/nodes/akkounts-1.json index 5182b61..0ca0d1e 100644 --- a/nodes/akkounts-1.json +++ b/nodes/akkounts-1.json @@ -78,8 +78,9 @@ } }, "run_list": [ - "recipe[kosmos-base]", + "role[base]", "role[kvm_guest]", + "role[ldap_client]", "role[akkounts]" ] -} \ No newline at end of file +} diff --git a/nodes/ejabberd-4.json b/nodes/ejabberd-4.json index 18e81cc..8645317 100644 --- a/nodes/ejabberd-4.json +++ b/nodes/ejabberd-4.json @@ -59,8 +59,9 @@ } }, "run_list": [ - "recipe[kosmos-base]", + "role[base]", "role[kvm_guest]", + "role[ldap_client]", "role[ejabberd]" ] -} \ No newline at end of file +} diff --git a/nodes/ejabberd-8.json b/nodes/ejabberd-8.json index 71c7504..f06d5a6 100644 --- a/nodes/ejabberd-8.json +++ b/nodes/ejabberd-8.json @@ -57,8 +57,9 @@ } }, "run_list": [ - "recipe[kosmos-base]", + "role[base]", "role[kvm_guest]", + "role[ldap_client]", "role[ejabberd]" ] } diff --git a/nodes/gitea-2.json b/nodes/gitea-2.json index d326adc..f386f88 100644 --- a/nodes/gitea-2.json +++ b/nodes/gitea-2.json @@ -64,6 +64,7 @@ "run_list": [ "role[base]", "role[kvm_guest]", + "role[ldap_client]", "role[garage_gateway]", "role[gitea]" ] diff --git a/nodes/ldap-3.kosmos.org.json b/nodes/ldap-3.kosmos.org.json index c3570d0..637595e 100644 --- a/nodes/ldap-3.kosmos.org.json +++ b/nodes/ldap-3.kosmos.org.json @@ -59,6 +59,6 @@ "run_list": [ "recipe[kosmos-base]", "role[kvm_guest]", - "role[dirsrv_primary]" + "role[dirsrv_supplier]" ] -} \ No newline at end of file +} diff --git a/nodes/ldap-4.kosmos.org.json b/nodes/ldap-4.kosmos.org.json new file mode 100644 index 0000000..4a7230c --- /dev/null +++ b/nodes/ldap-4.kosmos.org.json @@ -0,0 +1,57 @@ +{ + "name": "ldap-4.kosmos.org", + "normal": { + "knife_zero": { + "host": "10.1.1.106" + } + }, + "automatic": { + "fqdn": "ldap-4.kosmos.org", + "os": "linux", + "os_version": "5.4.0-1079-kvm", + "hostname": "ldap-4", + "ipaddress": "192.168.122.73", + "roles": [ + "base", + "kvm_guest" + ], + "recipes": [ + "kosmos-base", + "kosmos-base::default", + "kosmos_kvm::guest", + "apt::default", + "timezone_iii::default", + "timezone_iii::debian", + "ntp::default", + "ntp::apparmor", + "kosmos-base::systemd_emails", + "apt::unattended-upgrades", + "kosmos-base::firewall", + "kosmos-postfix::default", + "postfix::default", + "postfix::_common", + "postfix::_attributes", + "postfix::sasl_auth", + "hostname::default" + ], + "platform": "ubuntu", + "platform_version": "20.04", + "cloud": null, + "chef_packages": { + "chef": { + "version": "17.10.3", + "chef_root": "/opt/chef/embedded/lib/ruby/gems/3.0.0/gems/chef-17.10.3/lib", + "chef_effortless": null + }, + "ohai": { + "version": "17.9.0", + "ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.0.0/gems/ohai-17.9.0/lib/ohai" + } + } + }, + "run_list": [ + "role[base]", + "role[kvm_guest]", + "role[dirsrv_supplier]" + ] +} diff --git a/nodes/wiki-1.json b/nodes/wiki-1.json index b2bac6b..22f5c17 100644 --- a/nodes/wiki-1.json +++ b/nodes/wiki-1.json @@ -74,8 +74,9 @@ } }, "run_list": [ - "recipe[kosmos-base]", + "role[base]", "role[kvm_guest]", + "role[ldap_client]", "recipe[kosmos-mediawiki]" ] -} \ No newline at end of file +} diff --git a/roles/dirsrv_primary.rb b/roles/dirsrv_supplier.rb similarity index 63% rename from roles/dirsrv_primary.rb rename to roles/dirsrv_supplier.rb index ab18c68..bf4cfb3 100644 --- a/roles/dirsrv_primary.rb +++ b/roles/dirsrv_supplier.rb @@ -1,4 +1,4 @@ -name "dirsrv_primary" +name "dirsrv_supplier" run_list %w( recipe[kosmos-dirsrv] diff --git a/roles/hubot.rb b/roles/hubot.rb index 9bdc549..f13d5b0 100644 --- a/roles/hubot.rb +++ b/roles/hubot.rb @@ -7,6 +7,6 @@ default_run_list = %w( env_run_lists( '_default' => default_run_list, - 'development' => [], + 'development' => default_run_list, 'production' => default_run_list ) diff --git a/roles/ldap_client.rb b/roles/ldap_client.rb new file mode 100644 index 0000000..03abbf4 --- /dev/null +++ b/roles/ldap_client.rb @@ -0,0 +1,5 @@ +name "ldap_client" + +run_list %w( + kosmos-dirsrv::hostsfile +) diff --git a/site-cookbooks/kosmos-akkounts/recipes/default.rb b/site-cookbooks/kosmos-akkounts/recipes/default.rb index 9b2d290..efd8f63 100644 --- a/site-cookbooks/kosmos-akkounts/recipes/default.rb +++ b/site-cookbooks/kosmos-akkounts/recipes/default.rb @@ -22,7 +22,6 @@ package "libpq-dev" include_recipe 'kosmos-nodejs' include_recipe "kosmos-redis" -include_recipe "kosmos-dirsrv::hostsfile" npm_package "yarn" do version "1.22.4" diff --git a/site-cookbooks/kosmos-dirsrv/recipes/default.rb b/site-cookbooks/kosmos-dirsrv/recipes/default.rb index 5ab07bb..e8269ed 100644 --- a/site-cookbooks/kosmos-dirsrv/recipes/default.rb +++ b/site-cookbooks/kosmos-dirsrv/recipes/default.rb @@ -3,12 +3,15 @@ # Recipe:: default # -include_recipe "kosmos-dirsrv::hostsfile" - credentials = data_bag_item("credentials", "dirsrv") +local_hostname = "#{node["hostname"]}.kosmos.local" + +hostsfile_entry "127.0.0.1" do + hostname local_hostname +end dirsrv_instance "master" do - hostname "ldap.kosmos.local" + hostname local_hostname admin_password credentials['admin_password'] suffix "dc=kosmos,dc=org" end diff --git a/site-cookbooks/kosmos-dirsrv/recipes/hostsfile.rb b/site-cookbooks/kosmos-dirsrv/recipes/hostsfile.rb index f6e18c5..d3fdc0f 100644 --- a/site-cookbooks/kosmos-dirsrv/recipes/hostsfile.rb +++ b/site-cookbooks/kosmos-dirsrv/recipes/hostsfile.rb @@ -3,12 +3,12 @@ # Recipe:: hostsfile # -dirsrv_primary = search(:node, "role:dirsrv_primary AND chef_environment:#{node.chef_environment}").first +dirsrv_supplier = search(:node, "role:dirsrv_supplier AND chef_environment:#{node.chef_environment}").first -unless dirsrv_primary.nil? - primary_ip = dirsrv_primary['knife_zero']['host'] +unless dirsrv_supplier.nil? + supplier_ip = dirsrv_supplier['knife_zero']['host'] - hostsfile_entry primary_ip do + hostsfile_entry supplier_ip do hostname "ldap.kosmos.local" unique true end diff --git a/site-cookbooks/kosmos-ejabberd/recipes/default.rb b/site-cookbooks/kosmos-ejabberd/recipes/default.rb index e742a97..6573631 100644 --- a/site-cookbooks/kosmos-ejabberd/recipes/default.rb +++ b/site-cookbooks/kosmos-ejabberd/recipes/default.rb @@ -3,8 +3,6 @@ # Recipe:: default # -include_recipe "kosmos-dirsrv::hostsfile" - ejabberd_credentials = data_bag_item("credentials", "ejabberd") ejabberd_version = node["kosmos-ejabberd"]["version"] diff --git a/site-cookbooks/kosmos-mediawiki/recipes/default.rb b/site-cookbooks/kosmos-mediawiki/recipes/default.rb index 4f24146..7cbfcdf 100644 --- a/site-cookbooks/kosmos-mediawiki/recipes/default.rb +++ b/site-cookbooks/kosmos-mediawiki/recipes/default.rb @@ -27,7 +27,6 @@ include_recipe 'apt' include_recipe 'ark' include_recipe 'composer' -include_recipe 'kosmos-dirsrv::hostsfile' server_name = 'wiki.kosmos.org' diff --git a/site-cookbooks/kosmos_gitea/recipes/default.rb b/site-cookbooks/kosmos_gitea/recipes/default.rb index 8327ae1..ad127ab 100644 --- a/site-cookbooks/kosmos_gitea/recipes/default.rb +++ b/site-cookbooks/kosmos_gitea/recipes/default.rb @@ -3,8 +3,6 @@ # Recipe:: default # -include_recipe "kosmos-dirsrv::hostsfile" - working_directory = node["gitea"]["working_directory"] git_home_directory = "/home/git" repository_root_directory = "#{git_home_directory}/gitea-repositories"