NIH | National Cancer Institute | NCI Wiki  

Error rendering macro 'rw-search'

null

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Contents of this Page

The purpose of this document is to document the current Docker setup at Mayo and how this setup can be duplicated at NCI and extended to provide additional testing, reporting and deployment.

Overview

The Mayo development team currently has Docker and Jenkins setup locally to build and test all of the LexEVS components.  It is our intent to move this setup to NCI for more permanents and stable location.

Jenkins

When the Jenkins build is started, it simply calls a Docker script, passing in parameters that define the LexEVS component branches.

When the Docker script completes, the Jenkin build captures the test reports (XML) files.

Docker

The Docker script is where all of the work is done.  Below is a high level view of what the script does.

  •  Builds MySQL containers
  • Clones LexEVS and LexEVS Remote projects from Git and builds each component.
  • Create container for the URI Resolver.
  • Build and run Junit tests CTS2
  • Run Junit tests against LexEVS
  • Load terminologies into LexEVS
  • Create container for LexEVS Remote
  • Create container for CTS2
  • Run Junit tests against LexEVS Remote
  • Stop and remove all containers.

NCI

When possible, we would like to move the current Jenkins/Docker setup from Mayo to NCI.

Additionally, we would like to create more standard containers based on NCI's technology stack and have the containers stored in Nexus for us to pull into our builds.  For example, we would like to create a container with  NCI approved technology. These containers may include the following:

  • CentOS 7
  • Tomcat 8.x
  • Java 8.x
  • MySQL 5.6.x

 

We have found in our testing that versions of the above components are regularly updated and at times, the version we specify in our script is no longer available subsequently breaks our build.  Having consistent known versions (based on NCI's tecnology stack) that are available for our builds would provide greater stability.

Next Steps

Once we have the current setup running at NCI, we would like to start looking at the following items:

  • Use the build script that builds all of the LexEVS components and deploy them to a NCI DEV server.

 

  • No labels