Overview
Resources for training.
Topics Covered
- Obtaining and building the code
- Prerequisites installed (do not show this)
- Clone Github project
- Build project at top level using mvn command line
Video
Script
Following is a script for the attached video.
- Preamble
- Welcome to the IHTSDO map tool video tutorials. This developer training video covers obtaining and building the code.
Prerequisites
- Git client
- Java 7 installed
- Mysql 5.5 or 5.6 installed
- Maven 3.2.+ installed
- Tomcat 7 installed and configured
- Eclipse
- Use version 4.4 (Luna) - J2EE edition
- m2e (the maven integration for eclipse - download from the market place)
- m2e-egit connector
- eGit - http://eclipse.github.com/
- Jautodoc - import configuration from Code and XML Formatting in Eclipse
- ObjectAid UML Diagram tool for class hierarchy visualization. Installed via Help->Install New Software. Instructions athttp://www.objectaid.net/installation
- FindBugs (static code analysis)
- AngularJS - see https://github.com/angelozerr/angularjs-eclipse/wiki/Getting-Started
As this project is organized around Maven and may make use of resources on IHTSDO Nexus, properly configure your Settings.xml Page.
Details
Step 1 - Create directories
Setup for Windows
- Create a directory to hold your data files (e.g. c:/mapping/data)
- Create a directory to hold your config files (e.g. c:/mapping/config)
- Create a directory to hold the code (e.g. c:/workspace/OTF-Mapping-Service)
- Make sure the "mvn" executable for your local maven installation is in the path
- On Windows this means adding to the PATH variable so that it runs in a "cmd" shell without fully qualified path.
Step 2 - Clone repositories
Clone the Github repository to the directory created to hold the code.
Clone the mapping-service-data project (e.g. ssh://<yourUsername>@csfe.aceworkspace.net:29418/mapping) to the directory created to hold your data files..
- In this context "yourUsername" is the CollabNet user you use to access the "The IHTSDO Open Tooling Framework Project"
Step 3 - Build project
Build all project modules with "mvn clean install" at the top level - either through Eclipse or via the command line.
- NOTE: this uses the standard "dev-windows" configuration. To use a different configuration artifact pass the following three parameters:
- -Dconfig.groupId=...
- -Dconfig.artifactId=...
- -Dconfig.version=...
- NOTE: the specified configuration artifact must either have been built locally or be an a repository accessible based on the settings.xml file
- For most dev deployments, the default build is fine because the only setting really used for the rest/webapp packages is the "base.url" which by default is set to http://localhost:8080/mapping-rest.
- For a UAT or production deployment, you would want to use a different setting. For example, see Deploy Instructions, the prod deployment instructions.
Step 4 - Setup Configuration
Choose a "dev-windows", "uat", or "prod" config project target and unzip it into the directory created to hold your config files.
- config/dev-windows/target/mapping-config-dev-windows.*.zip
- config/prod/target/mapping-config-prod.*.zip
- config/uat/target/mapping-config-uat.*.zip
Step 5 - Edit configuration
Edit the "config.properties" file in your config files directory to set correctly for your environment. In particular, edit these:
- javax.persistence.jdbc.url
- javax.persistence.jdbc.user
- javax.persistence.jdbc.password
- hibernate.search.default.indexBase ( recommend choosing something in your data dir, e.g. c:/mapping/data/indexes or ~/indexes)
- ihtsdo.security.activated (set to false for dev environment)
- mail.smtp.to (list for automated system emails)
- send.notification.recipients (list for automated tools, like reports generation and database qa)
- Welcome to the IHTSDO map tool video tutorials. This developer training video covers obtaining and building the code.
References/Links
- n/a