Skip to content

Allow /help to accept either index.md or _index.md as a docs index page

What does this MR do?

Something that we'll need for gitlab-org/technical-writing-group/gitlab-docs-hugo#62 (closed) is for /help to work for index.md files or _index.md files, because Hugo requires that we eventually move from index.md to _index.md.

This MR updates the /help feature:

  • Main page to set an index page alternative if it sees _index.md.
  • To find a _index.md file even if index.md or index.html is requested (supports older links).

Validation instructions

  1. Set up GDK on master branch of GitLab.
  2. Check out this branch as your GitLab branch.
  3. Open GitLab in GDK and turn off /help redirection: https://docs.gitlab.com/ee/administration/settings/help_page.html#redirect-help-pages.
  4. Navigate to: https://<gdk_url>/help. The content at https://docs.gitlab.com/ee/index.html should appear in a simplified form.
  5. In the gitlab codebase, rename doc/index.md to doc/_index.md.
  6. Reload https://<gdk_url>/help and the same content should appear.
  7. In the gitlab codebase, rename doc/_index.md to doc/test.md.
  8. Reload https://<gdk_url>/help and GitLab will error.
  9. Navigate to https://<gdk_url>/help/user/index.md. The content at https://docs.gitlab.com/ee/user/index.html should appear in a simplified form.
  10. Navigate to https://<gdk_url>/help/user/index.html. The content at https://docs.gitlab.com/ee/user/index.html should appear in a simplified form.
  11. Navigate to https://<gdk_url>/help/user/index. The content at https://docs.gitlab.com/ee/user/index.html should appear in a simplified form.
  12. In the gitlab codebase, rename doc/user/index.md to doc/user/_index.md.
  13. Navigate to https://<gdk_url>/help/user/index.md. The content at https://docs.gitlab.com/ee/user/index.html should appear in a simplified form.
  14. Navigate to https://<gdk_url>/help/user/index.html. The content at https://docs.gitlab.com/ee/user/index.html should appear in a simplified form.
  15. Navigate to https://<gdk_url>/help/user/index. The content at https://docs.gitlab.com/ee/user/index.html should appear in a simplified form.
  16. In the gitlab codebase, rename doc/user/_index.md to doc/user/test.md.
  17. Reload https://<gdk_url>/help/user/index and GitLab will 404.

Author's checklist

If you are a GitLab team member and only adding documentation, do not add any of the following labels:

  • ~"frontend"
  • ~"backend"
  • ~"type::bug"
  • ~"database"

These labels cause the MR to be added to code verification QA issues.

Reviewer's checklist

Documentation-related MRs should be reviewed by a Technical Writer for a non-blocking review, based on Documentation Guidelines and the Style Guide.

If you aren't sure which tech writer to ask, use roulette or ask in the #docs Slack channel.

  • If the content requires it, ensure the information is reviewed by a subject matter expert.
  • Technical writer review items:
    • Ensure docs metadata is present and up-to-date.
    • Ensure the appropriate labels are added to this MR.
    • Ensure a release milestone is set.
    • If relevant to this MR, ensure content topic type principles are in use, including:
      • The headings should be something you'd do a Google search for. Instead of Default behavior, say something like Default behavior when you close an issue.
      • The headings (other than the page title) should be active. Instead of Configuring GDK, say something like Configure GDK.
      • Any task steps should be written as a numbered list.
      • If the content still needs to be edited for topic types, you can create a follow-up issue with the docs-technical-debt label.
  • Review by assigned maintainer, who can always request/require the reviews above. Maintainer's review can occur before or after a technical writer review.
Edited by Evan Read

Merge request reports