Open macdabby opened 6 years ago
That placeholder URL will get picked up by the S3_HOST_MATCHER
: https://github.com/WhoopInc/vagrant-s3auth/blob/fb112e99b4e9d4228ffc1d83c02ee0f3c79ffe20/lib/vagrant-s3auth/util.rb#L47-L51
At least, it will in theory. I'll look into this.
Interesting, I was just able to test this on another network. On Network A (tmobile) nonexistingdomain.com returns a DNS entry for Network A's search/notfound page with HTTP code 200. On network B, DNS returns no entries. On network B, I do not get the error mentioned, and the box starts up just fine.
So it seems like maybe this is what's happening: 1) Vagrant attempts to load http://s3-placeholder.amazonaws.com/path/to/box 2) Only if that fails, the URL is reprocessed in the S3_HOST_MATCHER mentioned above to the correct URL. 3) If the s3-placeholder.amazonaws.com URL returns a 200 with content, vagrant attempts to parse this content as the expected response.
Additional note: This had nothing to do with the upgrade, that was just coincidence.
Ah, yes, that theory sounds exactly right! vagrant-s3auth tries to be a good citizen by letting Vagrant attempt to download the box first. If and only if the download of that box fails does vagrant-s3auth kick in. We look for failures at the HTTP layer, though, so TMobile's garbage looks like valid box metadata until a higher layer of Vagrant actually tries to parse it as JSON.
I'm struggling to remember why I switched from "http://s3.amazonaws.com" to "http://s3-placeholder.amazonaws.com", and the commit message, er, is less than helpful (https://github.com/WhoopInc/vagrant-s3auth/commit/ee6086bce3cebc74ab1d0da361d8ec9cacbe6e8e). I'll have some time tomorrow to dig in.
+1
This also happens for virgin media customers in the UK. By default the network turns on one of those annoying search results pages. So http://s3-placeholder.amazonaws.com does indeed resolve. :-/
The final result is that a chunk of html gets downloaded and vagrant fails to untar it with a message like this:-
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'propertyfile/standard_1404' could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Box file was not detected as metadata. Adding it directly...
==> default: Adding box 'propertyfile/standard_1404' (v0) for provider: virtualbox
default: Downloading: s3://1psg-infrastructure/PropertyFile/vagrant/1404/standard.json
default: Signing S3 request with key '<REDACTED>' loaded from profile '1psgdev'
The box failed to unpackage properly. Please verify that the box
file you're trying to add is not corrupted and that enough disk space
is available and then try again.
The output from attempting to unpackage (if any):
bsdtar: Error opening archive: Unrecognized archive format
What's the status on this one? (i'm +1 as well)
I am also now seeing this, again because of the Virgin Media search page (which won't turn off despite me trying to turn it off). Any update on this please?
Annoyingly it looks a lot like this project has been abandoned :/
Annoyingly it looks a lot like this project has been abandoned :/
Indeed. I haven't been employed by @WhoopInc in six years, and I doubt they're even still using this plugin. CI broke constantly due to constant Travis CI, Vagrant, and AWS changes, which were too exhausting for me to keep up with in my free time.
If you'd like to submit a PR, I'd be delighted to take a look provided you can get it to pass tests. See my comment here: https://github.com/WhoopInc/vagrant-s3auth/pull/39#issuecomment-504586063.
Annoyingly it looks a lot like this project has been abandoned :/
Indeed. I haven't been employed by @WhoopInc in six years, and I doubt they're even still using this plugin. CI broke constantly due to constant Travis CI, Vagrant, and AWS changes, which were too exhausting for me to keep up with in my free time.
If you'd like to submit a PR, I'd be delighted to take a look provided you can get it to pass tests. See my comment here: #39 (comment).
I would love to but I don't know any Ruby at all unfortunately :( I've fixed this for now on Virgin Media by switching to google's DNS service.
I just started seeing this when updating to vagrant 2.0.1 and virtualbox 5.2.x, however I still see it now when I downgrade to vagrant 1.9.1 and virtualbox 5.1.x
vagrant-s3auth is v1.3.2
In the vagrant file I have defined
I get the following output:
My ISP is tmobile and this is their default response for requesting a page where the DNS can't be found. Notice that it's trying to access
http://s3-placeholder.amazonaws.com/path/to/box
with the domains3-placeholder...
. I believe that should be something likeus-east-1.amazonaws.com
or something like that. I looked in the source for this plugin but i wasn't able to understand where it replaces this placeholder.