Merge pull request #293 from dalf/fix-290
[fix] translation: lock weblate only when there is an actual change of messages.pot
This commit is contained in:
		
						commit
						b57d776edb
					
				
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 18 KiB | 
							
								
								
									
										23
									
								
								manage
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								manage
									
									
									
									
									
								
							| @ -239,16 +239,14 @@ weblate.push.translations() { | ||||
| 
 | ||||
|     local messages_pot diff_messages_pot last_commit_hash last_commit_detail \ | ||||
|           last_commit_message exitcode | ||||
|     messages_pot="${TRANSLATIONS_WORKTREE}/searx/translations/messages.pot" | ||||
|     (   set -e | ||||
|         # lock change on weblate | ||||
|         pyenv.cmd wlc lock | ||||
| 
 | ||||
|         # get translations branch in git worktree (TRANSLATIONS_WORKTREE) | ||||
|         weblate.translations.worktree | ||||
| 
 | ||||
|         # update messages.pot in the master branch | ||||
|         build_msg BABEL 'extract messages from source files and generate POT file' | ||||
|         messages_pot="${TRANSLATIONS_WORKTREE}/searx/translations/messages.pot" | ||||
|         pyenv.cmd pybabel extract -F babel.cfg \ | ||||
|                 -o "${messages_pot}" \ | ||||
|                 "searx/" | ||||
| @ -258,8 +256,25 @@ weblate.push.translations() { | ||||
|                             git diff -- "searx/translations/messages.pot") | ||||
|         if ! echo "$diff_messages_pot" | grep -qE "[\+\-](msgid|msgstr)"; then | ||||
|             build_msg BABEL 'no changes detected, exiting' | ||||
|             return 0 | ||||
|             return 42 | ||||
|         fi | ||||
|         return 0 | ||||
|     ) | ||||
|     exitcode=$? | ||||
|     if [ "$exitcode" -eq 42 ]; then | ||||
|         return 0 | ||||
|     fi | ||||
|     if [ "$exitcode" ]; then | ||||
|        return $exitcode | ||||
|     fi | ||||
|     ( | ||||
|         set -e | ||||
| 
 | ||||
|         # lock change on weblate | ||||
|         # weblate may add commit(s) since the call to "weblate.translations.worktree". | ||||
|         # this is not a problem because after this line, "weblate.to.translations" | ||||
|         # calls again "weblate.translations.worktree" which calls "git pull" | ||||
|         pyenv.cmd wlc lock | ||||
| 
 | ||||
|         # save messages.pot in the translations branch for later | ||||
|         pushd "${TRANSLATIONS_WORKTREE}" | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user