30 lines
		
	
	
		
			788 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
		
		
			
		
	
	
			30 lines
		
	
	
		
			788 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
|   | import ./make-test.nix { | ||
|  |   name = "fsck"; | ||
|  | 
 | ||
|  |   machine = { lib, ... }: { | ||
|  |     virtualisation.emptyDiskImages = [ 1 ]; | ||
|  | 
 | ||
|  |     fileSystems = lib.mkVMOverride { | ||
|  |       "/mnt" = { | ||
|  |         device = "/dev/vdb"; | ||
|  |         fsType = "ext4"; | ||
|  |         autoFormat = true; | ||
|  |       }; | ||
|  |     }; | ||
|  |   }; | ||
|  | 
 | ||
|  |   testScript = ''
 | ||
|  |     $machine->waitForUnit('default.target'); | ||
|  | 
 | ||
|  |     subtest "root fs is fsckd", sub { | ||
|  |       $machine->succeed('journalctl -b | grep "fsck.ext4.*/dev/vda"'); | ||
|  |     }; | ||
|  | 
 | ||
|  |     subtest "mnt fs is fsckd", sub { | ||
|  |       $machine->succeed('journalctl -b | grep "fsck.*/dev/vdb.*clean"'); | ||
|  |       $machine->succeed('grep "Requires=systemd-fsck@dev-vdb.service" /run/systemd/generator/mnt.mount'); | ||
|  |       $machine->succeed('grep "After=systemd-fsck@dev-vdb.service" /run/systemd/generator/mnt.mount'); | ||
|  |     }; | ||
|  |   '';
 | ||
|  | } |