Difference between revisions of "Localyzer Installation"

From Lingoport Wiki
Jump to: navigation, search
(Global Email Configuration)
(Global Email Configuration)
Line 135: Line 135:
 
<code> java -jar /var/lib/jenkins/lingoport/lrm-server-3.0/lib/lpcommon.jar --encrypt </code>
 
<code> java -jar /var/lib/jenkins/lingoport/lrm-server-3.0/lib/lpcommon.jar --encrypt </code>
   
  +
which will prompt you for the text (here the password) to encrypt and will provide the result on the console.
   
 
To notify that when executing the command to send translation, no translations were found, the <code>send-no-files-to-prep-email</code> needs to be set to 1. This may become annoying if you are prepping every night for instance and no changes happen. The notification system would then send a Nothing to Prep email. If you would rather no mails were sent in this case, set <code>send-no-files-to-prep-email</code> to 0.
 
To notify that when executing the command to send translation, no translations were found, the <code>send-no-files-to-prep-email</code> needs to be set to 1. This may become annoying if you are prepping every night for instance and no changes happen. The notification system would then send a Nothing to Prep email. If you would rather no mails were sent in this case, set <code>send-no-files-to-prep-email</code> to 0.

Revision as of 23:25, 6 December 2016

Lingoport Resource Manager Overview

The Lingoport Resource Manager System is composed of three items (See the diagram at Components Diagram):

  1. Lingoport Resource Manager: The Server keeps track of all the actions and the expected results. The server is best located on one central system. This section describes the installation of LRM.
  2. Jenkins: Jenkins orchestrates the execution of the commands, such as verifying files to be sent for translation via a light Java application. Jenkins needs to communicate with the Lingoport Resource Manager server and is best co-located with LRM. The Jenkins setup is the subject of another guide.
  3. Dashboard: the Lingoport Dashboard aggregates and displays data from both the Resource Manager and Globalyzer. Its installation is the subject of another guide.

The Dashboard typically needs to have access to the lrm-cli.jar files in order to generate the xml report files and use those xml to push the files over to the Dashboard.

Install Jenkins

If you have not done so yet, install Jenkins. Jenkins must be version 1.609 or later.

Download Jenkins from jenkins-ci.org, install it, and start it as a daemon.

Check that the location of the 'workspace' is ${JENKINS_HOME}/jobs/${ITEM_FULLNAME}/workspace. This location can be found by going to Jenkins -> Manage Jenkins and clicking Advanced... near the top right of the configuration settings. Look for Workspace Root Directory.

This is very important. A different Workspace Root Directory will cause real problems!

Check which Unix user is running the Jenkins job. One simple way to do this is to run a Jenkins job, for instance 'Debug', with the Unix command 'whoami' as a Build Step / Execute Shell. You will install LRM as this user.

Installing LRM

Prerequisites

  1. Read the Lingoport Suite Installation, which describes how all the Lingoport applications work together and the hardware and software configuration requirements.
  2. Supported OS: Linux
  3. Installed Java 7 or greater JRE on the target machine. You can check your Java version using the command line. At the command prompt enter:
    java -version
    The version of Java which you have on your system should be displayed. If you need to install Java, please refer to http://www.java.com/en/download/index.jsp or any Java download page which supplies Java 7 or above.
  4. Installed MySQL 5.6 or higher on a database server. MySQL Download site. If the database server is not the same machine as the LRM server, then you will need to install the MySQL 5.x Client (only need Client) on the LRM server so that it can access the database on the separate database server.
    • You can verify that you have a sufficiently up-to-date version of MySQL using the command prompt. In the command prompt type:
    mysql -u <user> -p<password>
    • If MySQL is installed on your system, information on the version will be displayed after entering a valid username and password. If MySQL is not version 5.6 or higher, please refer to a download site, such as MySQL Download and install an up-to-date version.
    • You will need to enter the MySQL credentials (host, username, password and port number) during the installation.
  5. Jenkins, the latest version. See #Install Jenkins
  6. Received the Licensing information from Lingoport. When your company purchased LRM you should have been sent an email containing the licensing information. The licensing information will include the following:
    • group name
    • number of licenses in the license
    • expiration date for the license
    • license key. This is a 10-digit number generated by Lingoport.
    This licensing information will be required for the server installation. If you do not have the licensing information of the jar file, please contact support@lingoport.com. Please keep it handy while you perform the install.
  7. You may many licenses, one per group. This must have been specified during the sales process.
  8. Installer jar file: you must have the Lingoport_Resource_Manager_Server-<x.x>-Installer.jar file.
  9. MySQL Time Zone: MySQL time zone must be non-ambiguous. An example of an ambiguous time zone is 'MST' whereas 'America/Denver' is a non-ambiguous time zone. Refer to MySQL documentation for your specific OS to set time zones appropriately.
    • For Windows, you should be able to type
      SET GLOBAL time_zone = 'America/Denver’
      at the MySQL prompt.
    • For Linux, you could for instance type
      mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -u root mysql -p
      from the command line and then
      SET GLOBAL time_zone = 'America/Denver’
      at the MySQL prompt.
    • For MacOS, you may for instance type
      mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -D mysql -u root mysql -p
      from the command line and then
      SET GLOBAL time_zone = 'America/Denver’
      at the MySQL prompt.

