aboutsummaryrefslogtreecommitdiffstats
path: root/devtools/update_translations.sh
blob: 7fcb3d49b2cfd5055adcd00c89ee380de2724198 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash

# GNU MediaGoblin -- federated, autonomous media hosting
# Copyright (C) 2011, 2012 GNU MediaGoblin contributors.  See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# exit if anything fails
set -e

echo "==> checking out master"
git checkout master

echo "==> pulling git master"
git pull

echo "==> pulling present translations"
./bin/tx pull -a

git add mediagoblin/i18n/
git commit -m "Committing present MediaGoblin translations before pushing extracted messages" \
    || true  # Don't fail if nothing to commit

echo "==> Extracting translations"
./bin/pybabel extract -F babel.ini -o mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po .

echo "==> Pushing extracted translations to Transifex"
./bin/tx push -s

# gets the new strings added to all files
echo "==> Re-Pulling translations from Transifex"
./bin/tx pull -a

echo "==> Compiling .mo files"
./bin/pybabel compile -D mediagoblin -d mediagoblin/i18n/

echo "==> Committing to git"
git add mediagoblin/i18n/

git commit -m "Committing extracted and compiled translations" || true

echo "... done.  Now consider pushing up those commits!"