mirror of
				https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git
				synced 2025-10-31 15:16:00 +00:00 
			
		
		
		
	This is covering the NFSISO_variation test as per: https://fedoraproject.org/wiki/QA:Testcase_install_repository_NFSISO_variation Change support_server to use support_5 disk image in templates supposed to be previously created by updated createhdds tool required for new test. Signed-off-by: Guy Menanteau <menantea@linux.vnet.ibm.com>
		
			
				
	
	
		
			80 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Perl
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Perl
		
	
	
	
	
	
| use base "installedtest";
 | |
| use strict;
 | |
| use testapi;
 | |
| use lockapi;
 | |
| use mmapi;
 | |
| use tapnet;
 | |
| use utils;
 | |
| 
 | |
| sub run {
 | |
|     my $self=shift;
 | |
|     ## DNS / DHCP (dnsmasq)
 | |
|     # create config
 | |
|     assert_script_run "printf 'domain=domain.local\ndhcp-range=10.0.2.112,10.0.2.199\ndhcp-option=option:router,10.0.2.2' > /etc/dnsmasq.conf";
 | |
|     # open firewall ports
 | |
|     assert_script_run "firewall-cmd --add-service=dhcp";
 | |
|     assert_script_run "firewall-cmd --add-service=dns";
 | |
|     # start server
 | |
|     assert_script_run "systemctl restart dnsmasq.service";
 | |
|     assert_script_run "systemctl is-active dnsmasq.service";
 | |
| 
 | |
|     ## ISCSI
 | |
| 
 | |
|     # start up iscsi target
 | |
|     assert_script_run "printf '<target iqn.2016-06.local.domain:support.target1>\n    backing-store /dev/vdb\n    incominguser test weakpassword\n</target>' > /etc/tgt/conf.d/openqa.conf";
 | |
|     # open firewall port
 | |
|     assert_script_run "firewall-cmd --add-service=iscsi-target";
 | |
|     assert_script_run "systemctl restart tgtd.service";
 | |
|     assert_script_run "systemctl is-active tgtd.service";
 | |
| 
 | |
|     ## NFS
 | |
| 
 | |
|     # create the file share
 | |
|     assert_script_run "mkdir -p /export";
 | |
|     # get the kickstart
 | |
|     assert_script_run "curl -o /export/root-user-crypted-net.ks https://jskladan.fedorapeople.org/kickstarts/root-user-crypted-net.ks";
 | |
|     # for update tests, set up the update repository and export it
 | |
|     if (get_var("ADVISORY_OR_TASK")) {
 | |
|         assert_script_run "echo '/opt/update_repo 10.0.2.0/24(ro)' >> /etc/exports";
 | |
|     }
 | |
|     # for compose tests, we do all this stuff
 | |
|     else {
 | |
|         # create the repo share
 | |
|         assert_script_run "mkdir -p /repo";
 | |
|         # create a mount point for the ISO
 | |
|         assert_script_run "mkdir -p /mnt/iso";
 | |
|         # mount the ISO there
 | |
|         assert_script_run "mount /dev/cdrom /mnt/iso";
 | |
|         # copy the contents of the ISO to the repo share
 | |
|         assert_script_run "cp -R /mnt/iso/* /repo", 180;
 | |
|         # put the updates image in the NFS repo (for testing this update
 | |
|         # image delivery method)
 | |
|         assert_script_run "curl -o /repo/images/updates.img https://fedorapeople.org/groups/qa/updates/updates-openqa.img";
 | |
|         # create the iso share
 | |
|         assert_script_run "mkdir -p /iso";
 | |
|         # recreate an iso file
 | |
|         copy_devcdrom_as_isofile('/iso/image.iso');
 | |
|         # set up the exports
 | |
|         assert_script_run "printf '/export 10.0.2.0/24(ro)\n/repo 10.0.2.0/24(ro)\n/iso 10.0.2.0/24(ro)' > /etc/exports";
 | |
|     }
 | |
| 
 | |
|     # open firewall port
 | |
|     assert_script_run "firewall-cmd --add-service=nfs";
 | |
|     # start the server
 | |
|     assert_script_run "systemctl restart nfs-server.service";
 | |
|     assert_script_run "systemctl is-active nfs-server.service";
 | |
| 
 | |
|     # report ready, wait for children
 | |
|     mutex_create('support_ready');
 | |
|     wait_for_children;
 | |
|     # TODO we should add systematic data capture to help investigation when children failed.
 | |
| }
 | |
| 
 | |
| sub test_flags {
 | |
|     return { fatal => 1 };
 | |
| }
 | |
| 
 | |
| 1;
 | |
| 
 | |
| # vim: set sw=4 et:
 |