'Return the list of archive names defined in the capsule manifest.  This method will validate
the manifest by ensuring all <repository> tag sets contain a valid <archive> sub-element.'

def get_archives_from_manifest(self, manifest_file_path):

    archives = []
    error_message = ''
    (manifest_tree, error_message) = xml_util.parse_xml(manifest_file_path)
    if error_message:
        return (archives, error_message)
    manifest_root = manifest_tree.getroot()
    for elem in manifest_root:
        if (elem.tag != 'repository'):
            error_message = 'All    level    one    sub-elements    in    the    manifest.xml    file    must    be    <repository>    tag    sets.        '
            error_message += ('The    tag    <b><%s></b>    is    invalid.' % str(elem.tag))
            return ([], error_message)
        archive_file_name = None
        for repository_elem in elem:
            if (repository_elem.tag == 'archive'):
                archive_file_name = repository_elem.text
                break
        if (archive_file_name is None):
            error_message = ('The    %s    tag    set    is    missing    a    required    <archive>    sub-element.' % str(elem.tag))
            return ([], error_message)
        archives.append(archive_file_name)
    return (archives, error_message)
