From 03ab54f1eb872d27ef11a8547dea552fa31f96bf Mon Sep 17 00:00:00 2001 From: jeb228 Date: Sun, 21 Feb 2010 18:45:18 +0000 Subject: [PATCH] NIHVIVO-56 Restructure the build script: get rid of cruft, make the product build an extension of the core build. --- webapp/build.xml | 546 ++++++++---------- webapp/config/default.clone.log4j.properties | 68 --- webapp/config/default.log4j.properties | 12 +- webapp/config/example.deploy.properties | 23 +- webapp/ontologies/auth/example.vitroUsers.owl | 6 +- webapp/product-build.xml | 186 ++++++ webapp/test/log4j.properties | 10 + 7 files changed, 476 insertions(+), 375 deletions(-) delete mode 100644 webapp/config/default.clone.log4j.properties create mode 100644 webapp/product-build.xml create mode 100644 webapp/test/log4j.properties diff --git a/webapp/build.xml b/webapp/build.xml index 40c15b80c..1b0b64254 100644 --- a/webapp/build.xml +++ b/webapp/build.xml @@ -1,324 +1,284 @@ - + - + - + - - + + + - - - + + + - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - + + + + - - - - - - - + + + + + + + + + + + + +all - Runs "clean", then "deploy". +clean - Delete all artifacts so the next build will be from scratch. +compile - Compile the Java source files. +test - Compile and run the JUnit tests. +war - Assemble everything into a deployable WAR file. +deploy - Deploy the application directly into the Tomcat webapps directory. + - - - - - - - - - - Compile webapp - - - - - - Compile unit tests - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - ${tomcat.home} - - - - + + + + + + + + - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + - - - - + + + - - - - + + + - - - - + + + + + + + + - - - - - - - + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/webapp/config/default.clone.log4j.properties b/webapp/config/default.clone.log4j.properties deleted file mode 100644 index 71f77ef5e..000000000 --- a/webapp/config/default.clone.log4j.properties +++ /dev/null @@ -1,68 +0,0 @@ -LuceneSetup.indexDir=${luceneIndexDir} - -# The default.log4j.properties file will only get used if there is no -# debugging.log4j.properties file in the directory otherwise, the debugging.log4j.properties will -# be deployed and used. - -# If you want to have a logging config for debugging -# and testing copy the default.log4j.properties file to debugging.log4j.properties, -# make your modifications and deploy. debugging.log4j.properties -# will be used instead of the default.log4j.properties file. - -# levels: <-- more messages ALL DEBUG INFO WARN ERROR FATAL OFF fewer messages --> - -log4j.rootLogger=WARN, AllAppender -log4j.appender.AllAppender=org.apache.log4j.RollingFileAppender -log4j.appender.AllAppender.File= ${tomcat.home}/logs/${clone}.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=%p %t %c - %m%n - -log4j.logger.org.apache.catalina=INFO, AllAppender -log4j.logger.org.diretwebremoting=ERROR, AllAppender - -#log4j.logger.edu.cornell.mannlib.vitro.webapp.auth=INFO, AllAppender - -#### setup a debugging logger -log4j.appender.DebuggingAppender=org.apache.log4j.FileAppender -log4j.appender.DebuggingAppender.File=${tomcat.home}/logs/${clone}.debugging.log -log4j.appender.DebuggingAppender.layout=org.apache.log4j.PatternLayout -log4j.appender.DebuggingAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n - -#log4j.logger.edu.cornell.mannlib.vitro.webapp=DEBUG, DebuggingAppender -#log4j.logger.edu.cornell.mannlib.vitro.webapp.auth=DEBUG, DebuggingAppender -#log4j.logger.edu.cornell.mannlib.vitro.webapp.dao.jena=DEBUG, DebuggingAppender - - -#### setup a debugging logger for the JSPs -#JSPs need to have a line like: -#<% org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("edu.cornell.mannlib.vitro.webapp.jsp.SOMEIDFORYOURJSP"); %> -log4j.appender.JspAppender=org.apache.log4j.FileAppender -log4j.appender.JspAppender.File=${tomcat.home}/logs/${clone}.jsp.log -log4j.appender.JspAppender.layout=org.apache.log4j.PatternLayout -log4j.appender.JspAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n - -log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp=INFO, JspAppender -#log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp.edit=DEBUG, JspAppender - - -#### setup a pellet logger -log4j.appender.PelletAppender=org.apache.log4j.FileAppender -log4j.appender.PelletAppender.File=${tomcat.home}/logs/${clone}.pellet.log -log4j.appender.PelletAppender.layout=org.apache.log4j.PatternLayout -log4j.appender.PelletAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n - -log4j.logger.org.mindswap=WARN, PelletAppender - - -#### setup a jena logger -log4j.appender.JenaAppender=org.apache.log4j.FileAppender -log4j.appender.JenaAppender.File=${tomcat.home}/logs/${clone}.jena.log -log4j.appender.JenaAppender.layout=org.apache.log4j.PatternLayout -log4j.appender.JenaAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n - -log4j.logger.com.hp.hpl=WARN, JenaAppender - -# 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) diff --git a/webapp/config/default.log4j.properties b/webapp/config/default.log4j.properties index e4a945ab3..450474744 100644 --- a/webapp/config/default.log4j.properties +++ b/webapp/config/default.log4j.properties @@ -1,5 +1,3 @@ -LuceneSetup.indexDir=${luceneIndexDir} - # The default.log4j.properties file will only get used if there is no # debugging.log4j.properties file in the directory otherwise, the debugging.log4j.properties will # be deployed and used. @@ -13,7 +11,7 @@ LuceneSetup.indexDir=${luceneIndexDir} log4j.rootLogger=WARN, AllAppender log4j.appender.AllAppender=org.apache.log4j.RollingFileAppender -log4j.appender.AllAppender.File= ${tomcat.home}/logs/vitro.all.log +log4j.appender.AllAppender.File= ${tomcat.home}/logs/${logfile.prefix}vitro.all.log log4j.appender.AllAppender.MaxFileSize=10MB log4j.appender.AllAppender.MaxBackupIndex=10 log4j.appender.AllAppender.layout=org.apache.log4j.PatternLayout @@ -27,7 +25,7 @@ log4j.logger.edu.cornell.mannlib.vitro.webapp.ConfigurationProperties=INFO #### setup a debugging logger log4j.appender.DebuggingAppender=org.apache.log4j.FileAppender -log4j.appender.DebuggingAppender.File=${tomcat.home}/logs/vitro.debugging.log +log4j.appender.DebuggingAppender.File=${tomcat.home}/logs/${logfile.prefix}vitro.debugging.log log4j.appender.DebuggingAppender.layout=org.apache.log4j.PatternLayout log4j.appender.DebuggingAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n @@ -40,7 +38,7 @@ log4j.appender.DebuggingAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - #JSPs need to have a line like: #<% org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("edu.cornell.mannlib.vitro.webapp.jsp.SOMEIDFORYOURJSP"); %> log4j.appender.JspAppender=org.apache.log4j.FileAppender -log4j.appender.JspAppender.File=${tomcat.home}/logs/vitro.jsp.log +log4j.appender.JspAppender.File=${tomcat.home}/logs/${logfile.prefix}vitro.jsp.log log4j.appender.JspAppender.layout=org.apache.log4j.PatternLayout log4j.appender.JspAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n @@ -50,7 +48,7 @@ log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp=INFO, JspAppender #### setup a pellet logger log4j.appender.PelletAppender=org.apache.log4j.FileAppender -log4j.appender.PelletAppender.File=${tomcat.home}/logs/vitro.pellet.log +log4j.appender.PelletAppender.File=${tomcat.home}/logs/${logfile.prefix}vitro.pellet.log log4j.appender.PelletAppender.layout=org.apache.log4j.PatternLayout log4j.appender.PelletAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n @@ -59,7 +57,7 @@ log4j.logger.org.mindswap=WARN, PelletAppender #### setup a jena logger log4j.appender.JenaAppender=org.apache.log4j.FileAppender -log4j.appender.JenaAppender.File=${tomcat.home}/logs/vitro.jena.log +log4j.appender.JenaAppender.File=${tomcat.home}/logs/${logfile.prefix}vitro.jena.log log4j.appender.JenaAppender.layout=org.apache.log4j.PatternLayout log4j.appender.JenaAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n diff --git a/webapp/config/example.deploy.properties b/webapp/config/example.deploy.properties index 57689df32..936b2499d 100644 --- a/webapp/config/example.deploy.properties +++ b/webapp/config/example.deploy.properties @@ -9,12 +9,25 @@ # # ----------------------------------------------------------------------------- +# +# The base install directory for your Tomcat server. The VIVO application +# will be deployed in the /webapps directory below this base. +# +tomcat.home = /usr/local/tomcat + +# +# The name of the Vitro application. This will be used as the name of the +# subdirectory within your Tomcat server's /webapps directory. It also appears +# in the URL for the application. For example, http://my.vitro.server/vitro +# +webapp.name = vitro + # # The location where the VIVO application will store uploaded files # (usually images). You should arrange for these files to be backed up in some # way. # -UploadImagesServlet.sourceDirName = /usr/local/vivo/data/uploads +upload.directory = /usr/local/vivo/data/uploads # # The location where the VIVO application will create its Lucene search @@ -35,7 +48,7 @@ Vitro.defaultNamespace = http://vitro.mydomain.edu/individual/ # SMTP host which the "Contact Us" form can use to send mail. If this is left # empty, the "Contact Us" form will be disabled. # -#Vitro.smtpHost = +Vitro.smtpHost = # # The basic parameters for a MySQL database connection. Change the end of the @@ -46,3 +59,9 @@ VitroConnection.DataSource.url = jdbc:mysql://localhost/vitro VitroConnection.DataSource.username = vitroweb VitroConnection.DataSource.password = vitrovitro +# +# The name of your first admin user for the VIVO application. The password for +# for this user is initially set to "defaultAdmin", but you will be asked to +# change the password the first time you login. +# +initialAdminUser = defaultAdmin diff --git a/webapp/ontologies/auth/example.vitroUsers.owl b/webapp/ontologies/auth/example.vitroUsers.owl index a1ce8eec4..a6911c6a0 100644 --- a/webapp/ontologies/auth/example.vitroUsers.owl +++ b/webapp/ontologies/auth/example.vitroUsers.owl @@ -6,14 +6,10 @@ xmlns="http://vitro.mannlib.cornell.edu/ns/vitro/default#" xml:base="http://vitro.mannlib.cornell.edu/ns/vitro/default"> - - diff --git a/webapp/product-build.xml b/webapp/product-build.xml new file mode 100644 index 000000000..6cae1cc52 --- /dev/null +++ b/webapp/product-build.xml @@ -0,0 +1,186 @@ + + + + + + + + + + + + + This script should not be run by itself. + It should be invoked from the build script of a Vivo product. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +all - Runs "clean", then "deploy". +clean - Delete all artifacts so the next build will be from scratch. +compile - Compile the Java source files. +test - Compile and run the JUnit tests. +war - Assemble everything into a deployable WAR file. +deploy - Deploy the application directly into the Tomcat webapps directory. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/webapp/test/log4j.properties b/webapp/test/log4j.properties new file mode 100644 index 000000000..0c2af8aff --- /dev/null +++ b/webapp/test/log4j.properties @@ -0,0 +1,10 @@ +# +# A simple Log4J configuration for unit tests. +# +# It's not very important, because the tests themselves will override this +# configuration in AbstractTestClass.initializeLogging(). +# +log4j.rootLogger=WARN, AllAppender +log4j.appender.AllAppender=org.apache.log4j.ConsoleAppender +log4j.appender.AllAppender.layout=org.apache.log4j.PatternLayout +log4j.appender.AllAppender.layout.ConversionPattern=%p %t %c - %m%n