code: def set_build_image(self):
          
          current_platform = platform.processor()
          orchestrator_platform = current_platform or 'x86_64'
          current_buildimage = self.get_current_buildimage()
  
          for plat, build_image in self.build_image_override.items():
              self.log.debug('Overriding build image for %s platform to %s',
                             plat, build_image)
              self.build_image_digests[plat] = build_image
  
          manifest_list_platforms = self.platforms - set(self.build_image_override.keys())
          if not manifest_list_platforms:
              self.log.debug('Build image override used for all platforms, '
                             'skipping build image manifest list checks')
              return
  
          # orchestrator platform is same as platform on which we want to built on,
          # so we can use the same image
          if manifest_list_platforms == set([orchestrator_platform]):
              self.build_image_digests[orchestrator_platform] = current_buildimage
              return
  
          # BuildConfig exists
          build_image, imagestream = self.get_image_info_from_buildconfig()
          if not (build_image or imagestream):
              # get image build from build metadata, which is set for direct builds
              # this is explicitly set by osbs-client, it isn't default OpenShift behaviour
              build_image, imagestream = self.get_image_info_from_annotations()
  
          # if imageStream is used
          if imagestream:
              build_image = self.get_build_image_from_imagestream(imagestream)
  
          # we have build_image with tag, so we can check for manifest list
          if build_image:
              self.check_manifest_list(build_image, orchestrator_platform,
                                       manifest_list_platforms, current_buildimage)
docs: Overrides build_image for worker, to be same as in orchestrator build