From 7afe9de82bfa61f89844a4f653ab7403a7fdd799 Mon Sep 17 00:00:00 2001 From: Graham Triggs Date: Wed, 6 Jul 2016 06:19:17 +0100 Subject: [PATCH] [VIVO-1082] Add Maven installer for Vitro --- installer/example-settings.xml | 21 ++ installer/home/pom.xml | 115 +++++++++++ installer/home/src/main/assembly/home.xml | 22 +++ installer/pom.xml | 185 ++++++++++++++++++ installer/solr/pom.xml | 144 ++++++++++++++ .../main/webResources/META-INF/context.xml | 9 + .../WEB-INF/classes/log4j.properties | 13 ++ installer/webapp/pom.xml | 149 ++++++++++++++ .../main/webResources/META-INF/context.xml | 9 + .../WEB-INF/classes/log4j.properties | 49 +++++ .../webapp/src/main/webapp/themes/readme | 1 + pom.xml | 22 +++ 12 files changed, 739 insertions(+) create mode 100644 installer/example-settings.xml create mode 100644 installer/home/pom.xml create mode 100644 installer/home/src/main/assembly/home.xml create mode 100644 installer/pom.xml create mode 100644 installer/solr/pom.xml create mode 100644 installer/solr/src/main/webResources/META-INF/context.xml create mode 100644 installer/solr/src/main/webResources/WEB-INF/classes/log4j.properties create mode 100644 installer/webapp/pom.xml create mode 100644 installer/webapp/src/main/webResources/META-INF/context.xml create mode 100644 installer/webapp/src/main/webResources/WEB-INF/classes/log4j.properties create mode 100644 installer/webapp/src/main/webapp/themes/readme diff --git a/installer/example-settings.xml b/installer/example-settings.xml new file mode 100644 index 000000000..5bc02a8ee --- /dev/null +++ b/installer/example-settings.xml @@ -0,0 +1,21 @@ + + + + + defaults + + vitro + + /usr/local/vitro/home + /usr/local/tomcat + + vitro + + + + + + defaults + + \ No newline at end of file diff --git a/installer/home/pom.xml b/installer/home/pom.xml new file mode 100644 index 000000000..f87672abb --- /dev/null +++ b/installer/home/pom.xml @@ -0,0 +1,115 @@ + + + 4.0.0 + + org.vivoweb + vitro-installer-home + 1.9.0-SNAPSHOT + pom + + + org.vivoweb + vitro-installer + 1.9.0-SNAPSHOT + .. + + + Vitro Install Home + + + vitro + + + + + install + + vitro-dir + + + + + maven-assembly-plugin + 2.5.5 + + + src/main/assembly/home.xml + + false + + + + package + + single + + + + + + maven-antrun-plugin + 1.8 + + + remove-webapp + verify + + run + + + + + + + + + + + maven-resources-plugin + 2.7 + + + install + install + + copy-resources + + + ${vitro-dir} + + + ${project.build.directory}/${project.build.finalName} + + + + + + + + + + + + + + + maven-install-plugin + 2.5.2 + + true + + + + + + + + org.vivoweb + vitro-home + tar.gz + + + diff --git a/installer/home/src/main/assembly/home.xml b/installer/home/src/main/assembly/home.xml new file mode 100644 index 000000000..97f6d9368 --- /dev/null +++ b/installer/home/src/main/assembly/home.xml @@ -0,0 +1,22 @@ + + home + + dir + + false + + + / + true + + + + + ${project.basedir}/src/main/resources + / + true + + + \ No newline at end of file diff --git a/installer/pom.xml b/installer/pom.xml new file mode 100644 index 000000000..c436e4700 --- /dev/null +++ b/installer/pom.xml @@ -0,0 +1,185 @@ + + + 4.0.0 + + org.vivoweb + vitro-installer + 1.9.0-SNAPSHOT + pom + + Vitro Installer + + + ${project.version} + + + + + + maven-install-plugin + 2.5.2 + + true + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + true + + + + maven-deploy-plugin + 2.7 + + true + + + + + + + home + solr + webapp + + + + + + org.vivoweb + vitro-solr + ${vitro-version} + war + + + org.vivoweb + vitro-home + ${vitro-version} + tar.gz + + + org.vivoweb + vitro-api + ${vitro-version} + + + org.vivoweb + vitro-webapp + ${vitro-version} + war + + + + + + + skip-install + + !vitro-dir + + + + + maven-antrun-plugin + 1.8 + + true + + + + maven-compiler-plugin + 3.1 + + + default-compile + + + + default-testCompile + + + + + + maven-dependency-plugin + 2.10 + + true + + + + maven-resources-plugin + 2.6 + + + default-resources + + + + default-testResources + + + + + + maven-surefire-plugin + 2.12.4 + + + test + + + + + + maven-war-plugin + 2.6 + + + default-war + + + + + + + + + install + + vitro-dir + + + + + maven-enforcer-plugin + 1.4.1 + + + enforce-properties + validate + + enforce + + + + + app-name + You must provide an application name (app-name) + + + + + + + + + + + diff --git a/installer/solr/pom.xml b/installer/solr/pom.xml new file mode 100644 index 000000000..5fd188eca --- /dev/null +++ b/installer/solr/pom.xml @@ -0,0 +1,144 @@ + + + 4.0.0 + + org.vivoweb + vitro-installer-solr + 1.9.0-SNAPSHOT + war + + + org.vivoweb + vitro-installer + 1.9.0-SNAPSHOT + .. + + + Vitro Install Solr App + + + + package + + app-name + + + ${app-name}solr + + + maven-war-plugin + 2.6 + + + + true + + + false + + + org.vivoweb + vitro-solr + war + + + + + src/main/webResources + true + + + + + + + + + pinstall + + tomcat-dir + + + + + maven-antrun-plugin + 1.8 + + + remove-webapp + verify + + run + + + + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 2.10 + + + install + install + + unpack + + + + + ${project.groupId} + ${project.artifactId} + ${project.version} + war + true + ${tomcat-dir}/webapps/${project.build.finalName} + + + + + + + + + + + + + + + maven-install-plugin + 2.5.2 + + true + + + + maven-clean-plugin + + + + overlays + + + + + + + + + + org.vivoweb + vitro-solr + war + + + diff --git a/installer/solr/src/main/webResources/META-INF/context.xml b/installer/solr/src/main/webResources/META-INF/context.xml new file mode 100644 index 000000000..50ea873be --- /dev/null +++ b/installer/solr/src/main/webResources/META-INF/context.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/installer/solr/src/main/webResources/WEB-INF/classes/log4j.properties b/installer/solr/src/main/webResources/WEB-INF/classes/log4j.properties new file mode 100644 index 000000000..6d55b17c9 --- /dev/null +++ b/installer/solr/src/main/webResources/WEB-INF/classes/log4j.properties @@ -0,0 +1,13 @@ +log4j.appender.AllAppender=org.apache.log4j.RollingFileAppender +log4j.appender.AllAppender.File= ${catalina.home}/logs/${app-name}solr.log +log4j.appender.AllAppender.MaxFileSize=10MB +log4j.appender.AllAppender.MaxBackupIndex=10 +log4j.appender.AllAppender.layout=org.apache.log4j.PatternLayout +log4j.appender.AllAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{1}] %m%n + +log4j.rootLogger=INFO, AllAppender + +# Make all of the Solr classes quieter... +log4j.logger.org.apache.solr.level = WARNING +# ...except for this one. +log4j.logger.org.apache.solr.core.SolrResourceLoader.level = INFO diff --git a/installer/webapp/pom.xml b/installer/webapp/pom.xml new file mode 100644 index 000000000..5db443b0c --- /dev/null +++ b/installer/webapp/pom.xml @@ -0,0 +1,149 @@ + + + 4.0.0 + + org.vivoweb + vitro-installer-webapp + 1.9.0-SNAPSHOT + war + + + org.vivoweb + vitro-installer + 1.9.0-SNAPSHOT + .. + + + Vitro Install Web App + + + + package + + app-name + + + ${app-name} + + + org.apache.maven.plugins + maven-war-plugin + 2.6 + + + + true + + + false + + + org.vivoweb + vitro-webapp + war + + + + + src/main/webResources + true + + + + + + + + + install + + tomcat-dir + + + + + maven-antrun-plugin + 1.8 + + + remove-webapp + verify + + run + + + + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 2.10 + + + install + install + + unpack + + + + + ${project.groupId} + ${project.artifactId} + ${project.version} + war + true + ${tomcat-dir}/webapps/${project.build.finalName} + + + + + + + + + + + + + + + maven-install-plugin + 2.5.2 + + true + + + + maven-clean-plugin + + + + overlays + + + + + + + + + + org.vivoweb + vitro-api + + + org.vivoweb + vitro-webapp + war + + + diff --git a/installer/webapp/src/main/webResources/META-INF/context.xml b/installer/webapp/src/main/webResources/META-INF/context.xml new file mode 100644 index 000000000..7ada55878 --- /dev/null +++ b/installer/webapp/src/main/webResources/META-INF/context.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/installer/webapp/src/main/webResources/WEB-INF/classes/log4j.properties b/installer/webapp/src/main/webResources/WEB-INF/classes/log4j.properties new file mode 100644 index 000000000..f9d04c7a5 --- /dev/null +++ b/installer/webapp/src/main/webResources/WEB-INF/classes/log4j.properties @@ -0,0 +1,49 @@ +# +# This file sets the log levels for the Vitro webapp. +# +# There are 8 principal logging levels, as follows: +# <-- more messages ALL TRACE DEBUG INFO WARN ERROR FATAL OFF fewer messages --> +# +# The default logging level is specified on the rootLogger. Other levels can be +# set for individual classes or packages as desired. +# +# Examples of setting levels: +# log4j.logger.edu.cornell.mannlib.vitro.webapp.ConfigurationProperties=INFO +# -- sets INFO level for this one class +# log4j.logger.org.apache.catalina=INFO +# -- sets INFO level for all classes in "org.apache.catalina" package +# and any sub-packages. +# +# Documentation for this file can be found here: +# http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PropertyConfigurator.html#doConfigure(java.lang.String,%20org.apache.log4j.spi.LoggerRepository) +# +# More information can be found here: +# http://logging.apache.org/log4j/1.2/manual.html +# +# The "production" version of this file is log4j.properties. +# debug.log4j.properties exists will be used instead, if it exists, but is not stored in Subversion. + +log4j.appender.AllAppender=org.apache.log4j.RollingFileAppender +log4j.appender.AllAppender.File= ${catalina.home}/logs/${app-name}.all.log +log4j.appender.AllAppender.MaxFileSize=10MB +log4j.appender.AllAppender.MaxBackupIndex=10 +log4j.appender.AllAppender.layout=org.apache.log4j.PatternLayout +log4j.appender.AllAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{1}] %m%n + + +log4j.rootLogger=INFO, AllAppender + +# These classes are too chatty to display INFO messages. +log4j.logger.edu.cornell.mannlib.vitro.webapp.startup.StartupStatus=WARN +log4j.logger.edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdateKnowledgeBase=WARN +log4j.logger.org.semanticweb.owlapi.rdf.rdfxml.parser=WARN + +# Spring as a whole is too chatty to display INFO messages. +log4j.logger.org.springframework=WARN + +# suppress odd warnings from libraries +log4j.logger.com.hp.hpl.jena.sdb.layout2.LoaderTuplesNodes=FATAL +log4j.logger.com.hp.hpl.jena.sdb.sql.SDBConnection=ERROR +log4j.logger.org.openjena.riot=FATAL +log4j.logger.org.apache.jena.riot=FATAL +log4j.logger.org.directwebremoting=FATAL diff --git a/installer/webapp/src/main/webapp/themes/readme b/installer/webapp/src/main/webapp/themes/readme new file mode 100644 index 000000000..c58fdbef4 --- /dev/null +++ b/installer/webapp/src/main/webapp/themes/readme @@ -0,0 +1 @@ +Add your theme directories here \ No newline at end of file diff --git a/pom.xml b/pom.xml index 3f91d4d99..984ac42fa 100644 --- a/pom.xml +++ b/pom.xml @@ -69,6 +69,28 @@ + + installer + + + !vitro-installer-dir + + + + installer + + + + external-installer + + + vitro-installer-dir + + + + ${vitro-installer-dir} + + doclint-java8-disable