Refactor docs linting scripts
What does this MR do?
While debugging some problems with the scripts, I noticed they could do with a bit of an update.
Testing
- Check out this branch.
- Run
scripts/lint-doc.sh. There should be no errors. - Modify
doc/administration/invalidate_markdown_cache.mddirectory to use a cURL short option. Rerunscripts/lint-doc.shand there should be an error. - Remove frontmatter from
doc/administration/invalidate_markdown_cache.mdand rerunscripts/lint-doc.sh. There should be two errors. - Copy a non-standard space (source one from the script) into
doc/administration/invalidate_markdown_cache.mdand rerunscripts/lint-doc.sh. There should be more errors. - Duplicate the latest entry in
CHANGELOG.md. There should be more errors. - Set executable permissions on a file in
docdirectory. Rerunscripts/lint-doc.shand there should be more errors. - Rename
doc/ci/caching/index.mdtodoc/ci/caching/README.md. Rerunscripts/lint-doc.shand see a couple more test fail. - Rename a docs directory to have an uppercase letter. Rerun
scripts/lint-doc.shand another test fails. - Rename a docs directory to have a dash letter. Rerun
scripts/lint-doc.shand another test fails. - Introduce a Markdown error (for example, give
doc/ci/introduction/index.mdtwo level-one headings). Rerunscripts/lint-doc.shand another test fails. - Introduce a Vale error (for example, update
doc/ci/chatops/index.mdto refer togitlab-ci.ymlinstead of.gitlab-ci.yml. Rerunscripts/lint-doc.shand another test fails. - Uninstall locally-installed Vale and rerun
scripts/lint-doc.sh. If you havedockerornerdctlbinaries, it should successfully run the Vale test with a failure. Feel free to try both binaries (Rancher Desktop makes it easy). - Add more random errors throughout the documentation. Rerun
scripts/lint-doc.shand they should be picked up.
Author's checklist
-
Optional. Consider taking the GitLab Technical Writing Fundamentals course. -
Follow the: -
If you're adding or changing the main heading of the page (H1), ensure that the product tier badge is added. -
If you are a GitLab team member, request a review based on: - The documentation page's metadata.
- The associated Technical Writer.
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 likeDefault behavior when you close an issue. -
The headings (other than the page title) should be active. Instead of Configuring GDK, say something likeConfigure 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