def ensureImage(self, client):
    images = client.images(name=self.config.repo)
    if images:
      for image in images:
        if 'RepoTags' in image.keys() and self.config.getFullImage() in image['RepoTags']:
          return

    try:
      client.pull(self.config.repo, tag=self.config.tag)
    except Exception as e:
      fail('Could not pull repo ' + self.config.repo, component=self, exception=str(e))
This happens after schema validation, and it checks the viability of the
dataset/ETHPy150Open DevTable/gantryd/runtime/component.py/Component.ensureImage--crossover with--dataset/ETHPy150Open memsql/memsql-loader/memsql_loader/cli/load.py/RunLoad.validate_conditions