[ostree-installer] Put lorax output into work dir
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
This commit is contained in:
		
							parent
							
								
									36e7279a5e
								
							
						
					
					
						commit
						81d84a030b
					
				| @ -51,13 +51,15 @@ class OstreeInstallerThread(WorkerThread): | |||||||
|         source_variant = compose.variants[config['source_repo_from']] |         source_variant = compose.variants[config['source_repo_from']] | ||||||
|         source_repo = translate_path( |         source_repo = translate_path( | ||||||
|             compose, compose.paths.compose.repository(arch, source_variant, create_dir=False)) |             compose, compose.paths.compose.repository(arch, source_variant, create_dir=False)) | ||||||
|  |         output_dir = os.path.join(compose.paths.work.topdir(arch), variant.uid, 'ostree_installer') | ||||||
|  |         util.makedirs(os.path.dirname(output_dir)) | ||||||
| 
 | 
 | ||||||
|         self._run_ostree_cmd(compose, variant, arch, config, source_repo) |         self._run_ostree_cmd(compose, variant, arch, config, source_repo, output_dir) | ||||||
| 
 | 
 | ||||||
|         disc_type = compose.conf.get('disc_types', {}).get('dvd', 'dvd') |         disc_type = compose.conf.get('disc_types', {}).get('dvd', 'dvd') | ||||||
|         filename = compose.get_image_name(arch, variant, disc_type=disc_type, |         filename = compose.get_image_name(arch, variant, disc_type=disc_type, | ||||||
|                                           format=config.get('filename')) |                                           format=config.get('filename')) | ||||||
|         self._copy_image(compose, variant, arch, filename) |         self._copy_image(compose, variant, arch, filename, output_dir) | ||||||
|         self._add_to_manifest(compose, variant, arch, filename) |         self._add_to_manifest(compose, variant, arch, filename) | ||||||
|         self.pool.log_info('[DONE ] %s' % msg) |         self.pool.log_info('[DONE ] %s' % msg) | ||||||
| 
 | 
 | ||||||
| @ -66,10 +68,9 @@ class OstreeInstallerThread(WorkerThread): | |||||||
|             return compose.image_release |             return compose.image_release | ||||||
|         return config.get('release', None) |         return config.get('release', None) | ||||||
| 
 | 
 | ||||||
|     def _copy_image(self, compose, variant, arch, filename): |     def _copy_image(self, compose, variant, arch, filename, output_dir): | ||||||
|         iso_path = compose.paths.compose.iso_path(arch, variant, filename) |         iso_path = compose.paths.compose.iso_path(arch, variant, filename) | ||||||
|         source_dir = compose.paths.compose.os_tree(arch, variant) |         boot_iso = os.path.join(output_dir, 'images', 'boot.iso') | ||||||
|         boot_iso = os.path.join(source_dir, 'images', 'boot.iso') |  | ||||||
| 
 | 
 | ||||||
|         try: |         try: | ||||||
|             os.link(boot_iso, iso_path) |             os.link(boot_iso, iso_path) | ||||||
| @ -100,15 +101,14 @@ class OstreeInstallerThread(WorkerThread): | |||||||
|             pass |             pass | ||||||
|         compose.im.add(variant.uid, arch, img) |         compose.im.add(variant.uid, arch, img) | ||||||
| 
 | 
 | ||||||
