def _BuildImages(self): # We only build base, dev, and test images from this stage. if self._afdo_generate_min: images_can_build = set(['test']) else: images_can_build = set(['base', 'dev', 'test']) images_to_build = set( self._run.config.images).intersection(images_can_build) version = self._run.attrs.release_tag disk_layout = self._run.config.disk_layout if self._afdo_generate_min and version: version = '%s-afdo-generate' % version rootfs_verification = self._run.config.rootfs_verification builder_path = '/'.join([self._bot_id, self.version]) commands.BuildImage(self._build_root, self._current_board, sorted(images_to_build), rootfs_verification=rootfs_verification, version=version, builder_path=builder_path, disk_layout=disk_layout, extra_env=self._portage_extra_env) # Update link to latest image. latest_image = os.readlink(self.GetImageDirSymlink('latest')) cbuildbot_image_link = self.GetImageDirSymlink() if os.path.lexists(cbuildbot_image_link): os.remove(cbuildbot_image_link) os.symlink(latest_image, cbuildbot_image_link) self.board_runattrs.SetParallel('images_generated', True) parallel.RunParallelSteps([ self._BuildVMImage, lambda: self._GenerateAuZip(cbuildbot_image_link), self._BuildGceTarballs ])
def testBuildImage(self): """Test Basic BuildImage Command.""" commands.BuildImage(self._buildroot, self._board, None) self.assertCommandContains(['./build_image'])