Memsource
Contents
Link LRM and Memsource
To begin working with Memsource, create or use an existing Jenkins project configured with LRM.
- Configure the file <HOME>/Lingoport_Data/L10nStreamlining/config/config_memsource_tofrom.properties:
- configure
memsource.out.to.translation.dir
- configure
memsource.in.from.translation.dir
- Create a Memsource Local Vendor in Jenkins:
- Select Manage Jenkins->Configure System
- Scroll down to the LRM L10n Vendor Setup section and select Add Local Vendor
- Provide a unique vendor name
- Select Group or Project; if group, select group name from drop down list
- Configure Prep Kit Files Directory; this must match
memsource.out.to.translation.dir</code
> in config_memsource_tofrom.properties
- Configure Imported Files Directory; this must match
memsource.in.from.translation.dir
in config_memsource_tofrom.properties - Save
- Configure your Jenkins job to use Memsource Local Vendor:
- Select the Jenkins job you want to use Memsource
- Click Configure
- Scroll down to the L10n Vendor section of your LRM configuration
- Choose Group or Project; if project, click Local Vendor and then select the Local Vendor Name from the list
- Save
- Modify the Jenkins job LocalVendorDownload and check Build after other projects are built and then in Projects to watch, type in MemsourceCallback.
Memsource Configuration
Configure the Memsource settings in the config_memsource_vendor.properties (which can be specified at the group or project config level).
#
# Contains configuration for memsource
#
# To configure the token, follow these instructions:
# https://help.memsource.com/hc/en-us/articles/115003461011-How-to-Setup-OAuth-Authentication-in-Memsource
#
# Run the following command to list the currently available template ids:
# (note that template ids can support any target locale, not just the listed ones)
# java -jar lingoport-memsource-cli.jar --list-templates -t <token>
#
# Make sure to configure the callback for your machine
#
memsource.api.token=
memsource.api.project.template.id=
memsource.api.source.locale=en
memsource.api.callbackURL=http://<your_machine>/jenkins/generic-webhook-trigger/invoke?token=1skLO6zTb
#
# You can test your callback configuration using curl on the command line:
# curl http://<your_machine>/jenkins/generic-webhook-trigger/invoke?token=1skLO6zTb
# A successful callback looks similar to:
# {"jobs":{"MemsourceCallback":{"regexpFilterExpression":"",
# "triggered":true,
# "resolvedVariables: {"memsourceProjectId":""},
# "regexpFilterText":"",
# "id":2180,
# "url":"queue/item/2180/"}},
# "message":"Triggered jobs."}
#
Note that Memsource will be calling back to a Jenkins job on your machine as files are translated, so your machine will need to grant access to the following Memsource ip addresses:
- cupid.memsource.com - 94.130.131.155
- de-web-c1-n10.memsource.com - 94.130.54.79
- de-web-c1-n11.memsource.com - 88.99.91.237
- de-web-c1-n8.memsource.com - 138.201.205.166
- de-web-c1-n9.memsource.com - 188.40.121.96
- genius.memsource.com - 148.251.7.210
- hercules.memsource.com - 148.251.7.197
- mercur.memsource.com - 148.251.7.198
- penates.memsource.com - 94.130.131.157
- tellus.memsource.com - 148.251.7.211
- uran.memsource.com - 148.251.7.206
- venus.memsource.com - 148.251.7.212
Memsource Locale Mapping
Configure config_memsource_locale_mapping.properties (which can be specified at the group or project config level).
This file maps locales from LRM to Memsource.
#
#Locale mapping language only locales - Locales should be in the java format (_)
# This is the default mapping. For your community, you'll need to edit this file
# and place it either at the group level or the project level.
#
aa=aa
ab=ab
ach=ach
af=af
af_na=af_na
...
LRM Resource Types Supported by Memsource
Memsource supports the following LRM resource types:
- .html, .htm
- .json
- .po
- .properties
- .resx
- .rc
- .strings
- strings.xml
- .txt
- .yaml, .yml
Memsource does not support the following LRM resource types:
- .rjs
- .rxml
- .msg