Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
titleDraft

This page is being updated written for 1.10 and Maven. Check back for more.


Table of Contents

...

Overview

Excerpt

Add a third layer to the VIVO distribution, to keep all of your modifications in one place.

Basic Approach

Example – Custom Theme

Example – Local Ontology

The three tiered build is very simple. In a standard two tier build VIVO replaces anything that is in Vitro as it adds its own special files to the mix. In a three tier we replace anything in Vitro or VIVO with the files that we want to add or modify for our version of VIVO. This allows us to point at newer VIVO versions without modifying the files within.

The method in this document has been copied from the EarthCollab work at: https://github.com/NCAR/2014-EarthCube-BuildingBlocks-EnablingCollaboration-14402930-vivo-source

The files that differ from a regular VIVO build (other than the ones you are adding and changing) are the build.xml and build.properties file.

There are two standard ways to setup VIVO, for development or deployment.

Development

With development, you want to look at your VIVO against the VIVO and Vitro sources. This means getting the source for each project from the git repository.

Your deploy.properties then points at the individual repositories.  When you build it pulls the three repositories together and sends them as a single package to Tomcat.

Image Removed

Deployment

In deployment you have just your third tier and the released source for VIVO. In that released source is the vitro code that goes with the latest release of VIVO. Your deploy.properties for a deployment build will need to point to the internal vitro-core folder for the vitro code.

Image Removed

Project template

If you would like to get started with the three tired build process, there is a project template on Github that includes the necessary build.xml, build.properties and directory structure.  This template uses Git submodules to pull in VIVO and Vitro from the main vivo-project repository.  

 

...