def get_manifests(self, repo_name, digest=None):
if not hasattr(self, '<STR_LIT>'):<EOL><INDENT>self.manifests = {}<EOL><DEDENT>schemaVersions = ['<STR_LIT>', '<STR_LIT>', '<STR_LIT>']<EOL>for schemaVersion in schemaVersions:<EOL><INDENT>manifest = self._get_manifest(repo_name, digest, schemaVersion)<EOL>if manifest is not None:<EOL><INDENT>if schemaVersion == "<STR_LIT>" and "<STR_LIT>" in manifest:<EOL><INDENT>bot.debug('<STR_LIT>')<EOL>url = self._get_layerLink(repo_name, manifest['<STR_LIT>']['<STR_LIT>'])        <EOL>headers = {'<STR_LIT>': manifest['<STR_LIT>']['<STR_LIT>']}<EOL>self.manifests['<STR_LIT>'] = self._get(url, headers=headers)<EOL><DEDENT>self.manifests[schemaVersion] = manifest<EOL><DEDENT><DEDENT>return self.manifests<EOL>
get_manifests calls get_manifest for each of the schema versions,
       including v2 and v1. Version 1 includes image layers and metadata,
       and version 2 must be parsed for a specific manifest, and the 2nd
       call includes the layers. If a digest is not provided
       latest is used.

       Parameters
       ==========
       repo_name: reference to the <username>/<repository>:<tag> to obtain
       digest: a tag or shasum version