Abort download of UI bundle if not a zip file
Currently, the UI bundle is downloaded and cached even if it's not a zip file. If the URL is misconfigured, or a proxy intercepts the request, this could result in Antora downloading an HTML file, which leads to an obtuse error. Since the file is cached, the problem persists on subsequent runs.
Here's the process the UI bundle should go through:
- Request the contents of the URL
- Pass the contents through gulp-vinyl-zip to extract it
- if this fails, it should be properly reported (see #516 (closed)) and the file should not be written to the cache
- Use gulp-vinyl-zip to zip and write result to target file
By passing the download through gulp-vinyl-zip, we can be certain that the file we are caching is a valid zip file.