jquery / infrastructure-puppet

Puppet configuration for jQuery Infrastructure servers.
MIT License
6 stars 9 forks source link

Decom view.jquery.com and other view sites #49

Closed Krinkle closed 2 years ago

Krinkle commented 2 years ago

Before we do, let's check traffic logs for any major constumers we could give a nice heads up. Then redirect the URLs to one of releases.jquery.com, the project home page, or the GitHub repo.

/cc @jorydotcom @mgol

Krinkle commented 2 years ago

@brianwarner The following stage domains may be removed from DNS, and anywhere else (e.g. Cloudflare config or for future certificates):

stage.view.jqueryui.com
stage.view.jqueryui.org

stage.view.jquery.com
stage.view.jquery.org

stage.view.jquerymobile.com

stage.view.css-chassis.com

It seems these are already unavailable, but just in case there's any references left, feel free to remove these without redirect since they were only for our own internal use during development.

Krinkle commented 2 years ago

OK. The redirects are in place.

$ curl -I 'https://view.jquery.com/bar' --connect-to '::wp-01.ops.jquery.net'
Location: https://releases.jquery.com/jquery/

$ curl -I 'http://view.jquery.org/bar' --connect-to '::wp-01.ops.jquery.net'
Location: https://releases.jquery.com/jquery/

$ curl -I 'https://view.jqueryui.com/bar' --connect-to '::wp-01.ops.jquery.net'
Location: https://releases.jquery.com/ui/

$ curl -I 'https://view.jquerymobile.com/bar' --connect-to '::wp-01.ops.jquery.net'
Location: https://releases.jquery.com/mobile/

@brianwarner To make this live the view domains can be updated in Cloudflare to point to wp-01.ops instead of view-01.ops.

brianwarner commented 2 years ago

Thanks @Krinkle, I checked and the stage.view.* DNS is already removed, so should be good there.

The other changes are in place now.

mgol commented 2 years ago

@Krinkle I thought we were going to redirect to GitHub, not the releases site? The view sites provided access to the file structure at specific tags & branches so it's closer to what GitHub provides than to what's on the releases site.

Krinkle commented 2 years ago

@mgol Yeah, I thought maybe the releases site is more useful since that's where you can actually download the builds similar to what the view site was producing (in addition to serving source code as-is). Looking at access logs, there isn't much. But the little that is there, seems to mostly be to files in dist/ directories. I guess that's biased because that's largely indirect traffic from people making the terrible mistake of hotlinking. And people manually browsing it, even if someone still does that, or if someone follows a link from a book or other immutable/archived medium, then that is naturally going to be a minority of traffic compared to hotlinks.

It's hard to know what people expect from it exactly, and I don't remember what if anything it was originally promoted for.

When looking at the GitHub repo, it seems there are a lot of steps and thinking involved in order to navigate and find your way to the jQuery CDN (without getting side-tracked into anti-patterns like cloning Git, or hotlinking GitHub, or referencing third-party npm mirrors). On the other hand, if we link to the CDN viewer and someone wants the source code instead, that seems like an easier problem to solve manually.

Does this sound compelling? I don't mind changing the redirects though. I have a patch ready to go locally that changes the redirects to GitHub instead. Let me know what you think after reading this!

mgol commented 2 years ago

Hmm, you might be right with regards to the dist files. Are we redirecting specific files or just the whole domains, though? If we also redirect files then at least the non-dist ones would be the most useful to redirect to an equivalent URL on GitHub. That said, I'm not 100% convinced this is necessary so I'm fine with you going with your gut feeling here. :)