| 
									
										
										
										
											2018-03-03 18:53:16 +00:00
										 |  |  | import ./make-test.nix { | 
					
						
							| 
									
										
										
										
											2018-04-04 18:26:41 +03:00
										 |  |  |   name = "openldap"; | 
					
						
							| 
									
										
										
										
											2018-03-03 18:53:16 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   machine = { pkgs, ... }: { | 
					
						
							|  |  |  |     services.openldap = { | 
					
						
							|  |  |  |       enable = true; | 
					
						
							|  |  |  |       extraConfig = ''
 | 
					
						
							|  |  |  |         include ${pkgs.openldap}/etc/schema/core.schema | 
					
						
							|  |  |  |         include ${pkgs.openldap}/etc/schema/cosine.schema | 
					
						
							|  |  |  |         include ${pkgs.openldap}/etc/schema/inetorgperson.schema | 
					
						
							|  |  |  |         include ${pkgs.openldap}/etc/schema/nis.schema | 
					
						
							|  |  |  |         database bdb | 
					
						
							|  |  |  |         suffix dc=example | 
					
						
							|  |  |  |         directory /var/db/openldap | 
					
						
							|  |  |  |         rootdn cn=root,dc=example | 
					
						
							|  |  |  |         rootpw notapassword | 
					
						
							|  |  |  |       '';
 | 
					
						
							|  |  |  |       declarativeContents = ''
 | 
					
						
							|  |  |  |         dn: dc=example | 
					
						
							|  |  |  |         objectClass: domain | 
					
						
							|  |  |  |         dc: example | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         dn: ou=users,dc=example | 
					
						
							|  |  |  |         objectClass: organizationalUnit | 
					
						
							|  |  |  |         ou: users | 
					
						
							|  |  |  |       '';
 | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   testScript = ''
 | 
					
						
							|  |  |  |     $machine->waitForUnit('openldap.service'); | 
					
						
							| 
									
										
										
										
											2018-03-07 18:13:55 -05:00
										 |  |  |     $machine->succeed('systemctl status openldap.service'); | 
					
						
							| 
									
										
										
										
											2018-03-03 18:53:16 +00:00
										 |  |  |     $machine->succeed('ldapsearch -LLL -D "cn=root,dc=example" -w notapassword -b "dc=example"'); | 
					
						
							|  |  |  |   '';
 | 
					
						
							|  |  |  | } |