Installing as the Jenkins Unix User

Once you have retrieved your licensing information and ensured that all requirements are met, log into the server as the Unix user who will be running the Jenkins jobs. This is usually the Jenkins user.

  • WAIT. DID YOU READ THE ABOVE? Which Unix user will do all the installation?
    • Unix user who will be running the Jenkins jobs

Installing for the First Time

Are you logged in as the Unix user who will be running the Jenkins jobs?

  • Double-click on the Lingoport_Resource_Manager_Server-<x.x>-Installer.jar file, or
  • From the command line, cd to the directory with the installer and type:
java –jar Lingoport_Resource_Manager_Server-<x.x>-Installer.jar

The installer will prompt you for license information and database settings to create the MySQL LRM database. The installer will also prompt you for the LRM and the L10nStreamlining directory location. These will default to <home>/Lingoport_Data/LRM and <home>/Lingoport_Data/L10nStreamlining. When installation completes, the L10nStreamlining directory will have been created, but the LRM directory is created when the first project is generated.

Updating Your Existing Installation

If you are upgrading your LRM Server to a newer version, make sure that you do not overwrite the existing database.

  • Double-click on the Lingoport_Resource_Manager_Server-<x.x>-Installer.jar file, or
  • From the command line, cd to the directory with the installer jar file and type:
java –jar Lingoport_Resource_Manager_Server-<x.x>-Installer.jar

On the Type of Installation page, be sure to select Update Server.

Headless Installation

Are you logged in as the Unix user who will be running the Jenkins jobs?

To install LRM without a windowing system, use an xml installation file. The xml installation files can be generated from a first installation or an update using a windowing system on the last page of the installer. That file can be modified to fit other installations. To run a headless installation, from the command line, cd to the directory with the installer and type:

java –jar Lingoport_Resource_Manager_Server-<x.x>-Installer.jar headlessinstaller.xml

Adding or Updating the License

Depending on your licensing agreement, you will have a license for one or more groups. Each group must have a license. To update or add a new license to your current installation, open a command prompt and type:

  • To update an existing license for a group
java -jar <LRM_INSTALLATION_PATH>lrm-cli.jar --update-license --group-name <group> --number-of-licenses <number> --date <YYYY-MM-DD> --license-key <key>
  • To add a new license for a group:
java -jar <LRM_INSTALLATION_PATH>/lrm-cli.jar --create-group <groupname> --number-of-licenses <number> --date <YYYY-MM-DD> --license-key <key>
  • To verify that the new license has been installed with the correct information
java -jar <LRM_INSTALLATION_PATH>/lrm-cli.jar --list-groups

Group Name

A group name must conform to the following specification: A set of alphanumeric characters without the following special characters:

  • < (less than)
  • > (greater than)
  •  : (colon)
  • " (double quote)
  • / (forward slash)
  • \ (backslash)
  • | (vertical bar or pipe)
  •  ? (question mark)
  • * (asterisk)
  • (space)
  •  % (percentage)

Global Email Configuration

To send notifications to email recipients, the config_email_global.xml needs to be configured under ~jenkins/Lingoport_Data/L10nStreamlining/config The specification need in particular to be set for the smtp-host, the smtp-auth, the email-sender, the sender-password, and the jenkins-url for your system.

         <smtp-host>smtp.gmail.com</smtp-host>
         <smtp-auth>mail.smtps.auth</smtp-auth>
         <email-sender>mailuser@company.com</email-sender>
         <sender-password>mailuserpwd</sender-password>
         <jenkins-url>http://jenkins.company.com:8080/</jenkins-url>

The <sender-password> can be configured with the encrypted attribute set to true, as in

         ...
         <email-sender>mailuser@company.com</email-sender>
         <sender-password encrypted="true">UUIasd455</sender-password>
         ...

To encrypt the password, use the encrypt command line on lrm-common.jar file. For instance:

java -jar /var/lib/jenkins/lingoport/lrm-server-3.0/lib/lpcommon.jar --encrypt

which will prompt you for the text (here the password) to encrypt and will provide the result on the console.

To notify that when executing the command to send translation, no translations were found, the send-no-files-to-prep-email needs to be set to 1. This may become annoying if you are prepping every night for instance and no changes happen. The notification system would then send a Nothing to Prep email. If you would rather no mails were sent in this case, set send-no-files-to-prep-email to 0.

Next Steps

If this is a new installation, you will need to configure your LRM Project and start managing your application's resource files. This involves configuring Jenkins with tabs, the jobs, the users, and the authorizations. See LRM Jenkins Configure System.

LRM works with the Lingoport Dashboard. If you have the Dashboard currently installed, make sure it is configured to point to the current LRM installation. You may want to update the Dashboard installation to do so. If you are going to install the Dashboard later, then don't worry for now. This will be part of the Dashboard installation process.

Important MySQL Configuration Note If you see the following error when running LRM commands: Packet for query is too large you will need to increase the max_allowed_packet variable of your MySQL database server to either 16 or 32 megabytes in the lingoport directory of your Server and Client installations.

Lingoport Customer Support

If you experience difficulties during the installation of the Lingoport Resource Manager, please contact support@lingoport.com.