code: def wait_for_parent_image_build(self, nvr):
          
  
          self.log.info('Waiting for Koji build for parent image %s', nvr)
          poll_start = time.time()
          while time.time() - poll_start < self.poll_timeout:
              build = self.koji_session.getBuild(nvr)
              if build:
                  self.log.info('Parent image Koji build found with id %s', build.get('id'))
                  if build['state'] != koji.BUILD_STATES['COMPLETE']:
                      exc_msg = ('Parent image Koji build for {} with id {} state is not COMPLETE.')
                      raise KojiParentBuildMissing(exc_msg.format(nvr, build.get('id')))
                  return build
              time.sleep(self.poll_interval)
          raise KojiParentBuildMissing('Parent image Koji build NOT found for {}!'.format(nvr))
docs: Given image NVR, wait for the build that produced it to show up in koji.
          If it doesn't within the timeout, raise an error.
  
          :return build info dict with 'nvr' and 'id' keys