37 lines
1.2 KiB
Bash
Executable file
37 lines
1.2 KiB
Bash
Executable file
#!/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"
|
|
|
|
# TEMPORARY MODIFICATION: -cmake docs are English-only for now
|
|
FOLDER_DIFFERENCES=$(diff $DIFF_FORMAT file_list_en file_list_zh_CN | grep -v "cmake")
|
|
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
|