Translations #94
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Translations | |
on: | |
schedule: | |
- cron: '0 0 * * *' | |
jobs: | |
crowdin: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
ref: main | |
token: ${{secrets.INKSTITCH_BUILDS_GITHUB_TOKEN}} | |
- name: checkout submodules | |
run: | | |
git submodule update --init --recursive | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.8.x' | |
- env: | |
CROWDIN_API_KEY: ${{ secrets.CROWDIN_API_V2_KEY }} | |
CROWDIN_PROJECT_ID: "299419" | |
run: | | |
git config --global user.email "[email protected]" | |
git config --global user.name "Ink/Stitch Crowdin integration" | |
wget --quiet https://downloads.crowdin.com/cli/v3/crowdin-cli.zip | |
unzip -j crowdin-cli.zip | |
sudo apt-get update | |
sudo apt install gettext | |
# for wxPython | |
sudo apt install glib-networking libsdl2-dev libsdl2-2.0-0 | |
# for PyGObject | |
sudo apt install libgirepository1.0-dev libcairo2-dev | |
# for shapely | |
sudo apt install libgeos-dev build-essential libgtk-3-dev | |
python -m pip install --upgrade pip | |
python -m pip install wheel | |
python -m pip install pycairo | |
python -m pip install PyGObject | |
python -m pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-20.04/wxPython-4.1.1-cp38-cp38-linux_x86_64.whl | |
python -m pip install -r requirements.txt | |
python -m pip install Babel | |
make messages.po | |
echo "uploading messages.po to crowdin" | |
java -jar crowdin-cli.jar -v upload -b main -T "$CROWDIN_API_KEY" -i "$CROWDIN_PROJECT_ID" | |
echo "downloading new translations" | |
java -jar crowdin-cli.jar -v pull -b main -T "$CROWDIN_API_KEY" -i "$CROWDIN_PROJECT_ID" | |
# Try to only commit if translations changed. Crowdin will update all | |
# files when a new translation string is added but we don't need to | |
# commit those until folks actually translate the new strings. | |
if git diff translations | grep -qE '^[-+]msgstr ".+"$'; then | |
git add translations | |
git commit -m "new translations from Crowdin" | |
git push https://github.com/inkstitch/inkstitch main | |
fi |