
Prior to this change we attempted to push translations made direclty in the git tree to transifex allowing translations to be made via git directly or in transifex. Simplify the process to avoid cases where the transifex client will refuse to update local translations because they are newer than those in transifex. This makes transifex the only source of translation updates. In addition to simplifying the process force tx pull -a operations as a way to force the updates if we end up in this state. Change-Id: I171b3b1a29cbeaab0c4d9de3ab1bd3a6b933ea53
47 lines
1.4 KiB
Bash
Executable File
47 lines
1.4 KiB
Bash
Executable File
#!/bin/bash -xe
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
PROJECT=$1
|
|
|
|
if [ ! `echo $ZUUL_REFNAME | grep master` ]
|
|
then
|
|
exit 0
|
|
fi
|
|
|
|
git config user.name "OpenStack Jenkins"
|
|
git config user.email "jenkins@openstack.org"
|
|
|
|
# Initialize the transifex client, if there's no .tx directory
|
|
if [ ! -d .tx ] ; then
|
|
tx init --host=https://www.transifex.com
|
|
fi
|
|
tx set --auto-local -r ${PROJECT}.${PROJECT}-translations "${PROJECT}/locale/<lang>/LC_MESSAGES/${PROJECT}.po" --source-lang en --source-file ${PROJECT}/locale/${PROJECT}.pot -t PO --execute
|
|
|
|
# Update the .pot file
|
|
python setup.py extract_messages
|
|
PO_FILES=`find ${PROJECT}/locale -name '*.po'`
|
|
if [ -n "$PO_FILES" ]
|
|
then
|
|
# Use updated .pot file to update translations
|
|
python setup.py update_catalog --no-fuzzy-matching
|
|
fi
|
|
# Add all changed files to git
|
|
git add $PROJECT/locale/*
|
|
|
|
if [ ! `git diff-index --quiet HEAD --` ]
|
|
then
|
|
# Push .pot changes to transifex
|
|
tx --debug --traceback push -s
|
|
fi
|