This change only affects non-index pages e.g.
http://vitess.io/getting-started/local-instance.html.
To make sure that the previous URLs are still working, I've added
redirects for them.
This change also broke the internal links. Note that I did not fix them
and instead rewrote all of them with the "%{ link ... %}" tag. This has
the advantage that Jekyll now checks if the linked file exists.
Other changes:
- Updated "jekyll" and "liquid" versions. I'll rebuild the
"publish-site" Docker image shortly after this is merged.
- Removed gem "jekyll-mentions" because it was unused and broke with the
newer versions.
- Changed "page.bodyclass" to "layout.bodyclass" in the template. This
is required due to the upgrade to Jekyll 3. See:
http://jekyllrb.com/docs/upgrading/2-to-3/#layout-metadata
For example, http://vitess.io/doc/TopologyService/ was published but
never reachable from any navigation entry.
Stopping to publish /doc/ pages will also avoid duplication e.g.
- http://vitess.io/doc/Reparenting/ vs.
- http://vitess.io/user-guide/reparenting.html
Instead, to publish a page, an explicit *.md file must be created in /vitess.io and it must be linked in the navigation file vitess.io/_includes/left-nav-menu.html.
I did this for TopologyService.md and created vitess.io/user-guide/topology-service.md because it is a relevant page which is linked from several other pages.
This change also allows us to remove the script replace_doc_link.py. It
replaced github.com links (e.g.
https://github.com/youtube/vitess/blob/master/doc/TopologyService.md)
with a vitess.io link. Since we're always using absolute links anyway
(e.g. /user-guide/topology-service.html), this is no longer necessary.
By getting rid of the tool and the extra doc files (published under
_post), we can also avoid creating a copy when
running preview-site.sh. This way, Jekyll can watch the original folder
and automatically generate pages when something changes.
To make this work, I had to add the following symlinks:
vitess.io/_includes/doc
vitess.io/_includes/index.md
vitess.io/_includes/README.md
After this change, the following files in doc/ are not published on vitess.io:
- LifeOfAQuery.md
- Monitoring.md
- Production.md
- ReplicationStreamTiming.md
- TestingOnARamDisk.md
- TwoPhaseCommit.md
- V3HighLevelDesign.md
- V3VindexDesign.md
- Vision.md
- VTGateV3Features.md
Except for TestingOnARamDisk.md they also haven't been visible on vitess.io before. That's because no other page did link to them.
* Add Launching Vitess to vitess.io
* Fix markdown links.
* Fix Guides link
* split LaunchingVitess.md into subsections.
* rename Preparing for Production to Production Planning
* Turn TODOs into HTML comments
* Elaborate on cluster orchestration
* Use consistent capitalization of subheadings.
* Elaborate on application query patterns
* Elaborate on failover troubleshooting.
* Elaborate on additional MySQL parameters.
* Describe init_db.sql
* Document Orchestrator integration