Skip to content

Commit

Permalink
Introduced a CI check if folders with localized documentation are in …
Browse files Browse the repository at this point in the history
…sync, i.e. if they contain the same list of files
  • Loading branch information
krzychb committed Mar 16, 2018
1 parent 7e268ad commit 621076f
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 1 deletion.
4 changes: 3 additions & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,9 @@ build_docs:
- docs/zh_CN/_build/html
expire_in: 1 mos
script:
- cd docs/en
- cd docs
- ./check_lang_folder_sync.sh
- cd en
- make gh-linkcheck
- make html
- ../check_doc_warnings.sh
Expand Down
36 changes: 36 additions & 0 deletions docs/check_lang_folder_sync.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/bin/bash
#
# Check if folders with localized documentation are in sync
#
# 1. Traverse each folder with language version and generate a sorted list
# of all the files inside
# 2. Compare the sorted lists of files and flag differences
#
# Note:
# All differences between folders with language versions should be resolved
# before releasing documentation
#

RESULT=0
STARS='***************************************************'

find en -type f | cut -d/ -f2- | sort > file_list_en
find zh_CN -type f | cut -d/ -f2- | sort > file_list_zh_CN

# format is to display new or different filenames
DIFF_FORMAT="--unchanged-line-format= --old-line-format=[en]:%L --new-line-format=[zh_CN]:%L"

FOLDER_DIFFERENCES=$(diff $DIFF_FORMAT file_list_en file_list_zh_CN)
if ! [ -z "$FOLDER_DIFFERENCES" ]; then
echo "$STARS"
echo "Build failed due to the following differences in 'en' and 'zh_CN' folders:"
echo "$FOLDER_DIFFERENCES"
echo "$STARS"
echo "Please synchronize contents of 'en' and 'zh_CN' folders to contain files with identical names"
RESULT=1
fi

# remove temporary files
rm file_list_en file_list_zh_CN

exit $RESULT

0 comments on commit 621076f

Please sign in to comment.