-
Notifications
You must be signed in to change notification settings - Fork 24
Site proxy implementation log
Some test pages require content negotiation, and so the files need to be on CVS but not on GH. All the other tests are at w3c.github.io/i18n-tests. The GH tests are much more up to date than the CVS ones.
The entry page for tests so far has been https://www.w3.org/International/tests/, which then points out to GH for most results pages, and CVS for the ones that do content negotiation for encoding and language.
I created a new entry page at https://w3c.github.io/i18n-tests/ (with improved layout).
Since there are some tests that need to be linked to with w3.org urls, it's not possible to map /International/tests to GH.
Things to do:
- create a proxy for /International/i18n-tests/ that points to w3c.github.io/i18n-tests. ✓
- change all the links in the entry page to point to the right url ✓
- add a link to the GH repo, and indicate that there's useful information there ✓
- add a redirect from /international/tests/ to the proxy url for the GH page ✓
- probably ought to redirect people from stale tests on w3.org in case they find their way there, but sounds like a big job
The articles we create need to be ultimately published from CVS because they are content negotiated for language. We currently have a system that probably works for them. We publish drafts to GH (with banners at the top pointing to w3.org if the page is published already). Once a draft has been reviewed and approved, we publish a copy to CVS and point to that.
For those pages, i plan to continue to point to the published version on w3.org most of the time. If i want to point to the draft for review, i expect that it's ok to point directly to the page on GH, rather than to go via a proxy.
There are other pages currently under GH/i18n-drafts that may not need to be on CVS and may be easier to manage with PRs, etc. The GH/i18n-drafts repo corresponds to /International, but only contains a small portion of the page available at /International. We need a proxy, therefore, that doesn't redirect all /International traffic to GH, but allows us to select which folders will be redirected.
Things to do:
- create a /International/i18n-drafts/ proxy that redirects to w3c.github.io/i18n-drafts ✓
- use that proxy url for links to appropriate files
- ensure that support files (css, js, icons, etc) are reached via relative links
Some files in the getting-started folder only exist on GH, and use a different template which is not language negotiated, and which is used for pages just below the home page that mostly contain site-related information. (We tend to refer to the template for those pages as 'level2' pages.) Other files in that directory on GH, however, are drafts for language-negotiated pages that are published to CVS for official use, and use the same template as the articles. I think it would be better to separate pages that use the level2 and the article templates, so that they are not mixed in the same directory.
Things to do:
- move the files using the non-language-negotiated pages to /i18n-drafts/nav/ - there is no corresponding folder of that name on CVS ✓
- make links to those pages point to /International/nav/
Other navigation-related pages are currently only served from w3.org. It would be much nicer to be able to maintain them on GH. Apart from the usual benefits, such as PRs etc., it will be an advantage to have all pages with the same styling using the same CSS and javascript framework files, rather than having to make changes in more than one place.
- create copies of the following files in GH at i18n-drafts/nav
- change links to these files to point to https://www.w3.org/International/i18n-drafts/nav/[filename]
- add redirects to the old file locations
Task forces like sealreq have all their files and data stored exclusively on GH. In the case of sealreq, afrlreq, amlreq, eurlreq, and iip (ilreq), there is no index file at the top level of the repo (because each repo serves a number of languages/scripts). None of the repo names clash with anything under /International, so it should be ok to set up a proxy /International/sealreq (etc) that points to w3c.github.io/sealreq (etc).
Because of the lack of index.html at the top level, visiting https://www.org/International/sealreq/ will show the README file for the repo, which serves as the group home page. This is good, but we'll need to add links to that page so that users can quickly move to the repo when needed.
Things to do:
- set up a proxy to make /International/sealreq/ (etc) point to w3c.github.io/sealreq/ (etc)
- add links to the README pointing to the repo
Issue: pointing to the README page via a w3.org link (eg. https://w3.org/International/afrlreq/) brings up the page, but not the styling, which is linked to using a URL that stars with /amlreq/assets/css/style.css... .
These are also task force repos, but they have an index.html file at the top level, which is the Requirements document. It would be better to point users to the README file which is the group home page, but afaict this is only possible by moving the index file down a level. I don't know a way to display the README alone. This applies to the following repos: alreq, clreq, elreq, hlreq, jlreq, mlreq,tlreq.
I will leave these repos as they are, and point to w3c.github.io/reponame until we can think of a better solution.
For new repos, i'll try to avoid using an index.html file at the top level.