mirror of
				https://github.com/spantaleev/matrix-docker-ansible-deploy.git
				synced 2025-10-28 13:57:57 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			62 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| # SPDX-FileCopyrightText: 2024 Slavi Pantaleev <slavi@devture.com>
 | |
| # SPDX-FileCopyrightText: 2024 Suguru Hirahara <acioustick@noreply.codeberg.org>
 | |
| #
 | |
| # SPDX-License-Identifier: AGPL-3.0-or-later
 | |
| 
 | |
| # This script builds the translated result (translated project) for a given language in the `translations/<language>/` directory.
 | |
| 
 | |
| set -euxo pipefail
 | |
| 
 | |
| if [ $# -ne 1 ]; then
 | |
|     echo "Usage: $0 <language>"
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| LANGUAGE=$1
 | |
| 
 | |
| base_path="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
 | |
| 
 | |
| if [ ! -f ${base_path}/i18n/locales/${LANGUAGE}/LC_MESSAGES/README.po ]; then
 | |
|     echo "Locales for ${LANGUAGE} not found. Please run the `sync-translation-templates-to-locales.sh` script first."
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| # Prepare a clean build directory
 | |
| if [ -d ${base_path}/i18n/translated-result-build-${LANGUAGE} ]; then
 | |
|     rm -rf ${base_path}/i18n/translated-result-build-${LANGUAGE}
 | |
| fi
 | |
| mkdir -p ${base_path}/i18n/translated-result-build-${LANGUAGE}
 | |
| 
 | |
| # Build the translated documentation
 | |
| sphinx-build \
 | |
|     -b markdown \
 | |
|     -D language="${LANGUAGE}" \
 | |
|     ${base_path}/ \
 | |
|     ${base_path}/i18n/translated-result-build-${LANGUAGE}
 | |
| 
 | |
| # Clean up .mo files produced during the build.
 | |
| # We don't commit them to the repository anyway, so they can be left alone,
 | |
| # but we'd rather keep things clean anyway.
 | |
| find ${base_path}/i18n/locales/${LANGUAGE} -type f -name '*.mo' -delete
 | |
| 
 | |
| # Clean up the build directory
 | |
| rm -rf ${base_path}/i18n/translated-result-build-${LANGUAGE}/.doctrees
 | |
| 
 | |
| # Copy assets
 | |
| cp -r ${base_path}/docs/assets ${base_path}/i18n/translated-result-build-${LANGUAGE}/docs/assets/
 | |
| 
 | |
| # Remove the old result directory for this language
 | |
| if [ -d ${base_path}/i18n/translations/${LANGUAGE} ]; then
 | |
|     rm -rf ${base_path}/i18n/translations/${LANGUAGE}
 | |
| fi
 | |
| 
 | |
| # Make sure the `translations/` directory exists
 | |
| if [ ! -d ${base_path}/i18n/translations ]; then
 | |
|     mkdir -p ${base_path}/i18n/translations
 | |
| fi
 | |
| 
 | |
| # Relocate the built result to translations/<language>
 | |
| mv ${base_path}/i18n/translated-result-build-${LANGUAGE} ${base_path}/i18n/translations/${LANGUAGE}
 |