#!/bin/bash -xe PROJECT=$1 COMMIT_MSG="Imported Translations from Transifex" git config user.name "OpenStack Jenkins" git config user.email "jenkins@openstack.org" git config gitreview.username "jenkins" git review -s # See if there is an open change in the transifex/translations topic # If so, get the change id for the existing change for use in the commit msg. change_info=`ssh -p 29418 review.openstack.org gerrit query --current-patch-set status:open project:openstack/$PROJECT topic:transifex/translations owner:jenkins` previous=`echo "$change_info" | grep "^ number:" | awk '{print $2}'` if [ "x${previous}" != "x" ] ; then change_id=`echo "$change_info" | grep "^change" | awk '{print $2}'` # read return a non zero value when it reaches EOF. Because we use a # heredoc here it will always reach EOF and return a nonzero value. # Disable -e temporarily to get around the read. set +e read -d '' COMMIT_MSG </LC_MESSAGES/${PROJECT}.po" --source-lang en --source-file ${PROJECT}/locale/${PROJECT}.pot -t PO --execute # Pull all upstream translations tx pull -a # Update the .pot file python setup.py extract_messages if [ find ${PROJECT}/locale -name '*.po' ] then # Use updated .pot file to update translations python setup.py update_catalog fi # Add all changed files to git git add $PROJECT/locale/* if [ ! `git diff-index --quiet HEAD --` ] then # Commit and review git commit -F- <