Difference between revisions of "Memsource"

From Lingoport Wiki
Jump to: navigation, search
(Link LRM and Memsource)
Line 37: Line 37:
 
</li>
 
</li>
 
</ol>
 
</ol>
  +
  +
===Configure and Enable Jenkins Jobs===
  +
<ul>
  +
<li>Enable the MemsourceCallback Jenkins job and modify the token value or keep the default.</li>
  +
<li>Enable the MemsourceCheckCallback Jenkins job</li>
  +
<li>Enable the MemsourceSend Jenkins job</li>
  +
<li>Modify the Jenkins job <b>LocalVendorDownload</b> and check <b>Build after other projects are built</b> and then in <b>Projects to watch</b>, type in <b>MemsourceCallback</b>.</li>
   
 
===Memsource Configuration===
 
===Memsource Configuration===

Revision as of 21:15, 17 June 2020


Link LRM and Memsource

To begin working with Memsource, create or use an existing Jenkins project configured with LRM.

  1. Configure the file <HOME>/Lingoport_Data/L10nStreamlining/config/config_memsource_tofrom.properties:
    • configure memsource.out.to.translation.dir
    • configure memsource.in.from.translation.dir
  2. 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 in config_memsource_tofrom.properties
    • Configure Imported Files Directory; this must match memsource.in.from.translation.dir in config_memsource_tofrom.properties
    • Save
  3. 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
  4. Modify the Jenkins job LocalVendorDownload and check Build after other projects are built and then in Projects to watch, type in MemsourceCallback.

Configure and Enable Jenkins Jobs

  • Enable the MemsourceCallback Jenkins job and modify the token value or keep the default.
  • Enable the MemsourceCheckCallback Jenkins job
  • Enable the MemsourceSend Jenkins job
  • 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 curl command looks similar to:
    #     {"jobs":{"MemsourceCallback":{"regexpFilterExpression":"",
    #                                    "triggered":true,
    #                                    "resolvedVariables: {"memsourceProjectId":""},
    #                                    "regexpFilterText":"",
    #                                    "id":2180,
    #                                    "url":"queue/item/2180/"}},
    #        "message":"Triggered jobs."}
    #
    

    Note: a Memsource Server 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 Memsource Server. Since Memsource has many Servers, you will need to grant access to all of them. Click here to see the current list ip addresses of all Memsource Servers.

    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