53 lines
1.9 KiB
Python
53 lines
1.9 KiB
Python
import argparse
|
|
import os.path
|
|
from os import walk
|
|
import sys
|
|
import xml.etree.ElementTree
|
|
from lib.config import get_env_var
|
|
from lib.transifex import (pull_source_files_from_transifex, should_use_transifex,
|
|
pull_xtb_without_transifex, combine_override_xtb_into_original)
|
|
from lib.grd_string_replacements import get_override_file_path
|
|
|
|
BRAVE_SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
|
|
|
|
|
def parse_args():
|
|
parser = argparse.ArgumentParser(description='Push strings to Transifex')
|
|
parser.add_argument('--source_string_path', nargs=1)
|
|
return parser.parse_args()
|
|
|
|
|
|
def check_args():
|
|
transifex_info = (get_env_var('TRANSIFEX_USERNAME') and
|
|
get_env_var('TRANSIFEX_PASSWORD') or
|
|
get_env_var('TRANSIFEX_API_KEY'))
|
|
message = 'TRANSIFEX_USERNAME and TRANSIFEX_PASSWORD or '\
|
|
'TRANSIFEX_API_KEY must be set'
|
|
assert transifex_info, message
|
|
|
|
|
|
def main():
|
|
args = parse_args()
|
|
check_args()
|
|
source_string_path = os.path.join(
|
|
BRAVE_SOURCE_ROOT, args.source_string_path[0])
|
|
filename = os.path.basename(source_string_path).split('.')[0]
|
|
if should_use_transifex(source_string_path, filename):
|
|
print('Transifex: ', source_string_path)
|
|
pull_source_files_from_transifex(source_string_path, filename)
|
|
else:
|
|
print('Local: ', source_string_path)
|
|
override_path = get_override_file_path(source_string_path)
|
|
print('Transifex override: ', override_path)
|
|
override_filename = os.path.basename(override_path).split('.')[0]
|
|
override_exists = os.path.exists(override_path)
|
|
if override_exists:
|
|
pull_source_files_from_transifex(override_path, override_filename)
|
|
pull_xtb_without_transifex(source_string_path, BRAVE_SOURCE_ROOT)
|
|
if override_exists:
|
|
combine_override_xtb_into_original(source_string_path)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.exit(main())
|