ci: commit the catalog only if changed

Compare the newly generated catalog with the old one: if it actually
changed (i.e. there are changes beside the creation date), then push it
to the 'translations' branch.

Reviewed-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Pino Toscano <ptoscano@redhat.com>
This commit is contained in:
Pino Toscano
2020-07-14 11:58:41 -04:00
committed by Cole Robinson
parent 22fe62be34
commit 8ec6ccbddb
+17 -5
View File
@@ -20,7 +20,7 @@ jobs:
steps:
- name: Install deps
run: |
dnf install -y python3-setuptools gettext git
dnf install -y python3-setuptools gettext git diffutils
- uses: actions/checkout@v2
with:
@@ -36,9 +36,21 @@ jobs:
git fetch --all
git rebase remotes/origin/translations
cp po/virt-manager.pot old.pot
./setup.py extract_messages
git commit po/virt-manager.pot \
--message "Refresh translation .pot template"
ec=0
diff -q -I 'POT-Creation-Date' old.pot po/virt-manager.pot || ec=$?
case "${ec}" in
0) ;;
1)
git commit po/virt-manager.pot \
--message "Refresh translation .pot template"
remote_repo="https://${GITHUB_ACTOR}:${{ secrets.GITHUB_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
git push "${remote_repo}" HEAD:translations
remote_repo="https://${GITHUB_ACTOR}:${{ secrets.GITHUB_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
git push "${remote_repo}" HEAD:translations
;;
*)
echo "diff failed with exit status ${ec}" >&2
exit 1
;;
esac