Browse Source

[translations] ./manage rename shell functions to integrate weblate

Functions implemented to run *Weblate* workflows should use prefix 'weblate.':

- babel.setup.translations.worktree --> weblate.translations.worktree

  Create git worktree ${TRANSLATIONS_WORKTREE} and checkout branch
  'translations' from Weblate's counterpart (weblate) of the SearXNG
   (origin)::

       remote weblate https://weblate.bubu1.eu/git/searxng/searxng/

- babel.weblate.to.translations     --> weblate.to.translations

  Update 'translations' branch of SearXNG (origin) with last additions from
  Weblate.

- babel.translations.to.master      --> weblate.translations.commit

  Update 'translations' branch of SearXNG (origin) with last additions from
  Weblate.  Copy the changes to the master branch, compile translations and
  create a commit in the local branch (master)

- babel.master.to.translations      --> weblate.push.translations

  Push *translation changes* from SearXNG (origin) to Weblate's
  counterpart (weblate).

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Markus Heiser 3 years ago
parent
commit
97355672cd

+ 1 - 1
.github/workflows/integration.yml

@@ -127,7 +127,7 @@ jobs:
       id: update
       run: |
         git restore utils/brand.env
-        make V=1 babel.master.to.translations
+        make V=1 weblate.push.translations
 
   dockers:
     name: Docker

+ 1 - 1
.github/workflows/translations-update.yml

@@ -36,7 +36,7 @@ jobs:
         git config --global user.name "searxng-bot"
     - name: Merge and push transation updates
       run: |
-        make V=1 babel.translations.to.master
+        make V=1 weblate.translations.commit
     - name: Create Pull Request
       id: cpr
       uses: peter-evans/create-pull-request@v3

+ 1 - 1
Makefile

@@ -77,7 +77,7 @@ test.shell:
 # wrap ./manage script
 
 MANAGE += buildenv
-MANAGE += babel.translations.to.master babel.master.to.translations
+MANAGE += weblate.translations.commit weblate.push.translations
 MANAGE += data.all data.languages data.useragents data.osm_keys_tags
 MANAGE += docs.html docs.live docs.gh-pages docs.prebuild docs.clean
 MANAGE += docker.build docker.push docker.buildx

+ 2 - 2
docs/dev/translation.rst

@@ -49,12 +49,12 @@ only the
 
    SearXNG's PR workflow to be in sync with Weblate
 
-Sync from *origin* to *weblate*: ``make babel.master.to.translations``
+Sync from *origin* to *weblate*: using ``make weblate.push.translations``
   For each commit on the ``master`` branch of SearXNG *origin* the GitHub job
   :origin:`babel / Update translations branch
   <.github/workflows/integration.yml>` checks for updated translations.
 
-Sync from *weblate* to *origin*: ``make babel.translations.to.master``
+Sync from *weblate* to *origin*: using ``make weblate.translations.commit``
   Every Friday, the GitHub workflow :origin:`babel / create PR for additons from
   weblate <.github/workflows/translations-update.yml>` creates a PR with the
   updated translation files:

File diff suppressed because it is too large
+ 0 - 0
docs/dev/translation.svg


+ 18 - 9
manage

@@ -123,7 +123,8 @@ buildenv() {
 
 TRANSLATIONS_WORKTREE="$CACHE/translations"
 
-babel.setup.translations.worktree() {
+weblate.translations.worktree() {
+
     # Create git worktree ${TRANSLATIONS_WORKTREE} and checkout branch
     # 'translations' from Weblate's counterpart (weblate) of the SearXNG
     # (origin).
@@ -147,7 +148,8 @@ babel.setup.translations.worktree() {
     )
 }
 
-babel.weblate.to.translations() {
+weblate.to.translations() {
+
     # Update 'translations' branch of SearXNG (origin) with last additions from
     # Weblate.
 
@@ -168,7 +170,8 @@ babel.weblate.to.translations() {
         pyenv.cmd wlc commit
 
         # get the translations in a worktree
-        babel.setup.translations.worktree
+        weblate.translations.worktree
+
         pushd "${TRANSLATIONS_WORKTREE}"
         git remote update weblate
         git merge weblate/translations
@@ -178,7 +181,8 @@ babel.weblate.to.translations() {
     dump_return $?
 }
 
-babel.translations.to.master() {
+weblate.translations.commit() {
+
     # Update 'translations' branch of SearXNG (origin) with last additions from
     # Weblate.  Copy the changes to the master branch, compile translations and
     # create a commit in the local branch (master)
@@ -187,12 +191,17 @@ babel.translations.to.master() {
     (   set -e
         # lock change on weblate
         pyenv.cmd wlc lock
-        babel.setup.translations.worktree
+
+        # get translations branch in git worktree (TRANSLATIONS_WORKTREE)
+        weblate.translations.worktree
         existing_commit_hash=$(cd "${TRANSLATIONS_WORKTREE}"; git log -n1  --pretty=format:'%h')
+
         # pull weblate commits
-        babel.weblate.to.translations
+        weblate.to.translations
+
         # copy the changes to the master branch
         cp -rv --preserve=mode,timestamps "${TRANSLATIONS_WORKTREE}/searx/translations" "searx"
+
         # compile translations
         build_msg BABEL 'compile translation catalogs into binary MO files'
         pyenv.cmd pybabel compile --statistics \
@@ -211,7 +220,7 @@ babel.translations.to.master() {
     dump_return $exitcode
 }
 
-babel.master.to.translations() {
+weblate.push.translations() {
 
     # Push *translation changes* from SearXNG (origin) to Weblate's counterpart
     # (weblate).
@@ -235,7 +244,7 @@ babel.master.to.translations() {
         pyenv.cmd wlc lock
 
         # get translations branch in git worktree (TRANSLATIONS_WORKTREE)
-        babel.setup.translations.worktree
+        weblate.translations.worktree
 
         # update messages.pot in the master branch
         build_msg BABEL 'extract messages from source files and generate POT file'
@@ -258,7 +267,7 @@ babel.master.to.translations() {
         popd
 
         # merge weblate commits into the translations branch
-        babel.weblate.to.translations
+        weblate.to.translations
 
         # restore messages.pot in the translations branch
         pushd "${TRANSLATIONS_WORKTREE}"

Some files were not shown because too many files changed in this diff