Merge branch 'eread/switch-to-lychee-for-link-checking' into 'master'

Switch to Lychee for link checking

See merge request https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/7547

Merged-by: Robert Marshall <rmarshall@gitlab.com>
Approved-by: Robert Marshall <rmarshall@gitlab.com>
Reviewed-by: Evan Read <eread@gitlab.com>
Co-authored-by: Evan Read <eread@gitlab.com>
This commit is contained in:
Robert Marshall 2024-04-30 22:41:28 +00:00
commit afa4d72b8f
3 changed files with 25 additions and 21 deletions

View File

@ -1,2 +1,2 @@
ruby 3.1.4
vale 3.0.7
vale 3.4.1

View File

@ -22,11 +22,11 @@ With some adjustments, GitLab can run comfortably on much lower specifications t
[minimum requirements](https://docs.gitlab.com/ee/install/requirements.html) or the
[reference architectures](https://docs.gitlab.com/ee/administration/reference_architectures/).
The following sections contain advice that will allow GitLab to run in environments
The following sections contain advice that allows GitLab to run in environments
that do not meet the minimum requirements. While most GitLab parts should be
functional with these settings in place, you may experience unexpected degradation
of both product functionality and performance. You should be able to run GitLab
with up to 5 developers with individual Git projects no larger than 100MB.
with up to 5 developers with individual Git projects no larger than 100 MB.
## Minimum requirements for constrained environments
@ -34,8 +34,8 @@ The minimum expected specs with which GitLab can be run are:
- Linux-based system (ideally Debian-based or RedHat-based)
- 4 CPU cores of ARM7/ARM64 or 1 CPU core of AMD64 architecture
- Minimum 2GB of RAM + 1GB of SWAP, optimally 2.5GB of RAM + 1GB of SWAP
- 20GB of available storage
- Minimum 2 GB of RAM + 1 GB of SWAP, optimally 2.5 GB of RAM + 1 GB of swap
- 20 GB of available storage
- A storage with a good random I/O performance with an order of preference:
- [SSD](https://en.wikipedia.org/wiki/Solid-state_drive)
- [eMMC](https://magazine.odroid.com/article/emmc-memory-modules-a-simple-guide/)

View File

@ -235,9 +235,9 @@ rubocop:
- if: '$PIPELINE_TYPE =~ /_MR_PIPELINE$/'
needs: []
# Perform documentation linting on Markdown files
docs-lint markdown:
image: registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.19-vale-3.0.7-markdownlint-0.39.0-markdownlint2-0.12.1
# Perform content linting on documentation Markdown files
docs-lint content:
image: registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.19-vale-3.4.1-markdownlint2-0.13.0-lychee-0.14.3
stage: check
cache: {}
needs: []
@ -245,6 +245,19 @@ docs-lint markdown:
script:
# Lint prose
- vale --minAlertLevel error doc
rules:
- if: '$PIPELINE_TYPE =~ /_TEST_PIPELINE$/'
- if: '$PIPELINE_TYPE =~ /_MR_PIPELINE$/'
- if: '$PIPELINE_TYPE == "DOCS_PIPELINE"'
# Perform linting on documentation Markdown files
docs-lint markdown:
image: registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.19-vale-3.4.1-markdownlint2-0.13.0-lychee-0.14.3
stage: check
cache: {}
needs: []
before_script: []
script:
# Lint Markdown
- markdownlint-cli2 'doc/**/*.md'
rules:
@ -252,25 +265,16 @@ docs-lint markdown:
- if: '$PIPELINE_TYPE =~ /_MR_PIPELINE$/'
- if: '$PIPELINE_TYPE == "DOCS_PIPELINE"'
# Perform link checks on published HTML files
# Perform link checking on documentation Markdown files
docs-lint links:
image: registry.gitlab.com/gitlab-org/gitlab-docs/lint-html:alpine-3.19-ruby-3.2.3-a5032206
image: registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.19-vale-3.4.1-markdownlint2-0.13.0-lychee-0.14.3
stage: check
cache: {}
needs: []
before_script: []
script:
# Put documentation in location expected by nanoc and configured in nanoc.yaml. For more information, see:
# https://gitlab.com/gitlab-org/gitlab-docs/-/blob/eee6c4c03621ff13743828ad74a8f0e8b96dfe7c/nanoc.yaml#L43
- mkdir /tmp/omnibus-gitlab
- mv doc/ /tmp/omnibus-gitlab
- cd /tmp/gitlab-docs
# Build HTML from Markdown
- make compile
# Check the internal links and anchors (in parallel)
# Links from the home page aren't checked because they aren't rendered here. For information, see:
# https://gitlab.com/gitlab-org/gitlab-docs/-/blob/eee6c4c03621ff13743828ad74a8f0e8b96dfe7c/content/index.erb#L6
- "parallel time bundle exec nanoc check ::: internal_links internal_anchors"
# Check Markdown links
- lychee --offline --include-fragments doc/**/*.md
rules:
- if: '$PIPELINE_TYPE =~ /_TEST_PIPELINE$/'
- if: '$PIPELINE_TYPE =~ /_MR_PIPELINE$/'