|     def _run_ostree_cmd(self, compose, variant, arch, config, source_repo): |     def _run_ostree_cmd(self, compose, variant, arch, config, source_repo, output_dir): | ||||||
|         image_dir = compose.paths.compose.os_tree(arch, variant, create_dir=False) |  | ||||||
|         lorax_wrapper = lorax.LoraxWrapper() |         lorax_wrapper = lorax.LoraxWrapper() | ||||||
|         cmd = lorax_wrapper.get_lorax_cmd( |         cmd = lorax_wrapper.get_lorax_cmd( | ||||||
|             compose.conf['release_name'], |             compose.conf['release_name'], | ||||||
|             compose.conf["release_version"], |             compose.conf["release_version"], | ||||||
|             self._get_release(compose, config), |             self._get_release(compose, config), | ||||||
|             repo_baseurl=source_repo, |             repo_baseurl=source_repo, | ||||||
|             output_dir=image_dir, |             output_dir=output_dir, | ||||||
|             variant=variant.uid, |             variant=variant.uid, | ||||||
|             nomacboot=True, |             nomacboot=True, | ||||||
|             buildinstallpackages=config.get('installpkgs'), |             buildinstallpackages=config.get('installpkgs'), | ||||||
|  | |||||||
| @ -143,7 +143,7 @@ class OstreeThreadTest(helpers.PungiTestCase): | |||||||
|                                      '--source=file://{}/compose/Everything/x86_64/os'.format(self.topdir), |                                      '--source=file://{}/compose/Everything/x86_64/os'.format(self.topdir), | ||||||
|                                      '--variant=Everything', |                                      '--variant=Everything', | ||||||
|                                      '--nomacboot', |                                      '--nomacboot', | ||||||
|                                      self.topdir + '/compose/Everything/x86_64/os'], |                                      self.topdir + '/work/x86_64/Everything/ostree_installer'], | ||||||
|                                     channel=None, mounts=[self.topdir], |                                     channel=None, mounts=[self.topdir], | ||||||
|                                     packages=['pungi', 'lorax'], |                                     packages=['pungi', 'lorax'], | ||||||
|                                     task_id=True, use_shell=True)]) |                                     task_id=True, use_shell=True)]) | ||||||
| @ -151,7 +151,7 @@ class OstreeThreadTest(helpers.PungiTestCase): | |||||||
|                          [mock.call(koji.get_runroot_cmd.return_value, |                          [mock.call(koji.get_runroot_cmd.return_value, | ||||||
|                                     log_file=self.topdir + '/logs/x86_64/ostree/runroot.log')]) |                                     log_file=self.topdir + '/logs/x86_64/ostree/runroot.log')]) | ||||||
|         self.assertEqual(link.call_args_list, |         self.assertEqual(link.call_args_list, | ||||||
|                          [mock.call(self.topdir + '/compose/Everything/x86_64/os/images/boot.iso', |                          [mock.call(self.topdir + '/work/x86_64/Everything/ostree_installer/images/boot.iso', | ||||||
|                                     final_iso_path)]) |                                     final_iso_path)]) | ||||||
|         self.assertEqual(get_file_size.call_args_list, [mock.call(final_iso_path)]) |         self.assertEqual(get_file_size.call_args_list, [mock.call(final_iso_path)]) | ||||||
|         self.assertEqual(get_mtime.call_args_list, [mock.call(final_iso_path)]) |         self.assertEqual(get_mtime.call_args_list, [mock.call(final_iso_path)]) | ||||||
| @ -159,6 +159,8 @@ class OstreeThreadTest(helpers.PungiTestCase): | |||||||
|         self.assertEqual(compose.get_image_name.call_args_list, |         self.assertEqual(compose.get_image_name.call_args_list, | ||||||
|                          [mock.call('x86_64', compose.variants['Everything'], |                          [mock.call('x86_64', compose.variants['Everything'], | ||||||
|                                     disc_type='dvd', format='Fedora-Atomic.iso')]) |                                     disc_type='dvd', format='Fedora-Atomic.iso')]) | ||||||
|  |         self.assertTrue(os.path.isdir(self.topdir + '/work/x86_64/Everything/')) | ||||||
|  |         self.assertFalse(os.path.isdir(self.topdir + '/work/x86_64/Everything/ostree_installer')) | ||||||
| 
 | 
 | ||||||
|     @mock.patch('productmd.images.Image') |     @mock.patch('productmd.images.Image') | ||||||
|     @mock.patch('pungi.util.get_mtime') |     @mock.patch('pungi.util.get_mtime') | ||||||
| @ -222,7 +224,7 @@ class OstreeThreadTest(helpers.PungiTestCase): | |||||||
|                         '--add-arch-template-var=ostree_repo=https://kojipkgs.fedoraproject.org/compose/atomic/Rawhide/', |                         '--add-arch-template-var=ostree_repo=https://kojipkgs.fedoraproject.org/compose/atomic/Rawhide/', | ||||||
|                         '--add-arch-template-var=ostree_osname=fedora-atomic', |                         '--add-arch-template-var=ostree_osname=fedora-atomic', | ||||||
|                         '--add-arch-template-var=ostree_ref=fedora-atomic/Rawhide/x86_64/docker-host', |                         '--add-arch-template-var=ostree_ref=fedora-atomic/Rawhide/x86_64/docker-host', | ||||||
|                         self.topdir + '/compose/Everything/x86_64/os'], |                         self.topdir + '/work/x86_64/Everything/ostree_installer'], | ||||||
|                        channel=None, mounts=[self.topdir], |                        channel=None, mounts=[self.topdir], | ||||||
|                        packages=['pungi', 'lorax'], |                        packages=['pungi', 'lorax'], | ||||||
|                        task_id=True, use_shell=True)]) |                        task_id=True, use_shell=True)]) | ||||||
| @ -230,7 +232,7 @@ class OstreeThreadTest(helpers.PungiTestCase): | |||||||
|                          [mock.call(koji.get_runroot_cmd.return_value, |                          [mock.call(koji.get_runroot_cmd.return_value, | ||||||
|                                     log_file=self.topdir + '/logs/x86_64/ostree/runroot.log')]) |                                     log_file=self.topdir + '/logs/x86_64/ostree/runroot.log')]) | ||||||
|         self.assertEqual(link.call_args_list, |         self.assertEqual(link.call_args_list, | ||||||
|                          [mock.call(self.topdir + '/compose/Everything/x86_64/os/images/boot.iso', |                          [mock.call(self.topdir + '/work/x86_64/Everything/ostree_installer/images/boot.iso', | ||||||
|                                     final_iso_path)]) |                                     final_iso_path)]) | ||||||
|         self.assertEqual(get_file_size.call_args_list, [mock.call(final_iso_path)]) |         self.assertEqual(get_file_size.call_args_list, [mock.call(final_iso_path)]) | ||||||
|         self.assertEqual(get_mtime.call_args_list, [mock.call(final_iso_path)]) |         self.assertEqual(get_mtime.call_args_list, [mock.call(final_iso_path)]) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user