Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-12-23 06:10:18 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-12-23 06:10:18 +0300
commitda03179135d66e2eb5d566305f120972d78466fd (patch)
tree09a84db6518cd917f7407f9af6f813c2912379eb /scripts
parentdd4870ad6c5d77d8c4dfcb3d0d9274c4fd817d3d (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/lint-doc.sh25
1 files changed, 19 insertions, 6 deletions
diff --git a/scripts/lint-doc.sh b/scripts/lint-doc.sh
index 68dfac95ef6..1c934c07608 100755
--- a/scripts/lint-doc.sh
+++ b/scripts/lint-doc.sh
@@ -119,19 +119,24 @@ else
fi
fi
-function run_locally_or_in_docker() {
+function run_locally_or_in_container() {
local cmd=$1
local args=$2
if hash ${cmd} 2>/dev/null
then
$cmd $args
- elif hash docker 2>/dev/null
+ # When using software like Rancher Desktop, both nerdctl and docker binaries are available
+ # but only one is configured. To check which one to use, we need to probe each runtime
+ elif (hash nerdctl 2>/dev/null) && (nerdctl info 2>&1 1>/dev/null)
then
- docker run -t -v ${PWD}:/gitlab -w /gitlab --rm registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.16-vale-2.20.1-markdownlint-0.32.2 ${cmd} ${args}
+ nerdctl run -t -v "${PWD}:/gitlab" -w /gitlab --rm registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.16-vale-2.20.1-markdownlint-0.32.2 ${cmd} ${args}
+ elif (hash docker 2>/dev/null) && (docker info 2>&1 1>/dev/null)
+ then
+ docker run -t -v "${PWD}:/gitlab" -w /gitlab --rm registry.gitlab.com/gitlab-org/gitlab-docs/lint-markdown:alpine-3.16-vale-2.20.1-markdownlint-0.32.2 ${cmd} ${args}
else
echo
- echo " ✖ ERROR: '${cmd}' not found. Install '${cmd}' or Docker to proceed." >&2
+ echo " ✖ ERROR: '${cmd}' not found. Install '${cmd}' or a container runtime (Docker/Nerdctl) to proceed." >&2
echo
((ERRORCODE++))
fi
@@ -151,11 +156,19 @@ if [ -z "${MD_DOC_PATH}" ]
then
echo "Merged results pipeline detected, but no markdown files found. Skipping."
else
- run_locally_or_in_docker 'markdownlint' "--config .markdownlint.yml ${MD_DOC_PATH} --rules doc/.markdownlint/rules"
+ yarn markdownlint --config .markdownlint.yml ${MD_DOC_PATH} --rules doc/.markdownlint/rules
+
+ if [ $? -ne 0 ]
+ then
+ echo
+ echo '✖ ERROR: Markdownlint failed with errors.' >&2
+ echo
+ ((ERRORCODE++))
+ fi
fi
echo '=> Linting prose...'
-run_locally_or_in_docker 'vale' "--minAlertLevel error --output=doc/.vale/vale.tmpl ${MD_DOC_PATH}"
+run_locally_or_in_container 'vale' "--minAlertLevel error --output=doc/.vale/vale.tmpl ${MD_DOC_PATH}"
if [ $ERRORCODE -ne 0 ]
then