diff --git a/CHANGELOG.md b/CHANGELOG.md index afbc5c984523e36a5a6908707380df9dcf21a934..141139ea4cef58f7bc2cb834af4f74123ea581d1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,11 +6,32 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Added +### Changed +### Removed +### Fixed + + +## [1.3.5] - 2020-01-22 ### Added +- org.label-schema LABELs for version, build-date, vcs-url in docker images +- explicit CATALINA_PID path +- build and install Apache Tomcat Native Library + ### Changed +- bump tomcat to latest 8.0 (=8.0.53) version +- increase java memory settings for tomcat (just-in-case) +- use regular catalina.sh start/stop/run commands (which in turn considers setenv.sh) +- ContacPerson(s) in SP definition + ### Removed +- own catalina.sh (use dist versions) +- tomcat8 init.d script (wasn't used) + ### Fixed +- (automatic redirects to) https://clarin.eurac.edu:8443/... not working + ## [1.3.4] - 2019-10-14 @@ -29,12 +50,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - #62 + ## [1.3.3] - 2019-07-23 ### Changed - adapted healthcheck "cronjob" to force exit in case it hangs for some reason (#60) + ## [1.3.2] - 2019-06-27 ### Added @@ -55,6 +78,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - fixed get URL for xerces - IdP metadata from CLARIN are now downloaded during Docker build and not only once the container is running + ## [1.3] - 2018-09-05 ### Added @@ -71,12 +95,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Made sure that tomcat is stopped with `-force` in entrypoint script to ensure that only one instance is running + ## [1.2.2] - 2018-08-31 ### Fixed - Changed the DSpace config to use the production handle prefix and not the staging one + ## [1.2] - 2018-08-27 ### Added @@ -101,6 +127,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Shibboleth build script now uses fixed version numbers instead of latest - Super short session timeout will no longer happen (#44) + ## [1.1] - 2018-06-15 ### Added @@ -122,7 +149,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 This is the first release. It all starts here. -[Unreleased]:https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/compare/v1.3.4...HEAD +[Unreleased]:https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/compare/v1.3.5...HEAD +[1.3.5]: https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/compare/v1.3.4...v1.3.5 [1.3.4]: https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/compare/v1.3.3...v1.3.4 [1.3.3]: https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/compare/v1.3.2...v1.3.3 [1.3.2]: https://gitlab.inf.unibz.it/commul/docker/clarin-dspace/compare/v1.3.1...v1.3.2 diff --git a/dockerfiles/.dockerignore b/dockerfiles/.dockerignore new file mode 100644 index 0000000000000000000000000000000000000000..c568bc813e80e9584f9e960f6ae3251f94552312 --- /dev/null +++ b/dockerfiles/.dockerignore @@ -0,0 +1,2 @@ +Dockerfile.* +release.sh diff --git a/dockerfiles/Dockerfile.dspace b/dockerfiles/Dockerfile.dspace index a2c0fccca4ceb4224c5490ea1b22db8ab7810428..58683afe93575800c0e08b528a0588e5d080d51f 100644 --- a/dockerfiles/Dockerfile.dspace +++ b/dockerfiles/Dockerfile.dspace @@ -1,30 +1,49 @@ -############################################################ +############################################################################## # Dockerfile to build LINDAT Dspace container images # Based on Ubuntu -############################################################ - -FROM ubuntu:16.04 -LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" +############################################################################## + +ARG UBUNTU_VERSION=16.04 +FROM ubuntu:$UBUNTU_VERSION +ARG UBUNTU_VERSION + +ARG LABEL_VCS_URL="https://gitlab.inf.unibz.it/commul/docker/clarin-dspace" +LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" \ + maintainer="Egon W. Stemle <egon.stemle@eurac.edu>" + +ENV TOMCAT_VERSION="8.0.53" +ENV TOMCAT_SHA512="cd8a4e48a629a2f2bb4ce6b101ebcce41da52b506064396ec1b2915c0b0d8d82123091242f2929a649bcd8b65ecf6cd1ab9c7d90ac0e261821097ab6fbe22df9 *apache-tomcat-8.0.53.tar.gz" +# https://archive.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz.sha512 + +ENV TERM linux +# APT(-GET) tweaks +# Set some sane defaults for apt inside docker +ENV DEBIAN_FRONTEND=noninteractive +COPY apt.local.conf /etc/apt/apt.conf.d/99local.conf +# use fast(er) local mirrors +COPY ubuntu-$UBUNTU_VERSION.sources.list /etc/apt/sources.list +RUN apt-get update && \ + apt-get upgrade # install cpanm and dependencies -RUN apt-get update \ -&& apt-get -y upgrade \ -&& apt-get -y install make gcc wget cpanminus - -RUN cpanm -n File::Spec::Functions -RUN cpanm Term::ReadLine - # install jdk, ant, psql, mvn, make, libxml, xsltproc, zip, wget -RUN apt-get update && apt-get -y install openjdk-8-jdk ant maven libxml2-utils xsltproc unzip curl git +RUN apt-get update && apt-get install \ + unzip curl wget git \ + make gcc \ + cpanminus \ + openjdk-8-jdk ant maven libxml2-utils xsltproc \ + libapr1-dev + +RUN cpanm -n File::Spec::Functions && \ + cpanm Term::ReadLine # install convenience apps for debug purposes (vim and jsbeautifier) -RUN apt-get update && apt-get -y install vim less python-pip -RUN pip install --upgrade pip +RUN apt-get update && apt-get install vim less python-pip RUN pip install jsbeautifier COPY commul-customization/__init__.py /usr/local/lib/python2.7/dist-packages/jsbeautifier/ # set up a proper locale -RUN apt-get -y install locales +RUN apt-get update && apt-get install locales RUN locale-gen en_US.UTF-8 COPY commul-customization/default_locale /etc/default/locale RUN chmod 0755 /etc/default/locale @@ -33,43 +52,64 @@ ENV LC_ALL=en_US.UTF-8 ENV LANG=en_US.UTF-8 ENV LANGUAGE=en_US.UTF-8 -# build tomcat 8.0.35, version recommended by LINDAT -RUN wget -O /tmp/apache-tomcat-8.0.52.tar.gz https://archive.apache.org/dist/tomcat/tomcat-8/v8.0.52/bin/apache-tomcat-8.0.52.tar.gz -RUN mkdir /opt/tomcat8 -RUN tar xvzf /tmp/apache-tomcat-8.0.52.tar.gz -C /opt/tomcat8/ --strip-components=1 -RUN groupadd tomcat8 -RUN useradd -s /bin/false -g tomcat8 -d /opt/tomcat8/ tomcat8 - -# change permissions -RUN chown -R tomcat8:tomcat8 /opt/tomcat8 -# copy config files etc. (init script,catalina.sh,setenv.sh,server.xml -COPY commul-customization/tomcat8 /etc/init.d/ -RUN chmod a+x /etc/init.d/tomcat8 -COPY commul-customization/catalina.sh /opt/tomcat8/bin/ -COPY commul-customization/setenv.sh /opt/tomcat8/bin/ +### Install Tomcat +# +# build tomcat $TOMCAT_VERSION (> 8.0.35), version recommended by LINDAT +RUN wget -O /tmp/apache-tomcat-$TOMCAT_VERSION.tar.gz \ + https://archive.apache.org/dist/tomcat/tomcat-8/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz +WORKDIR /tmp + +# checksum check the download +RUN echo "$TOMCAT_SHA512" > /tmp/apache-tomcat.sha512 && \ + sha512sum --check apache-tomcat.sha512 + +RUN mkdir /opt/tomcat8 && \ + tar xzf /tmp/apache-tomcat-$TOMCAT_VERSION.tar.gz \ + -C /opt/tomcat8/ \ + --strip-components=1 && \ + groupadd tomcat8 && \ + useradd -s /bin/false -g tomcat8 -d /opt/tomcat8/ tomcat8 && \ + chown -R tomcat8:tomcat8 /opt/tomcat8 + +# Install Apache Tomcat Native +# prerequisites: libopenssl, libapr1, jdk +RUN mkdir /opt/tomcat8/bin/tomcat-native && \ + tar xzf /opt/tomcat8/bin/tomcat-native.tar.gz \ + -C /opt/tomcat8/bin/tomcat-native \ + --strip-components=1 && \ + cd /opt/tomcat8/bin/tomcat-native/native && \ + ./configure \ + --with-java-home=/usr/lib/jvm/java-8-openjdk-amd64/ \ + --prefix=/usr/local/ && \ + make && make install + +# copy config files etc. (setenv.sh,server.xml) +COPY commul-customization/tomcat-setenv.sh /opt/tomcat8/bin/setenv.sh COPY commul-customization/tomcat-server.xml /opt/tomcat8/conf/server.xml -# install Dspace +### Install Dspace +# # pre-fetch maven dependencies -RUN git clone https://github.com/commul/clarin-dspace.git -b commul-custom /opt/repository/sources/dspace +RUN git clone --depth 1 --branch commul-custom https://github.com/commul/clarin-dspace.git /opt/repository/sources/dspace WORKDIR /opt/repository/sources/dspace -RUN mvn compile -#COPY commul-customization/dspace-pom.xml /tmp/pom.xml -#WORKDIR /tmp/ -## RUN mvn dependency:resolve -#RUN mvn -B -T 4 dependency:copy-dependencies dependency:resolve-plugins dependency:go-offline clean -# all files could be copied into a /tmp folder within the container first (maybe that could be mounted?); see also dspace-entrypoint.sh +RUN mvn -B -T 1C \ + --quiet \ + --fail-never \ + dependency:copy-dependencies dependency:resolve-plugins dependency:go-offline +# # this checks if there was a new commit since the last build ADD https://api.github.com/repos/commul/clarin-dspace/git/refs/heads/commul-custom /tmp/version.json RUN git pull +RUN mvn -B -T 1C clean compile + WORKDIR /opt/repository/sources/dspace/utilities/project_helpers RUN ./setup.sh /opt/repository/workspace COPY commul-customization/variable.makefile /opt/repository/workspace/config/variable.makefile # COPY commul-customization/dspace.cfg /opt/repository/sources/dspace/dspace/config/dspace.cfg # install python modules: magic dateutil, lxml -RUN apt-get update && apt-get install -y python-magic python-dateutil python-lxml +RUN apt-get update && apt-get install python-magic python-dateutil python-lxml # copy over configs and startup scripts COPY commul-customization/start_stack.sh /opt/repository/workspace/scripts/ @@ -99,6 +139,12 @@ RUN cp /opt/repository/workspace/config/etc/init.d/handle-server /etc/init.d/ RUN chmod +x /etc/init.d/handle-server RUN perl -pi -e 's#DSPACE_INSTALLATION_DIRECTORY=#DSPACE_INSTALLATION_DIRECTORY=/opt/lindat-dspace/installation#' /etc/default/handle-server +ARG LABEL_VERSION +ARG LABEL_BUILD_DATE +LABEL org.label-schema.version=$LABEL_VERSION \ + org.label-schema.build-date=$LABEL_BUILD_DATE \ + org.label-schema.vcs-url=$LABEL_VCS_URL + # copy entrypoint script and start COPY commul-customization/entrypoint.sh /usr/bin/entrypoint.sh RUN chmod u+x /usr/bin/entrypoint.sh diff --git a/dockerfiles/Dockerfile.handle b/dockerfiles/Dockerfile.handle index fb2bc21a5a5276f924c6c9d1c6ef00a6be901217..f56410a18ce34a6f69af11b5c0196b35bbd592b5 100644 --- a/dockerfiles/Dockerfile.handle +++ b/dockerfiles/Dockerfile.handle @@ -3,17 +3,29 @@ # Based on Ubuntu ############################################################ -FROM ubuntu -LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" +ARG UBUNTU_VERSION=16.04 +FROM ubuntu:$UBUNTU_VERSION +ARG UBUNTU_VERSION + +ARG LABEL_VCS_URL="https://gitlab.inf.unibz.it/commul/docker/clarin-dspace" +LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" \ + maintainer="Egon W. Stemle <egon.stemle@eurac.edu>" ENV TERM linux +# APT(-GET) tweaks +# Set some sane defaults for apt inside docker +ENV DEBIAN_FRONTEND=noninteractive +COPY apt.local.conf /etc/apt/apt.conf.d/99local.conf +# use fast(er) local mirrors +COPY ubuntu-$UBUNTU_VERSION.sources.list /etc/apt/sources.list +RUN apt-get update && \ + apt-get upgrade RUN apt-get update &&\ - apt-get -y upgrade &&\ - apt-get -y install openjdk-8-jdk unzip wget make cpanminus gcc + apt-get install openjdk-8-jdk unzip wget make cpanminus gcc # convenience packages -RUN apt-get -y install less vim +RUN apt-get update && apt-get install less vim RUN cpanm Term::ReadLine RUN cpanm File::Spec::Functions @@ -29,5 +41,12 @@ RUN cat /tmp/hdl-setup.tmp | bin/hdl-setup-server /hs/svr_1/ RUN perl -pi -e 's/YOUR_PREFIX/20.500.12084/' /hs/svr_1/config.dct RUN perl -pi -e 's/case_sensitive" = "no/case_sensitive" = "yes/' /hs/svr_1/config.dct RUN perl -i -plne 'print " \"storage_type\" = \"CUSTOM\"\n\ \"storage_class\" = \"org.dspace.handle.HandlePlugin\"" if(/max_session/);' /hs/svr_1/config.dct + +ARG LABEL_VERSION +ARG LABEL_BUILD_DATE +LABEL org.label-schema.version=$LABEL_VERSION \ + org.label-schema.build-date=$LABEL_BUILD_DATE \ + org.label-schema.vcs-url=$LABEL_VCS_URL + # ENTRYPOINT ["/bin/bash"] CMD tail -f /hs/svr_1/config.dct diff --git a/dockerfiles/Dockerfile.nginx b/dockerfiles/Dockerfile.nginx index 64102ecff9879dfa413ec7560061b78588900970..9b7051b69d4f19204b353fb1d556293f0426df0a 100644 --- a/dockerfiles/Dockerfile.nginx +++ b/dockerfiles/Dockerfile.nginx @@ -1,31 +1,45 @@ -####################################################################### +############################################################################## # Dockerfile to build nginx and shibboleth for LINDAT Dspace container # Based on Ubuntu -####################################################################### - -FROM ubuntu:16.04 -LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" +############################################################################## + +ARG UBUNTU_VERSION=16.04 +FROM ubuntu:$UBUNTU_VERSION +ARG UBUNTU_VERSION + +ARG LABEL_VCS_URL="https://gitlab.inf.unibz.it/commul/docker/clarin-dspace" +LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" \ + maintainer="Egon W. Stemle <egon.stemle@eurac.edu>" + +ENV TERM linux +# APT(-GET) tweaks +# Set some sane defaults for apt inside docker +ENV DEBIAN_FRONTEND=noninteractive +COPY apt.local.conf /etc/apt/apt.conf.d/99local.conf +# use fast(er) local mirrors +COPY ubuntu-$UBUNTU_VERSION.sources.list /etc/apt/sources.list +RUN apt-get update && \ + apt-get upgrade # install cpanm and dependencies RUN apt-get update \ -&& apt-get -y upgrade \ -&& apt-get -y install make gcc wget cpanminus +&& apt-get install make gcc wget cpanminus RUN cpanm -n File::Spec::Functions RUN cpanm Term::ReadLine # install jdk, ant, psql, mvn, make, libxml, xsltproc, zip, wget RUN apt-get update \ -&& apt-get -y install ant curl libxml2-utils maven openjdk-8-jdk unzip xsltproc yui-compressor +&& apt-get install ant curl libxml2-utils maven openjdk-8-jdk unzip xsltproc yui-compressor # install convenience apps for debug purposes (vim and jsbeautifier) -RUN apt-get -y install vim less python-pip +RUN apt-get update && apt-get install vim less python-pip RUN pip install --upgrade pip RUN pip install jsbeautifier COPY commul-customization/__init__.py /usr/local/lib/python2.7/dist-packages/jsbeautifier/ # set up a proper locale -RUN apt-get -y install locales +RUN apt-get update && apt-get install locales RUN locale-gen en_US.UTF-8 COPY commul-customization/default_locale /etc/default/locale RUN chmod 0755 /etc/default/locale @@ -35,7 +49,7 @@ ENV LANG=en_US.UTF-8 ENV LANGUAGE=en_US.UTF-8 # build nginx -RUN apt-get install -y zlib1g zlib1g-dev libpcre3 libpcre3-dev curl +RUN apt-get update && apt-get install zlib1g zlib1g-dev libpcre3 libpcre3-dev curl RUN cpanm File::Spec::Functions RUN cpanm Term::ReadLine COPY commul-customization/nginx_build.sh /tmp/nginx_build.sh @@ -59,13 +73,13 @@ RUN chown -R www-data:www-data /opt/nginx/html/ #COPY commul-customization/eurac.png /opt/nginx/html/img/ # install php -RUN apt-get update && apt-get install -y php-fpm php-xml +RUN apt-get update && apt-get install php-fpm php-xml # copy over aa-statistics script RUN mkdir /opt/nginx/html/php COPY commul-customization/aa-statistics.php /opt/nginx/html/php/ # get aai project -RUN apt-get install -y git +RUN apt-get update && apt-get install git RUN git clone https://github.com/ufal/lindat-aai-discovery.git /opt/repository/sources/lindat-aai-discovery # install shibboleth @@ -79,7 +93,7 @@ RUN chmod a+x /etc/init.d/shibd # create the test secure folder and set up perl fastcgi RUN mkdir /opt/nginx/html/secure -RUN apt-get update && apt-get install -y fcgiwrap +RUN apt-get update && apt-get install fcgiwrap RUN cpanm CGI URI XML::Twig LWP::Protocol::https COPY commul-customization/shib_test.pl /opt/nginx/html/secure/ COPY commul-customization/shib_fastcgi_params /opt/nginx/conf/ @@ -88,7 +102,7 @@ RUN chown -R www-data:www-data /opt/nginx/html/secure RUN chmod a+x /opt/nginx/html/secure/shib_test.pl # install supervisor -RUN apt-get install -y python-setuptools +RUN apt-get update && apt-get install python-setuptools RUN easy_install supervisor COPY commul-customization/supervisord.conf /etc/ RUN mkdir -p /var/log/supervisor @@ -127,4 +141,10 @@ RUN yui-compressor -o aai.min.js aai.js # add IdP metadata from CLARIN server ADD https://infra.clarin.eu/aai/prod_md_about_spf_idps.xml /opt/shibboleth-sp-fastcgi/var/cache/shibboleth/ +ARG LABEL_VERSION +ARG LABEL_BUILD_DATE +LABEL org.label-schema.version=$LABEL_VERSION \ + org.label-schema.build-date=$LABEL_BUILD_DATE \ + org.label-schema.vcs-url=$LABEL_VCS_URL + ENTRYPOINT ["/usr/local/bin/supervisord", "-c", "/etc/supervisord.conf"] diff --git a/dockerfiles/Dockerfile.postgres b/dockerfiles/Dockerfile.postgres index 1b325969f6c37aa585be6712dca088ca60d5ffbd..b61c89b0db3ec54552ade2c5f600d22395881035 100644 --- a/dockerfiles/Dockerfile.postgres +++ b/dockerfiles/Dockerfile.postgres @@ -1,8 +1,28 @@ -FROM postgres:9.6 -LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" +############################################################################## +# Dockerfile to build postgres for LINDAT Dspace container +# Based on Postgres +############################################################################## -# install git -RUN apt-get update && apt-get -y install git +ARG POSTGRES_VERSION=9.6 +FROM postgres:$POSTGRES_VERSION +ARG POSTGRES_VERSION + +ARG LABEL_VCS_URL="https://gitlab.inf.unibz.it/commul/docker/clarin-dspace" +LABEL maintainer="Alexander König <Alexander.Koenig@eurac.edu>" \ + maintainer="Egon W. Stemle <egon.stemle@eurac.edu>" + +ENV TERM linux +# APT(-GET) tweaks +# Set some sane defaults for apt inside docker +ENV DEBIAN_FRONTEND=noninteractive +COPY apt.local.conf /etc/apt/apt.conf.d/99local.conf +# +# +RUN apt-get update && \ + apt-get upgrade + +# Install git +RUN apt-get update && apt-get install git # copy int db script RUN mkdir -p /docker-entrypoint-initdb.d @@ -18,4 +38,8 @@ RUN mkdir /tmp/sql/ COPY adapt_utilities_sql.sh /tmp/sql/ RUN /tmp/sql/adapt_utilities_sql.sh - +ARG LABEL_VERSION +ARG LABEL_BUILD_DATE +LABEL org.label-schema.version=$LABEL_VERSION \ + org.label-schema.build-date=$LABEL_BUILD_DATE \ + org.label-schema.vcs-url=$LABEL_VCS_URL diff --git a/dockerfiles/adapt_utilities_sql.sh b/dockerfiles/adapt_utilities_sql.sh index 47bd281ce18538ab9d99c401999a2833827e1f3e..5661053be3a14e51215921e25ab032d1efd71e82 100755 --- a/dockerfiles/adapt_utilities_sql.sh +++ b/dockerfiles/adapt_utilities_sql.sh @@ -1,6 +1,6 @@ #!/bin/bash -git clone https://github.com/commul/clarin-dspace.git -b commul-custom /tmp/dspace +git clone --depth 1 --branch commul-custom https://github.com/commul/clarin-dspace.git /tmp/dspace cp /tmp/dspace/utilities/utilities.sql /tmp/sql/ cp /tmp/dspace/utilities/license_definition.txt /tmp/sql/ chmod -R a+w /tmp/sql/ diff --git a/dockerfiles/apt.local.conf b/dockerfiles/apt.local.conf new file mode 100644 index 0000000000000000000000000000000000000000..43cafde125414542a43d945bad74b2ad66e97c1d --- /dev/null +++ b/dockerfiles/apt.local.conf @@ -0,0 +1,3 @@ +# Set some sane defaults for docker +APT { GET { Assume-Yes "true"; }; }; +APT { GET { Fix-Broken "true"; }; }; diff --git a/dockerfiles/commul-customization/catalina.sh b/dockerfiles/commul-customization/catalina.sh deleted file mode 100755 index 42965df6bf5808c1a50d87ce9812cd09e9a47bee..0000000000000000000000000000000000000000 --- a/dockerfiles/commul-customization/catalina.sh +++ /dev/null @@ -1,593 +0,0 @@ -#!/bin/sh - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# ----------------------------------------------------------------------------- -# Control Script for the CATALINA Server -# -# Environment Variable Prerequisites -# -# Do not set the variables in this script. Instead put them into a script -# setenv.sh in CATALINA_BASE/bin to keep your customizations separate. -# -# CATALINA_HOME May point at your Catalina "build" directory. -# -# CATALINA_BASE (Optional) Base directory for resolving dynamic portions -# of a Catalina installation. If not present, resolves to -# the same directory that CATALINA_HOME points to. -# -# CATALINA_OUT (Optional) Full path to a file where stdout and stderr -# will be redirected. -# Default is $CATALINA_BASE/logs/catalina.out -# -# CATALINA_OPTS (Optional) Java runtime options used when the "start", -# "run" or "debug" command is executed. -# Include here and not in JAVA_OPTS all options, that should -# only be used by Tomcat itself, not by the stop process, -# the version command etc. -# Examples are heap size, GC logging, JMX ports etc. -# -# CATALINA_TMPDIR (Optional) Directory path location of temporary directory -# the JVM should use (java.io.tmpdir). Defaults to -# $CATALINA_BASE/temp. -# -# JAVA_HOME Must point at your Java Development Kit installation. -# Required to run the with the "debug" argument. -# -# JRE_HOME Must point at your Java Runtime installation. -# Defaults to JAVA_HOME if empty. If JRE_HOME and JAVA_HOME -# are both set, JRE_HOME is used. -# -# JAVA_OPTS (Optional) Java runtime options used when any command -# is executed. -# Include here and not in CATALINA_OPTS all options, that -# should be used by Tomcat and also by the stop process, -# the version command etc. -# Most options should go into CATALINA_OPTS. -# -# JAVA_ENDORSED_DIRS (Optional) Lists of of colon separated directories -# containing some jars in order to allow replacement of APIs -# created outside of the JCP (i.e. DOM and SAX from W3C). -# It can also be used to update the XML parser implementation. -# Defaults to $CATALINA_HOME/endorsed. -# -# JPDA_TRANSPORT (Optional) JPDA transport used when the "jpda start" -# command is executed. The default is "dt_socket". -# -# JPDA_ADDRESS (Optional) Java runtime options used when the "jpda start" -# command is executed. The default is localhost:8000. -# -# JPDA_SUSPEND (Optional) Java runtime options used when the "jpda start" -# command is executed. Specifies whether JVM should suspend -# execution immediately after startup. Default is "n". -# -# JPDA_OPTS (Optional) Java runtime options used when the "jpda start" -# command is executed. If used, JPDA_TRANSPORT, JPDA_ADDRESS, -# and JPDA_SUSPEND are ignored. Thus, all required jpda -# options MUST be specified. The default is: -# -# -agentlib:jdwp=transport=$JPDA_TRANSPORT, -# address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND -# -# JSSE_OPTS (Optional) Java runtime options used to control the TLS -# implementation when JSSE is used. Default is: -# "-Djdk.tls.ephemeralDHKeySize=2048" -# -# CATALINA_PID (Optional) Path of the file which should contains the pid -# of the catalina startup java process, when start (fork) is -# used -# -# LOGGING_CONFIG (Optional) Override Tomcat's logging config file -# Example (all one line) -# LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties" -# -# LOGGING_MANAGER (Optional) Override Tomcat's logging manager -# Example (all one line) -# LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" -# ----------------------------------------------------------------------------- - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false -darwin=false -os400=false -case "`uname`" in -CYGWIN*) cygwin=true;; -Darwin*) darwin=true;; -OS400*) os400=true;; -esac - -# resolve links - $0 may be a softlink -PRG="$0" - -while [ -h "$PRG" ]; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`/"$link" - fi -done - -# Get standard environment variables -PRGDIR=`dirname "$PRG"` - -# Only set CATALINA_HOME if not already set -[ -z "$CATALINA_HOME" ] && CATALINA_HOME=`cd "$PRGDIR/.." >/dev/null; pwd` - -# Copy CATALINA_BASE from CATALINA_HOME if not already set -[ -z "$CATALINA_BASE" ] && CATALINA_BASE="$CATALINA_HOME" - -# Ensure that any user defined CLASSPATH variables are not used on startup, -# but allow them to be specified in setenv.sh, in rare case when it is needed. -CLASSPATH= - -if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then - . "$CATALINA_BASE/bin/setenv.sh" -elif [ -r "$CATALINA_HOME/bin/setenv.sh" ]; then - . "$CATALINA_HOME/bin/setenv.sh" -fi - -export CATALINA_PID="$CATALINA_HOME/catalina_pid.txt" - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin; then - [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$JRE_HOME" ] && JRE_HOME=`cygpath --unix "$JRE_HOME"` - [ -n "$CATALINA_HOME" ] && CATALINA_HOME=`cygpath --unix "$CATALINA_HOME"` - [ -n "$CATALINA_BASE" ] && CATALINA_BASE=`cygpath --unix "$CATALINA_BASE"` - [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"` -fi - -# Ensure that neither CATALINA_HOME nor CATALINA_BASE contains a colon -# as this is used as the separator in the classpath and Java provides no -# mechanism for escaping if the same character appears in the path. -case $CATALINA_HOME in - *:*) echo "Using CATALINA_HOME: $CATALINA_HOME"; - echo "Unable to start as CATALINA_HOME contains a colon (:) character"; - exit 1; -esac -case $CATALINA_BASE in - *:*) echo "Using CATALINA_BASE: $CATALINA_BASE"; - echo "Unable to start as CATALINA_BASE contains a colon (:) character"; - exit 1; -esac - -# For OS400 -if $os400; then - # Set job priority to standard for interactive (interactive - 6) by using - # the interactive priority - 6, the helper threads that respond to requests - # will be running at the same priority as interactive jobs. - COMMAND='chgjob job('$JOBNAME') runpty(6)' - system $COMMAND - - # Enable multi threading - export QIBM_MULTI_THREADED=Y -fi - -# Get standard Java environment variables -if $os400; then - # -r will Only work on the os400 if the files are: - # 1. owned by the user - # 2. owned by the PRIMARY group of the user - # this will not work if the user belongs in secondary groups - . "$CATALINA_HOME"/bin/setclasspath.sh -else - if [ -r "$CATALINA_HOME"/bin/setclasspath.sh ]; then - . "$CATALINA_HOME"/bin/setclasspath.sh - else - echo "Cannot find $CATALINA_HOME/bin/setclasspath.sh" - echo "This file is needed to run this program" - exit 1 - fi -fi - -# Add on extra jar files to CLASSPATH -if [ ! -z "$CLASSPATH" ] ; then - CLASSPATH="$CLASSPATH": -fi -CLASSPATH="$CLASSPATH""$CATALINA_HOME"/bin/bootstrap.jar - -if [ -z "$CATALINA_OUT" ] ; then - CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out -fi - -if [ -z "$CATALINA_TMPDIR" ] ; then - # Define the java.io.tmpdir to use for Catalina - CATALINA_TMPDIR="$CATALINA_BASE"/temp -fi - -# Add tomcat-juli.jar to classpath -# tomcat-juli.jar can be over-ridden per instance -if [ -r "$CATALINA_BASE/bin/tomcat-juli.jar" ] ; then - CLASSPATH=$CLASSPATH:$CATALINA_BASE/bin/tomcat-juli.jar -else - CLASSPATH=$CLASSPATH:$CATALINA_HOME/bin/tomcat-juli.jar -fi - -# Bugzilla 37848: When no TTY is available, don't output to console -have_tty=0 -if [ "`tty`" != "not a tty" ]; then - have_tty=1 -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"` - JRE_HOME=`cygpath --absolute --windows "$JRE_HOME"` - CATALINA_HOME=`cygpath --absolute --windows "$CATALINA_HOME"` - CATALINA_BASE=`cygpath --absolute --windows "$CATALINA_BASE"` - CATALINA_TMPDIR=`cygpath --absolute --windows "$CATALINA_TMPDIR"` - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"` -fi - -if [ -z "$JSSE_OPTS" ] ; then - JSSE_OPTS="-Djdk.tls.ephemeralDHKeySize=2048" -fi -JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS" - -# Set juli LogManager config file if it is present and an override has not been issued -if [ -z "$LOGGING_CONFIG" ]; then - if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then - LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties" - else - # Bugzilla 45585 - LOGGING_CONFIG="-Dnop" - fi -fi - -if [ -z "$LOGGING_MANAGER" ]; then - LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" -fi - -# Uncomment the following line to make the umask available when using the -# org.apache.catalina.security.SecurityListener -#JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`" - -# ----- Execute The Requested Command ----------------------------------------- - -# Bugzilla 37848: only output this if we have a TTY -if [ $have_tty -eq 1 ]; then - echo "Using CATALINA_BASE: $CATALINA_BASE" - echo "Using CATALINA_HOME: $CATALINA_HOME" - echo "Using CATALINA_TMPDIR: $CATALINA_TMPDIR" - if [ "$1" = "debug" ] ; then - echo "Using JAVA_HOME: $JAVA_HOME" - else - echo "Using JRE_HOME: $JRE_HOME" - fi - echo "Using CLASSPATH: $CLASSPATH" - if [ ! -z "$CATALINA_PID" ]; then - echo "Using CATALINA_PID: $CATALINA_PID" - fi -fi - -if [ "$1" = "jpda" ] ; then - if [ -z "$JPDA_TRANSPORT" ]; then - JPDA_TRANSPORT="dt_socket" - fi - if [ -z "$JPDA_ADDRESS" ]; then - JPDA_ADDRESS="localhost:8000" - fi - if [ -z "$JPDA_SUSPEND" ]; then - JPDA_SUSPEND="n" - fi - if [ -z "$JPDA_OPTS" ]; then - JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND" - fi - CATALINA_OPTS="$JPDA_OPTS $CATALINA_OPTS" - shift -fi - -if [ "$1" = "debug" ] ; then - if $os400; then - echo "Debug command not available on OS400" - exit 1 - else - shift - if [ "$1" = "-security" ] ; then - if [ $have_tty -eq 1 ]; then - echo "Using Security Manager" - fi - shift - exec "$_RUNJDB" "$LOGGING_CONFIG" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ - -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ - -sourcepath "$CATALINA_HOME"/../../java \ - -Djava.security.manager \ - -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ - -Dcatalina.base="$CATALINA_BASE" \ - -Dcatalina.home="$CATALINA_HOME" \ - -Djava.io.tmpdir="$CATALINA_TMPDIR" \ - org.apache.catalina.startup.Bootstrap "$@" start - else - exec "$_RUNJDB" "$LOGGING_CONFIG" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ - -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ - -sourcepath "$CATALINA_HOME"/../../java \ - -Dcatalina.base="$CATALINA_BASE" \ - -Dcatalina.home="$CATALINA_HOME" \ - -Djava.io.tmpdir="$CATALINA_TMPDIR" \ - org.apache.catalina.startup.Bootstrap "$@" start - fi - fi - -elif [ "$1" = "run" ]; then - - shift - if [ "$1" = "-security" ] ; then - if [ $have_tty -eq 1 ]; then - echo "Using Security Manager" - fi - shift - eval exec "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ - -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ - -Djava.security.manager \ - -Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \ - -Dcatalina.base="\"$CATALINA_BASE\"" \ - -Dcatalina.home="\"$CATALINA_HOME\"" \ - -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ - org.apache.catalina.startup.Bootstrap "$@" start - else - eval exec "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ - -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ - -Dcatalina.base="\"$CATALINA_BASE\"" \ - -Dcatalina.home="\"$CATALINA_HOME\"" \ - -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ - org.apache.catalina.startup.Bootstrap "$@" start - fi - -elif [ "$1" = "start" ] ; then - - if [ ! -z "$CATALINA_PID" ]; then - if [ -f "$CATALINA_PID" ]; then - if [ -s "$CATALINA_PID" ]; then - echo "Existing PID file found during start." - if [ -r "$CATALINA_PID" ]; then - PID=`cat "$CATALINA_PID"` - ps -p $PID >/dev/null 2>&1 - if [ $? -eq 0 ] ; then - echo "Tomcat appears to still be running with PID $PID. Start aborted." - echo "If the following process is not a Tomcat process, remove the PID file and try again:" - ps -f -p $PID - exit 1 - else - echo "Removing/clearing stale PID file." - rm -f "$CATALINA_PID" >/dev/null 2>&1 - if [ $? != 0 ]; then - if [ -w "$CATALINA_PID" ]; then - cat /dev/null > "$CATALINA_PID" - else - echo "Unable to remove or clear stale PID file. Start aborted." - exit 1 - fi - fi - fi - else - echo "Unable to read PID file. Start aborted." - exit 1 - fi - else - rm -f "$CATALINA_PID" >/dev/null 2>&1 - if [ $? != 0 ]; then - if [ ! -w "$CATALINA_PID" ]; then - echo "Unable to remove or write to empty PID file. Start aborted." - exit 1 - fi - fi - fi - fi - fi - - shift - touch "$CATALINA_OUT" - if [ "$1" = "-security" ] ; then - if [ $have_tty -eq 1 ]; then - echo "Using Security Manager" - fi - shift - eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ - -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ - -Djava.security.manager \ - -Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \ - -Dcatalina.base="\"$CATALINA_BASE\"" \ - -Dcatalina.home="\"$CATALINA_HOME\"" \ - -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ - org.apache.catalina.startup.Bootstrap "$@" start \ - >> "$CATALINA_OUT" 2>&1 "&" - - else - eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ - -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ - -Dcatalina.base="\"$CATALINA_BASE\"" \ - -Dcatalina.home="\"$CATALINA_HOME\"" \ - -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ - org.apache.catalina.startup.Bootstrap "$@" start \ - >> "$CATALINA_OUT" 2>&1 "&" - - fi - - if [ ! -z "$CATALINA_PID" ]; then - echo $! > "$CATALINA_PID" - fi - - echo "Tomcat started." - -elif [ "$1" = "stop" ] ; then - - shift - - SLEEP=5 - if [ ! -z "$1" ]; then - echo $1 | grep "[^0-9]" >/dev/null 2>&1 - if [ $? -gt 0 ]; then - SLEEP=$1 - shift - fi - fi - - FORCE=0 - if [ "$1" = "-force" ]; then - shift - FORCE=1 - fi - - if [ ! -z "$CATALINA_PID" ]; then - if [ -f "$CATALINA_PID" ]; then - if [ -s "$CATALINA_PID" ]; then - kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1 - if [ $? -gt 0 ]; then - echo "PID file found but no matching process was found. Stop aborted." - exit 1 - fi - else - echo "PID file is empty and has been ignored." - fi - else - echo "\$CATALINA_PID was set but the specified file does not exist. Is Tomcat running? Stop aborted." - exit 1 - fi - fi - - eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \ - -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ - -Dcatalina.base="\"$CATALINA_BASE\"" \ - -Dcatalina.home="\"$CATALINA_HOME\"" \ - -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ - org.apache.catalina.startup.Bootstrap "$@" stop - - # stop failed. Shutdown port disabled? Try a normal kill. - if [ $? != 0 ]; then - if [ ! -z "$CATALINA_PID" ]; then - echo "The stop command failed. Attempting to signal the process to stop through OS signal." - kill -15 `cat "$CATALINA_PID"` >/dev/null 2>&1 - fi - fi - - if [ ! -z "$CATALINA_PID" ]; then - if [ -f "$CATALINA_PID" ]; then - while [ $SLEEP -ge 0 ]; do - kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1 - if [ $? -gt 0 ]; then - rm -f "$CATALINA_PID" >/dev/null 2>&1 - if [ $? != 0 ]; then - if [ -w "$CATALINA_PID" ]; then - cat /dev/null > "$CATALINA_PID" - # If Tomcat has stopped don't try and force a stop with an empty PID file - FORCE=0 - else - echo "The PID file could not be removed or cleared." - fi - fi - echo "Tomcat stopped." - break - fi - if [ $SLEEP -gt 0 ]; then - sleep 1 - fi - if [ $SLEEP -eq 0 ]; then - echo "Tomcat did not stop in time." - if [ $FORCE -eq 0 ]; then - echo "PID file was not removed." - fi - echo "To aid diagnostics a thread dump has been written to standard out." - kill -3 `cat "$CATALINA_PID"` - fi - SLEEP=`expr $SLEEP - 1 ` - done - fi - fi - - KILL_SLEEP_INTERVAL=5 - if [ $FORCE -eq 1 ]; then - if [ -z "$CATALINA_PID" ]; then - echo "Kill failed: \$CATALINA_PID not set" - else - if [ -f "$CATALINA_PID" ]; then - PID=`cat "$CATALINA_PID"` - echo "Killing Tomcat with the PID: $PID" - kill -9 $PID - while [ $KILL_SLEEP_INTERVAL -ge 0 ]; do - kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1 - if [ $? -gt 0 ]; then - rm -f "$CATALINA_PID" >/dev/null 2>&1 - if [ $? != 0 ]; then - if [ -w "$CATALINA_PID" ]; then - cat /dev/null > "$CATALINA_PID" - else - echo "The PID file could not be removed." - fi - fi - echo "The Tomcat process has been killed." - break - fi - if [ $KILL_SLEEP_INTERVAL -gt 0 ]; then - sleep 1 - fi - KILL_SLEEP_INTERVAL=`expr $KILL_SLEEP_INTERVAL - 1 ` - done - if [ $KILL_SLEEP_INTERVAL -lt 0 ]; then - echo "Tomcat has not been killed completely yet. The process might be waiting on some system call or might be UNINTERRUPTIBLE." - fi - fi - fi - fi - -elif [ "$1" = "configtest" ] ; then - - eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \ - -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ - -Dcatalina.base="\"$CATALINA_BASE\"" \ - -Dcatalina.home="\"$CATALINA_HOME\"" \ - -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ - org.apache.catalina.startup.Bootstrap configtest - result=$? - if [ $result -ne 0 ]; then - echo "Configuration error detected!" - fi - exit $result - -elif [ "$1" = "version" ] ; then - - "$_RUNJAVA" \ - -classpath "$CATALINA_HOME/lib/catalina.jar" \ - org.apache.catalina.util.ServerInfo - -else - - echo "Usage: catalina.sh ( commands ... )" - echo "commands:" - if $os400; then - echo " debug Start Catalina in a debugger (not available on OS400)" - echo " debug -security Debug Catalina with a security manager (not available on OS400)" - else - echo " debug Start Catalina in a debugger" - echo " debug -security Debug Catalina with a security manager" - fi - echo " jpda start Start Catalina under JPDA debugger" - echo " run Start Catalina in the current window" - echo " run -security Start in the current window with security manager" - echo " start Start Catalina in a separate window" - echo " start -security Start in a separate window with security manager" - echo " stop Stop Catalina, waiting up to 5 seconds for the process to end" - echo " stop n Stop Catalina, waiting up to n seconds for the process to end" - echo " stop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still running" - echo " stop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still running" - echo " configtest Run a basic syntax check on server.xml - check exit code for result" - echo " version What version of tomcat are you running?" - echo "Note: Waiting for the process to end and use of the -force option require that \$CATALINA_PID is defined" - exit 1 - -fi diff --git a/dockerfiles/commul-customization/clarin.eurac.edu.template.metadata.xml b/dockerfiles/commul-customization/clarin.eurac.edu.template.metadata.xml index 56f2639cfad9bc6c7c5d0fa7301284f398b7a690..43829b0e3de704c4cad3a3853c1bda4be712233b 100644 --- a/dockerfiles/commul-customization/clarin.eurac.edu.template.metadata.xml +++ b/dockerfiles/commul-customization/clarin.eurac.edu.template.metadata.xml @@ -65,18 +65,18 @@ <md:OrganizationURL xml:lang="it">http://www.eurac.edu/it</md:OrganizationURL> </md:Organization> <md:ContactPerson contactType="technical"> - <md:GivenName>Alexander</md:GivenName> - <md:SurName>König</md:SurName> - <md:EmailAddress>mailto:Alexander.Koenig@eurac.edu</md:EmailAddress> + <md:GivenName>Egon</md:GivenName> + <md:SurName>Stemle</md:SurName> + <md:EmailAddress>mailto:clarin@eurac.edu</md:EmailAddress> </md:ContactPerson> <md:ContactPerson contactType="support"> - <md:GivenName>Alexander</md:GivenName> - <md:SurName>König</md:SurName> - <md:EmailAddress>mailto:Alexander.Koenig@eurac.edu</md:EmailAddress> + <md:GivenName>Egon</md:GivenName> + <md:SurName>Stemle</md:SurName> + <md:EmailAddress>mailto:clarin@eurac.edu</md:EmailAddress> </md:ContactPerson> <md:ContactPerson contactType="administrative"> <md:GivenName>Andrea</md:GivenName> <md:SurName>Abel</md:SurName> - <md:EmailAddress>mailto:Andrea.Abel@eurac.edu</md:EmailAddress> + <md:EmailAddress>mailto:linguistics@eurac.edu</md:EmailAddress> </md:ContactPerson> </md:EntityDescriptor> diff --git a/dockerfiles/commul-customization/dspace-pom.xml b/dockerfiles/commul-customization/dspace-pom.xml deleted file mode 100644 index 6b1dc2294de130949456f35f804601b94d4b3e24..0000000000000000000000000000000000000000 --- a/dockerfiles/commul-customization/dspace-pom.xml +++ /dev/null @@ -1,1674 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>org.dspace</groupId> - <artifactId>dspace-parent</artifactId> - <packaging>pom</packaging> - <version>5.9-SNAPSHOT</version> - <name>DSpace Parent Project</name> - <description> - DSpace open source software is a turnkey institutional repository application. - </description> - <url>https://github.com/dspace/DSpace</url> - - <organization> - <name>DuraSpace</name> - <url>http://www.dspace.org</url> - </organization> - - <!-- brings the sonatype snapshot repository and signing requirement on board --> - <parent> - <groupId>org.sonatype.oss</groupId> - <artifactId>oss-parent</artifactId> - <version>9</version> - <relativePath /> - </parent> - - <prerequisites> - <maven>3.0</maven> - </prerequisites> - - <properties> - <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - <java.version>1.7</java.version> - <lucene.version>4.10.2</lucene.version> - <solr.version>4.10.2</solr.version> - <jena.version>2.12.0</jena.version> - <slf4j.version>1.6.1</slf4j.version> - <!-- need at least 3.2.2 for spring-social-google (StreamUtils, MappingJackson2HttpMessageConverter) --> - <spring.version>3.2.5.RELEASE</spring.version> - <!-- 'root.basedir' is the path to the root [dspace-src] dir. It must be redefined by each child POM, - as it is used to reference the LICENSE_HEADER and *.properties file(s) in that directory. --> - <root.basedir>${basedir}</root.basedir> - </properties> - - <build> - <!-- Define Maven Plugin Settings that should be inherited to ALL submodule POMs. - (NOTE: individual POMs can override specific settings). --> - <pluginManagement> - <plugins> - <plugin> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.1</version> - <configuration> - <source>${java.version}</source> - <target>${java.version}</target> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <version>2.5</version> - <configuration> - <archive> - <manifest> - <addDefaultImplementationEntries>true</addDefaultImplementationEntries> - <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> - </manifest> - </archive> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-war-plugin</artifactId> - <version>2.4</version> - <configuration> - <failOnMissingWebXml>false</failOnMissingWebXml> - <archive> - <manifest> - <addDefaultImplementationEntries>true</addDefaultImplementationEntries> - <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> - </manifest> - </archive> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - <version>2.17</version> - <configuration> - <!-- Allow for the ability to pass JVM memory flags for Unit Tests. Since - maven-surefire-plugin forks a new JVM, it ignores MAVEN_OPTS.--> - <argLine>${surefire.argLine}</argLine> - <!-- tests whose name starts by Abstract will be ignored --> - <excludes> - <exclude>**/Abstract*</exclude> - </excludes> - <!-- Detailed logs in reportsDirectory/testName-output.txt instead of stdout --> - <redirectTestOutputToFile>true</redirectTestOutputToFile> - <!-- - Enable to debug Maven Surefire tests in remote proces - <debugForkedProcess>true</debugForkedProcess> - --> - </configuration> - </plugin> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>findbugs-maven-plugin</artifactId> - <version>3.0.0</version> - <configuration> - <effort>Max</effort> - <threshold>Low</threshold> - <xmlOutput>true</xmlOutput> - </configuration> - <executions> - <execution> - <phase>compile</phase> - <goals> - <goal>check</goal> - </goals> - </execution> - </executions> - </plugin> - <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <version>1.7</version> - </plugin> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <version>2.5.3</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-dependency-plugin</artifactId> - <version>2.10</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-resources-plugin</artifactId> - <version>2.6</version> - </plugin> - <plugin> - <groupId>com.mycila</groupId> - <artifactId>license-maven-plugin</artifactId> - <version>2.6</version> - </plugin> - </plugins> - </pluginManagement> - - <!-- These plugin settings only apply to this single POM and are not inherited - to any submodules. --> - <plugins> - <!-- Ensure that any *.properties files have UTF-8 chars encoded (e.g. "\u00e9") *before* using them to filter dspace.cfg and other configs --> - <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <executions> - <execution> - <id>native2ascii-utf8</id> - <phase>generate-resources</phase> - <configuration> - <target name="Encode any UTF-8 chars in properties"> - <!-- Run 'native2ascii' to encode UTF-8 characters in properties files. Place the resulting file(s) in /target --> - <native2ascii encoding="UTF8" src="${root.basedir}" dest="${root.basedir}/target" includes="*.properties" /> - </target> - </configuration> - <goals> - <goal>run</goal> - </goals> - </execution> - </executions> - <!-- Required dependencies for native2ascii to function --> - <dependencies> - <dependency> - <groupId>com.sun</groupId> - <artifactId>tools</artifactId> - <version>${java.version}</version> - <scope>system</scope> - <!-- Path to tools.jar (containing native2ascii tool) is determined by a profile (see below) --> - <systemPath>${toolsjar}</systemPath> - </dependency> - </dependencies> - </plugin> - - <plugin> - <artifactId>maven-release-plugin</artifactId> - <version>2.5</version> - <configuration> - <!-- During release:perform, enable the "release" profile (see below) --> - <releaseProfiles>release</releaseProfiles> - <goals>deploy</goals> - <!-- Suggest tagging the release in SCM as "dspace-[version]" --> - <tagNameFormat>dspace-@{project.version}</tagNameFormat> - <!-- Auto-Version all modules the same as the parent module --> - <autoVersionSubmodules>true</autoVersionSubmodules> - </configuration> - </plugin> - <plugin> - <groupId>com.mycila</groupId> - <artifactId>license-maven-plugin</artifactId> - <configuration> - <!-- License header file (can be a URL, but that's less stable if external site is down on occasion) --> - <header>${root.basedir}/LICENSE_HEADER</header> - <!--Just check headers of everything in the /src directory --> - <includes> - <include>src/**</include> - </includes> - <!--Use all default exclusions for IDE files & Maven files, see: - http://code.google.com/p/maven-license-plugin/wiki/Configuration#Default_excludes --> - <useDefaultExcludes>true</useDefaultExcludes> - <!-- Add some default DSpace exclusions not covered by <useDefaultExcludes> - Individual Maven projects may choose to override these defaults. --> - <excludes> - <exclude>**/src/test/resources/**</exclude> - <exclude>**/src/test/data/**</exclude> - <exclude>**/src/main/license/**</exclude> - <exclude>**/testEnvironment.properties</exclude> - <exclude>**/META-INF/**</exclude> - <exclude>**/robots.txt</exclude> - <exclude>**/*.LICENSE</exclude> - <exclude>**/LICENSE*</exclude> - <exclude>**/README*</exclude> - <exclude>**/readme*</exclude> - <exclude>**/.gitignore</exclude> - <exclude>**/build.properties*</exclude> - </excludes> - <mapping> - <!-- Custom DSpace file extensions which are not recognized by maven-release-plugin: - *.xmap, *.xslt, *.wsdd, *.wsdl, *.ttl, *.LICENSE --> - <xmap>XML_STYLE</xmap> - <xslt>XML_STYLE</xslt> - <wsdd>XML_STYLE</wsdd> - <wsdl>XML_STYLE</wsdl> - <ttl>SCRIPT_STYLE</ttl> - <LICENSE>TEXT</LICENSE> - </mapping> - <encoding>UTF-8</encoding> - <!-- maven-license-plugin recommends a strict check (e.g. check spaces/tabs too) --> - <strictCheck>true</strictCheck> - </configuration> - <executions> - <execution> - <id>check-headers</id> - <phase>verify</phase> - <goals> - <goal>check</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - - <profiles> - - <!-- By default the main dspace.cfg file will be filtered during the build - using the "build.properties" file. This profile takes effect, unless - "-Denv" is passed in (see 'environment' profile below for more info). --> - <profile> - <id>default</id> - <activation> - <property> - <name>!env</name> - </property> - </activation> - <properties> - <!-- 'root.basedir' is the relative path to the [dspace-src] root folder --> - <!-- NOTE that we are using the copy in the target dir, which has any Unicode characters encoded (see native2ascii above) --> - <filters.file>${root.basedir}/target/build.properties</filters.file> - </properties> - </profile> - - <!-- Users can pass in an environment flag "-Denv" to tell DSpace to use - a different properties file during its build process. - For example: "mvn package -Denv=test" would build DSpace using the - settings in "test.properties" instead of those in "build.properties" --> - <profile> - <id>environment</id> - <activation> - <property> - <name>env</name> - </property> - </activation> - <properties> - <!-- 'root.basedir' is the relative path to the [dspace-src] root folder --> - <!-- NOTE that we are using the copy in the target dir, which has any Unicode characters encoded (see native2ascii above) --> - <filters.file>${root.basedir}/target/${env}.properties</filters.file> - </properties> - </profile> - - <!-- Skip Unit Tests by default, but allow override on command line - by setting property "-Dmaven.test.skip=false" --> - <profile> - <id>skiptests</id> - <activation> - <!-- This profile should be active at all times, unless the user - specifies a different value for "maven.test.skip" --> - <property> - <name>!maven.test.skip</name> - </property> - </activation> - <properties> - <maven.test.skip>true</maven.test.skip> - </properties> - </profile> - - <!-- Allow for passing extra memory to Unit tests (via maven-surefire-plugin). - By default this gives unit tests 512MB of memory (when tests are enabled), - unless tweaked on commandline (e.g. "-Dsurefire.argLine=-Xmx512m"). Since - m-surefire-p forks a new JVM for testing, it ignores MAVEN_OPTS. --> - <profile> - <id>surefire-argLine</id> - <activation> - <property> - <name>!surefire.argLine</name> - </property> - </activation> - <properties> - <surefire.argLine>-Xmx512m</surefire.argLine> - </properties> - </profile> - - <!-- This profile ensures that we ONLY generate the Unit Test Environment, - if the testEnvironment.xml file is found AND we are not skipping Unit - Tests (see also skiptests profile). That way the Test Environment is - also NOT built when running a 'mvn package' on a "binary" release. --> - <profile> - <id>generate-test-env</id> - <activation> - <activeByDefault>false</activeByDefault> - <property> - <name>maven.test.skip</name> - <value>false</value> - </property> - <file> - <exists>src/main/assembly/testEnvironment.xml</exists> - </file> - </activation> - <build> - <plugins> - <!-- This plugin builds the testEnvironment.zip package - based on the specifications in testEnvironment.xml. - TestEnvironment.zip is an entire DSpace installation - directory, which is installed by 'dspace-api' and - used to run our DSpace Unit/Integration tests. --> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <executions> - <execution> - <phase>generate-test-resources</phase> - <goals> - <goal>single</goal> - </goals> - <configuration> - <descriptors> - <descriptor>src/main/assembly/testEnvironment.xml</descriptor> - </descriptors> - <filters> - <filter>local.properties</filter> - <filter>src/main/filters/testEnvironment.properties</filter> - </filters> - </configuration> - </execution> - </executions> - <inherited>false</inherited> - </plugin> - </plugins> - </build> - </profile> - - <!-- - Generate a list of all THIRD PARTY open source licenses for all DSpace dependencies. - This list is automatically written to the [src]/LICENSES_THIRD_PARTY file. - Third party tools whose licenses are unknown by Maven are maintained in - [src]/src/main/license/LICENSES_THIRD_PARTY.properties. - To update "LICENSES_THIRD_PARTY", just run: - mvn clean verify -Dthird.party.licenses=true - --> - <profile> - <id>third-party-licenses</id> - <activation> - <activeByDefault>false</activeByDefault> - <!-- This profile should ONLY be active when user specifies - -Dthird.party.licenses=true on command-line. --> - <property> - <name>third.party.licenses</name> - </property> - </activation> - <build> - <plugins> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>license-maven-plugin</artifactId> - <version>1.8</version> - <!-- This plugin only needs to be run on the Parent POM - as it aggregates results from all child POMs. --> - <inherited>false</inherited> - <executions> - <execution> - <phase>verify</phase> - <goals> - <goal>aggregate-add-third-party</goal> - </goals> - <configuration> - <outputDirectory>${root.basedir}</outputDirectory> - <thirdPartyFilename>LICENSES_THIRD_PARTY</thirdPartyFilename> - <excludedGroups>org\.dspace</excludedGroups> - <!-- Use the template which groups all dependencies by their License type (easier to read!). --> - <!-- SEE: https://fisheye.codehaus.org/browse/mojo/trunk/mojo/license-maven-plugin/src/main/resources/org/codehaus/mojo/license --> - <fileTemplate>src/main/license/third-party-file-groupByLicense.ftl</fileTemplate> - <!-- License names that should all be merged into the *first* listed name --> - <licenseMerges> - <licenseMerge>Apache Software License, Version 2.0|The Apache Software License, Version 2.0|Apache License Version 2.0|Apache License, Version 2.0|Apache Public License 2.0|Apache License 2.0|Apache Software License - Version 2.0|Apache 2.0 License|Apache 2.0 license|Apache License V2.0|Apache 2|Apache License|Apache|ASF 2.0</licenseMerge> - <!-- Ant-contrib is an Apache License --> - <licenseMerge>Apache Software License, Version 2.0|http://ant-contrib.sourceforge.net/tasks/LICENSE.txt</licenseMerge> - <licenseMerge>BSD License|The BSD License|BSD licence|BSD license|BSD|BSD-style license|New BSD License|New BSD license|Revised BSD License</licenseMerge> - <!-- DuraSpace uses a BSD License for DSpace --> - <licenseMerge>BSD License|DuraSpace BSD License|DuraSpace Sourcecode License</licenseMerge> - <!-- Coverity uses modified BSD: https://github.com/coverity/coverity-security-library --> - <licenseMerge>BSD License|BSD style modified by Coverity</licenseMerge> - <licenseMerge>Common Development and Distribution License (CDDL)|Common Development and Distribution License (CDDL) v1.0|COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0|CDDL, v1.0|CDDL 1.0 license|CDDL 1.0|CDDL 1.1</licenseMerge> - <!-- Jersey / Java Servlet API claims this license, but is actually CDDL 1.0: http://servlet-spec.java.net --> - <licenseMerge>Common Development and Distribution License (CDDL)|CDDL + GPLv2 with classpath exception</licenseMerge> - <!-- Jersey claims this license, but it is dual licensed with CDDL 1.0 being one: https://jersey.java.net/license.html --> - <licenseMerge>Common Development and Distribution License (CDDL)|GPL2 w/ CPE</licenseMerge> - <licenseMerge>Eclipse Public License|Eclipse Public License - Version 1.0|Eclipse Public License - v 1.0|EPL 1.0 license</licenseMerge> - <!-- JUnit claims this license but is actually Eclipse Public License: http://junit.org/license.html --> - <licenseMerge>Eclipse Public License|Common Public License Version 1.0</licenseMerge> - <licenseMerge>GNU Lesser General Public License (LGPL)|GNU Lesser General Public License (LGPL), Version 2.1|GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1|GNU Lesser General Public License|GNU Lesser Public License|GNU Lesser General Public License, Version 2.1|Lesser General Public License (LGPL) v 2.1|LGPL 2.1|LGPL 2.1 license|LGPL 3.0 license|LGPL, v2.1 or later|LGPL</licenseMerge> - <licenseMerge>MIT License|The MIT License|MIT LICENSE</licenseMerge> - <!-- BouncyCastle uses a modified MIT License: http://www.bouncycastle.org/license.html --> - <licenseMerge>MIT License|Bouncy Castle Licence</licenseMerge> - <licenseMerge>Mozilla Public License|Mozilla Public License version 1.1|Mozilla Public License 1.1 (MPL 1.1)|MPL 1.1</licenseMerge> - <!-- H2 Database claims this license, but for our purposes it's MPL: http://www.h2database.com --> - <licenseMerge>Mozilla Public License|MPL 2.0, and EPL 1.0</licenseMerge> - <!-- "concurrent.concurrent" claims this license, but is actually Public Domain: http://mvnrepository.com/artifact/concurrent/concurrent/ --> - <licenseMerge>Public Domain|Public domain, Sun Microsoystems</licenseMerge> - <!-- WTFPL is essentially Public Domain: http://www.wtfpl.net/ ;) --> - <licenseMerge>Public Domain|WTFPL</licenseMerge> - </licenseMerges> - <!-- For Licenses which are "Unknown" by Maven, load them from a properties file --> - <useMissingFile>true</useMissingFile> - <missingFile>src/main/license/LICENSES_THIRD_PARTY.properties</missingFile> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - - <!-- Determine path to Java Tools JAR. This JAR contains the 'native2ascii' tool (required above by maven-antrun-plugin)--> - <!-- In most platforms Unix/Windows it's named tools.jar. But, on Mac it's classes.jar (see next profile) --> - <profile> - <id>default-java-tools</id> - <activation> - <activeByDefault>true</activeByDefault> - <file> - <exists>${java.home}/../lib/tools.jar</exists> - </file> - </activation> - <properties> - <toolsjar>${java.home}/../lib/tools.jar</toolsjar> - </properties> - </profile> - <profile> - <id>mac-java-tools</id> - <activation> - <activeByDefault>false</activeByDefault> - <file> - <exists>${java.home}/../Classes/classes.jar</exists> - </file> - </activation> - <properties> - <toolsjar>${java.home}/../Classes/classes.jar</toolsjar> - </properties> - </profile> - - - <!-- - These profiles activate the inclusion of various modules into - the DSpace Build process. They activate automatically if the - source module is in the local file system, correctly located - relative to this file. - --> - - <!-- - Builds DSpace "Assembly & Configuration" project - --> - <profile> - <id>dspace</id> - <activation> - <file> - <exists>dspace/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace</module> - </modules> - </profile> - - <!-- - Builds central API for DSpace - --> - <profile> - <id>dspace-api</id> - <activation> - <file> - <exists>dspace-api/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-api</module> - <module>utilities</module> - </modules> - </profile> - - <!-- - Builds Services for DSpace - --> - <profile> - <id>dspace-services</id> - <activation> - <file> - <exists>dspace-services/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-services</module> - </modules> - </profile> - - <!-- - Builds XOAI Gateway WAR for DSpace - --> - <profile> - <id>dspace-oai</id> - <activation> - <file> - <exists>dspace-oai/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-oai</module> - </modules> - </profile> - - <!-- - Builds JSPUI WAR for DSpace - --> - <profile> - <id>dspace-jspui</id> - <activation> - <file> - <exists>dspace-jspui/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-jspui</module> - </modules> - </profile> - - <!-- - Builds UFAL Utilities - --> - <profile> - <id>utilities</id> - <activation> - <activeByDefault>true</activeByDefault> - </activation> - <modules> - <module>utilities</module> - </modules> - </profile> - - <!-- - Builds lr-b2safe-dspace - --> - <profile> - <id>lr-b2safe-dspace</id> - <activation> - <activeByDefault>true</activeByDefault> - </activation> - <modules> - <module>lr-b2safe-dspace</module> - </modules> - </profile> - - - <!-- - Builds RDF API and Data Provider WAR for DSpace - --> - <profile> - <id>dspace-rdf</id> - <activation> - <file> - <exists>dspace-rdf/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-rdf</module> - </modules> - </profile> - - <!-- REST Jersey --> - <profile> - <id>dspace-rest</id> - <activation> - <file> - <exists>dspace-rest/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-rest</module> - </modules> - </profile> - - - <!-- - Builds SWORD WAR for DSpace - --> - <profile> - <id>dspace-sword</id> - <activation> - <file> - <exists>dspace-sword/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-sword</module> - </modules> - </profile> - - - <!-- - Builds SOLR WAR for DSpace - --> - <profile> - <id>dspace-solr</id> - <activation> - <file> - <exists>dspace-solr/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-solr</module> - </modules> - </profile> - - <!-- - Builds SWORDv2 WAR for DSpace - --> - <profile> - <id>dspace-swordv2</id> - <activation> - <file> - <exists>dspace-swordv2/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-swordv2</module> - </modules> - </profile> - - <!-- - Builds MIRAGE2 WAR for DSpace - --> - <profile> - <id>dspace-xmlui-mirage2</id> - <activation> - <file> - <exists>dspace-xmlui-mirage2/pom.xml</exists> - </file> - </activation> - <modules> - <module>dspace-xmlui-mirage2</module> - </modules> - </profile> - - <!-- - Builds XMLUI WAR for DSpace - --> - <profile> - <id>dspace-xmlui</id> - <activation> - <file> - <exists>dspace-xmlui/pom.xml</exists> - </file> - </activation> - <modules> - <module>lr-b2safe-dspace</module> - <module>dspace-xmlui</module> - </modules> - </profile> - - <!-- - Builds LNI WAR & Client for DSpace - --> - <!-- Note:- The LNI module is not built by default and is considered deprecated. - To build it activate the profile with '-Pdspace-lni'. --> - <profile> - <id>dspace-lni</id> - <activation> - <activeByDefault>false</activeByDefault> - </activation> - <modules> - <module>dspace-lni</module> - <module>dspace-lni/dspace-lni-client</module> - </modules> - </profile> - - - <!-- - The 'release' profile is used by the 'maven-release-plugin' (see above) - to actually perform a DSpace software release to Maven central. - --> - <profile> - <id>release</id> - <activation> - <activeByDefault>false</activeByDefault> - </activation> - <!-- Activate all modules *except* for the 'dspace' module, - as it does not include any Java source code to release. --> - <modules> - <module>dspace-api</module> - <module>dspace-jspui</module> - <module>dspace-lni</module> - <module>dspace-oai</module> - <module>dspace-rdf</module> - <module>dspace-rest</module> - <module>dspace-services</module> - <module>dspace-solr</module> - <module>dspace-sword</module> - <module>dspace-swordv2</module> - <module>dspace-xmlui-mirage2</module> - <module>dspace-xmlui</module> - <module>lr-b2safe-dspace</module> - </modules> - </profile> - - </profiles> - - <!-- - Dependency management provides a means to control which - versions of dependency jars are used for compilation - and packaging into the distribution. Rather than placing - a version in your dependencies, look here first to see if - its already strongly defined in dspace-parent and dspace-api. - --> - <dependencyManagement> - <dependencies> - <dependency> - <groupId>cz.cuni.mff.ufal.lindat</groupId> - <artifactId>utilities</artifactId> - <version>5.9-SNAPSHOT</version> - </dependency> - - <!-- DSpace core and endorsed Addons --> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-api</artifactId> - <version>5.9-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.dspace.modules</groupId> - <artifactId>additions</artifactId> - <version>5.9-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-sword</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-sword</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-swordv2</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-swordv2</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-jspui</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-jspui</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-oai</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-oai</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-lni</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-lni-client</artifactId> - <version>5.9-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-lni</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>cz.cuni.mff.ufal.dspace</groupId> - <artifactId>b2safe-dspace</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-xmlui</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-xmlui</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-services</artifactId> - <version>5.9-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-rdf</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-rest</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-rest</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-solr</artifactId> - <version>5.9-SNAPSHOT</version> - <type>jar</type> - <classifier>classes</classifier> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-solr</artifactId> - <version>5.9-SNAPSHOT</version> - <type>war</type> - <classifier>skinny</classifier> - </dependency> - - <!-- DSpace Localization Packages --> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-api-lang</artifactId> - <version>[5.0.0,6.0.0)</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>dspace-xmlui-lang</artifactId> - <version>[5.0.0,6.0.0)</version> - <type>war</type> - </dependency> - <!-- DSpace third Party Dependencies --> - - <dependency> - <groupId>org.swordapp</groupId> - <artifactId>sword-common</artifactId> - <version>1.1</version> - </dependency> - <!-- Explicitly Specify Latest Version of Spring --> - <dependency> - <artifactId>spring-core</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-beans</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-aop</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-context</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-context-support</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-tx</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-jdbc</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-web</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <artifactId>spring-webmvc</artifactId> - <groupId>org.springframework</groupId> - <version>${spring.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant</artifactId> - <version>1.7.0</version> - </dependency> - <dependency> - <groupId>org.apache.lucene</groupId> - <artifactId>lucene-core</artifactId> - <version>${lucene.version}</version> - </dependency> - <dependency> - <groupId>org.apache.lucene</groupId> - <artifactId>lucene-analyzers-common</artifactId> - <version>${lucene.version}</version> - </dependency> - <dependency> - <groupId>org.apache.lucene</groupId> - <artifactId>lucene-queryparser</artifactId> - <version>${lucene.version}</version> - </dependency> - <dependency> - <groupId>org.apache.jena</groupId> - <artifactId>apache-jena-libs</artifactId> - <type>pom</type> - <version>${jena.version}</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>handle</artifactId> - <version>6.2</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>jargon</artifactId> - <version>1.4.25</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>mets</artifactId> - <version>1.5.2</version> - </dependency> - <dependency> - <groupId>org.dspace.dependencies</groupId> - <artifactId>dspace-tm-extractors</artifactId> - <version>1.0.1</version> - </dependency> - <dependency> - <groupId>commons-cli</groupId> - <artifactId>commons-cli</artifactId> - <version>1.2</version> - </dependency> - <dependency> - <groupId>commons-codec</groupId> - <artifactId>commons-codec</artifactId> - <version>1.9</version> - </dependency> - <dependency> - <groupId>commons-collections</groupId> - <artifactId>commons-collections</artifactId> - <version>3.2.2</version> - <!-- <version>3.1</version> xmlui - wing --> - </dependency> - <dependency> - <groupId>commons-dbcp</groupId> - <artifactId>commons-dbcp</artifactId> - <version>1.4</version> - </dependency> - <dependency> - <groupId>commons-discovery</groupId> - <artifactId>commons-discovery</artifactId> - <version>0.2</version> - </dependency> - <dependency> - <groupId>commons-fileupload</groupId> - <artifactId>commons-fileupload</artifactId> - <version>1.2.1</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.3</version> - </dependency> - <dependency> - <groupId>commons-lang</groupId> - <artifactId>commons-lang</artifactId> - <version>2.6</version> - <!-- <version>2.1</version> in xmlui - wing --> - </dependency> - <dependency> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - <version>1.1.1</version> - </dependency> - <dependency> - <groupId>commons-pool</groupId> - <artifactId>commons-pool</artifactId> - <version>1.4</version> - </dependency> - <dependency> - <groupId>commons-validator</groupId> - <artifactId>commons-validator</artifactId> - <version>1.4.0</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-compress</artifactId> - <version>1.6</version> - </dependency> - <dependency> - <groupId>javax.mail</groupId> - <artifactId>mail</artifactId> - <version>1.4</version> - </dependency> - <dependency> - <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> - <version>2.5</version> - </dependency> - - <dependency> - <groupId>jaxen</groupId> - <artifactId>jaxen</artifactId> - <version>1.1</version> - <exclusions> - <exclusion> - <artifactId>xom</artifactId> - <groupId>xom</groupId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>jdom</groupId> - <artifactId>jdom</artifactId> - <version>1.0</version> - </dependency> - <dependency> - <groupId>log4j</groupId> - <artifactId>log4j</artifactId> - <version>1.2.17</version> - </dependency> - <dependency> - <groupId>oro</groupId> - <artifactId>oro</artifactId> - <version>2.0.8</version> - </dependency> - <dependency> - <groupId>org.apache.pdfbox</groupId> - <artifactId>pdfbox</artifactId> - <version>1.8.12</version> - </dependency> - <dependency> - <groupId>org.apache.pdfbox</groupId> - <artifactId>fontbox</artifactId> - <version>1.8.12</version> - </dependency> - <dependency> - <groupId>org.apache.pdfbox</groupId> - <artifactId>jempbox</artifactId> - <version>1.8.12</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcprov-jdk15</artifactId> - <version>1.44</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcmail-jdk15</artifactId> - <version>1.44</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi</artifactId> - <version>3.6</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi-scratchpad</artifactId> - <version>3.6</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml</artifactId> - <version>3.6</version> - </dependency> - <dependency> - <groupId>rome</groupId> - <artifactId>rome</artifactId> - <version>1.0</version> - </dependency> - <dependency> - <groupId>rome</groupId> - <artifactId>opensearch</artifactId> - <version>0.1</version> - </dependency> - <dependency> - <groupId>xalan</groupId> - <artifactId>xalan</artifactId> - <version>2.7.0</version> - </dependency> - <dependency> - <groupId>xerces</groupId> - <artifactId>xercesImpl</artifactId> - <version>2.8.1</version> - <!-- <version>2.8.0</version> in xmlui --> - </dependency> - <dependency> - <groupId>xml-apis</groupId> - <artifactId>xmlParserAPIs</artifactId> - <version>2.0.2</version> - </dependency> - <dependency> - <groupId>javax.activation</groupId> - <artifactId>activation</artifactId> - <version>1.1</version> - </dependency> - - <dependency> - <groupId>wsdl4j</groupId> - <artifactId>wsdl4j</artifactId> - <version>1.5.1</version> - </dependency> - <dependency> - <groupId>javax.xml</groupId> - <artifactId>jaxrpc-api</artifactId> - <version>1.1</version> - </dependency> - <dependency> - <groupId>axis</groupId> - <artifactId>axis</artifactId> - <version>1.3</version> - </dependency> - <dependency> - <groupId>axis</groupId> - <artifactId>axis-ant</artifactId> - <version>1.3</version> - <scope>compile</scope> - </dependency> - <dependency> - <groupId>axis</groupId> - <artifactId>axis-saaj</artifactId> - <version>1.2</version> - </dependency> - <dependency> - <groupId>com.ibm.icu</groupId> - <artifactId>icu4j</artifactId> - <version>51.1</version> - </dependency> - <dependency> - <groupId>postgresql</groupId> - <artifactId>postgresql</artifactId> - <version>9.1-901-1.jdbc4</version> - </dependency> - <dependency> - <groupId>com.oracle</groupId> - <artifactId>ojdbc6</artifactId> - <version>11.2.0.4.0</version> - </dependency> - <dependency> - <groupId>com.sun.media</groupId> - <artifactId>jai_imageio</artifactId> - <version>1.0_01</version> - </dependency> - <dependency> - <groupId>javax.media</groupId> - <artifactId>jai_core</artifactId> - <version>1.1.2_01</version> - </dependency> - <dependency> - <groupId>org.dspace</groupId> - <artifactId>oclc-harvester2</artifactId> - <version>0.1.12</version> - </dependency> - <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpcore</artifactId> - <version>4.3.2</version> - </dependency> - <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpclient</artifactId> - <version>4.3.5</version> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>jcl-over-slf4j</artifactId> - <version>${slf4j.version}</version> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-api</artifactId> - <version>${slf4j.version}</version> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-jdk14</artifactId> - <version>${slf4j.version}</version> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-log4j12</artifactId> - <version>${slf4j.version}</version> - </dependency> - <!-- JMockit, JUnit and Hamcrest are used for Unit/Integration tests --> - <dependency> <!-- Keep jmockit before junit --> - <groupId>org.jmockit</groupId> - <artifactId>jmockit</artifactId> - <version>1.10</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>4.11</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.hamcrest</groupId> - <artifactId>hamcrest-core</artifactId> - <version>1.3</version> - <scope>test</scope> - </dependency> - <!-- H2 is an in-memory database used for Unit/Integration tests --> - <dependency> - <groupId>com.h2database</groupId> - <artifactId>h2</artifactId> - <version>1.4.180</version> - <scope>test</scope> - </dependency> - <!-- Contiperf is used for performance tests within our Unit/Integration tests --> - <dependency> - <groupId>org.databene</groupId> - <artifactId>contiperf</artifactId> - <version>2.2.0</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.google.code.gson</groupId> - <artifactId>gson</artifactId> - <version>2.2.1</version> - <scope>compile</scope> - </dependency> - <!-- Google Analytics --> - <dependency> - <groupId>com.google.apis</groupId> - <artifactId>google-api-services-analytics</artifactId> - <version>v3-rev103-1.19.0</version> - </dependency> - <dependency> - <groupId>com.google.api-client</groupId> - <artifactId>google-api-client</artifactId> - <version>1.19.1</version> - </dependency> - <dependency> - <groupId>com.google.http-client</groupId> - <artifactId>google-http-client</artifactId> - <version>1.19.0</version> - </dependency> - <dependency> - <groupId>com.google.http-client</groupId> - <artifactId>google-http-client-jackson2</artifactId> - <version>1.19.0</version> - </dependency> - <dependency> - <groupId>com.google.oauth-client</groupId> - <artifactId>google-oauth-client</artifactId> - <version>1.19.0</version> - </dependency> - <!-- Findbugs annotations --> - <dependency> - <groupId>com.google.code.findbugs</groupId> - <artifactId>jsr305</artifactId> - <version>3.0.0</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>com.google.code.findbugs</groupId> - <artifactId>annotations</artifactId> - <version>3.0.0</version> - <scope>provided</scope> - </dependency> - </dependencies> - </dependencyManagement> - - <licenses> - <license> - <name>DuraSpace BSD License</name> - <url>https://raw.github.com/DSpace/DSpace/master/LICENSE</url> - <distribution>repo</distribution> - <comments> - A BSD 3-Clause license for the DSpace codebase. - </comments> - </license> - </licenses> - - <issueManagement> - <system>JIRA</system> - <url>https://jira.duraspace.org/browse/DS</url> - </issueManagement> - - <mailingLists> - <mailingList> - <name>DSpace Technical Users List</name> - <subscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-tech - </subscribe> - <unsubscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-tech - </unsubscribe> - <post>dspace-tech AT lists.sourceforge.net</post> - <archive> - http://sourceforge.net/mailarchive/forum.php?forum_name=dspace-tech - </archive> - </mailingList> - <mailingList> - <name>DSpace Developers List</name> - <subscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-devel - </subscribe> - <unsubscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-devel - </unsubscribe> - <post>dspace-devel AT lists.sourceforge.net</post> - <archive> - http://sourceforge.net/mailarchive/forum.php?forum_name=dspace-devel - </archive> - </mailingList> - <mailingList> - <name>DSpace General Issues List</name> - <subscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-general - </subscribe> - <unsubscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-general - </unsubscribe> - <post>dspace-general AT lists.sourceforge.net</post> - <archive> - http://sourceforge.net/mailarchive/forum.php?forum_name=dspace-general - </archive> - </mailingList> - <mailingList> - <name>DSpace SCM Commit Change-Log</name> - <subscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-changelog - </subscribe> - <unsubscribe> - http://lists.sourceforge.net/lists/listinfo/dspace-changelog - </unsubscribe> - <post>noreply AT lists.sourceforge.net</post> - <archive> - http://sourceforge.net/mailarchive/forum.php?forum_name=dspace-changelog - </archive> - </mailingList> - </mailingLists> - - <developers> - <developer> - <name>Pascal-Nicolas Becker</name> - <email>dspace at pascal-becker dot de</email> - <roles> - <role>commiter</role> - </roles> - <timezone>+1</timezone> - </developer> - <developer> - <name>Andrea Bollini</name> - <email>bollini at users.sourceforge.net</email> - <url>http://www.linkedin.com/in/andreabollini</url> - <organization>CILEA</organization> - <organizationUrl>http://www.cilea.it</organizationUrl> - <roles> - <role>commiter</role> - </roles> - <timezone>+1</timezone> - </developer> - <developer> - <name>Ben Bosman</name> - <email>benbosman at atmire.com</email> - <organization>@mire NV</organization> - <organizationUrl>http://www.atmire.com</organizationUrl> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Mark Diggory</name> - <email>mdiggory at atmire.com</email> - <url>http://purl.org/net/mdiggory/homepage</url> - <organization>@mire NV</organization> - <organizationUrl>http://www.atmire.com</organizationUrl> - <roles> - <role>commiter</role> - </roles> - <timezone>-8</timezone> - </developer> - <developer> - <name>Tim Donohue</name> - <email>tdonohue at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Jim Downing</name> - <email>jimdowning at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Richard Jones</name> - <email>richard-jones at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Claudia Juergen</name> - <email>cjuergen at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Stuart Lewis</name> - <email>stuart at stuartlewis.com</email> - <url>http://stuartlewis.com/</url> - <organization>University of Auckland Library</organization> - <organizationUrl>http://www.library.auckland.ac.nz/</organizationUrl> - <roles> - <role>commiter</role> - </roles> - <timezone>+12</timezone> - </developer> - <developer> - <name>Gabriela Mircea</name> - <email>mirceag at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Scott Phillips</name> - <email>scottphillips at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Richard Rodgers</name> - <email>rrodgers at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>James Rutherford</name> - <email>jrutherford at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Kim Shepherd</name> - <email>kims at waikato.ac.nz</email> - <organization>Library Consortium of New Zealand</organization> - <organizationUrl>http://www.lconz.ac.nz/</organizationUrl> - <roles> - <role>commiter</role> - </roles> - <timezone>+12</timezone> - </developer> - <developer> - <name>Larry Stone</name> - <email>lcs at mit.edu</email> - <organization>MIT Libraries</organization> - <organizationUrl>http://libraries.mit.edu</organizationUrl> - <roles> - <role>commiter</role> - </roles> - <timezone>-5</timezone> - </developer> - <developer> - <name>Robert Tansley</name> - <email>rtansley at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Graham Triggs</name> - <email>grahamtriggs at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Jeffrey Trimble</name> - <email /> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Mark H. Wood</name> - <email>mwoodiupui at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - <developer> - <name>Scott Yeadon</name> - <email>syeadon at users.sourceforge.net</email> - <roles> - <role>commiter</role> - </roles> - </developer> - </developers> - - <contributors> - <contributor> - <name>Add Your Name Here and submit a patch!</name> - <email>contributor at myu.edu</email> - <url>http://www.myu.edu/me</url> - <organization>My University</organization> - <organizationUrl>http://www.myu.edu</organizationUrl> - <roles> - <role>developer</role> - </roles> - <timezone>0</timezone> - </contributor> - <contributor> - <name>Pere Villega</name> - <email>pere.villega@gmail.com</email> - <url>http://www.perevillega.com</url> - <organization /> - <organizationUrl /> - <roles> - <role>developer</role> - </roles> - <timezone>0</timezone> - </contributor> - <contributor> - <name>Sands Fish</name> - <email>sands at mit.edu</email> - <organization>MIT Libraries</organization> - <organizationUrl>http://libraries.mit.edu</organizationUrl> - <roles> - <role>developer</role> - </roles> - <timezone>-5</timezone> - </contributor> - <contributor> - <name>Steve Swinsburg</name> - <email>steve.swinsburg@anu.edu.au</email> - <organization>The Australian National University</organization> - <organizationUrl>http://www.anu.edu.au</organizationUrl> - <roles> - <role>developer</role> - </roles> - <timezone>+10</timezone> - </contributor> - </contributors> - - <!-- - The SCM repository location is used by Continuum to update against - when changes have occurred. This spawns a new build cycle and releases - snapshots into the snapshot repository below. - --> - <scm> - <connection>scm:git:git@github.com:DSpace/DSpace.git</connection> - <developerConnection>scm:git:git@github.com:DSpace/DSpace.git</developerConnection> - <url>git@github.com:DSpace/DSpace.git</url> - <tag>dspace-5.1-SNAPSHOT</tag> - </scm> - - <!-- - Distribution Management is currently used by the Continuum - server to update snapshots it generates. This will also be used - on release to deploy release versions to the repository by the - release manager. - --> - <distributionManagement> - <!-- further distribution management is found upstream in the sonatype parent --> - </distributionManagement> - - <repositories> - <repository> - <id>sonatype-releases</id> - <name>Sonatype Releases Repository</name> - <url>https://oss.sonatype.org/content/repositories/releases/</url> - </repository> - <!--Nor sonatype nor maven central appear to still contain org.restlet.jee:org.restlet.ext.servlet:jar:2.1.1 any more. No problem if it is in your local repo. Build fail if it isn't--> - <repository> - <id>restlet</id> - <name>restlet</name> - <url>http://maven.restlet.org</url> - </repository> - <repository> - <id>jitpack.io</id> - <name>jitpack</name> - <url>https://jitpack.io</url> - </repository> - </repositories> - -</project> diff --git a/dockerfiles/commul-customization/entrypoint.sh b/dockerfiles/commul-customization/entrypoint.sh index 5587f7922e045309870d91146a866b17ac64d5c4..dcebac1e65abab6eb4a2a9056f0eb954c4c12ad5 100644 --- a/dockerfiles/commul-customization/entrypoint.sh +++ b/dockerfiles/commul-customization/entrypoint.sh @@ -13,9 +13,9 @@ perl -pi -e 's/\$\{HANDLE_USER\}/$ENV{HANDLE_USER}/; s/\$\{HANDLE_PASSWORD\}/$EN /etc/init.d/handle-server start # initialize statistics & co -/opt/tomcat8/bin/startup.sh cd /opt/repository/workspace/scripts make init_statistics +/opt/tomcat8/bin/catalina.sh start # https://ubuntuforums.org/showthread.php?t=979694 # Start process in the background and send its output to file descriptor 3 @@ -42,7 +42,7 @@ done <&3 # Close the file descriptor exec <&3 3<&- -/opt/tomcat8/bin/shutdown.sh -force +/opt/tomcat8/bin/catalina.sh stop -force # start tomcat /opt/tomcat8/bin/catalina.sh run diff --git a/dockerfiles/commul-customization/setenv.sh b/dockerfiles/commul-customization/setenv.sh deleted file mode 100644 index bd9505c6a1e8c257940c559f16e3eaa1bded9f63..0000000000000000000000000000000000000000 --- a/dockerfiles/commul-customization/setenv.sh +++ /dev/null @@ -1,4 +0,0 @@ -export CATALINA_OPTS="$CATALINA_OPTS -Xms2048m" -export CATALINA_OPTS="$CATALINA_OPTS -Xmx4096m" -export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m" - diff --git a/dockerfiles/commul-customization/tomcat-server.xml b/dockerfiles/commul-customization/tomcat-server.xml index d2003f72b254291ea37a23dfae19b7f53f58b97e..0286f48d8538209d0195ce5c5b5716434ff1b75d 100644 --- a/dockerfiles/commul-customization/tomcat-server.xml +++ b/dockerfiles/commul-customization/tomcat-server.xml @@ -68,8 +68,8 @@ --> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" - URIEncoding="UTF-8" - redirectPort="8443" /> + URIEncoding="UTF-8" + redirectPort="443" /> <!-- A "Connector" using the shared thread pool--> <!-- <Connector executor="tomcatThreadPool" @@ -89,7 +89,7 @@ --> <!-- Define an AJP 1.3 Connector on port 8009 --> - <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> + <Connector port="8009" protocol="AJP/1.3" redirectPort="443" /> <!-- An Engine represents the entry point (within Catalina) that processes diff --git a/dockerfiles/commul-customization/tomcat-setenv.sh b/dockerfiles/commul-customization/tomcat-setenv.sh new file mode 100644 index 0000000000000000000000000000000000000000..f3b0ee997bf763e67d3e9bd7fbc96ab6fc39dff0 --- /dev/null +++ b/dockerfiles/commul-customization/tomcat-setenv.sh @@ -0,0 +1,3 @@ +export CATALINA_OPTS="$CATALINA_OPTS -Xms4096m" +export CATALINA_OPTS="$CATALINA_OPTS -Xmx8192m" +export CATALINA_PID="$CATALINA_BASE/tomcat.pid" diff --git a/dockerfiles/commul-customization/tomcat8 b/dockerfiles/commul-customization/tomcat8 deleted file mode 100644 index 58470968ecb9d930aaecd526438fc1cf68a45375..0000000000000000000000000000000000000000 --- a/dockerfiles/commul-customization/tomcat8 +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash -# -#https://wiki.debian.org/LSBInitScripts -### BEGIN INIT INFO -# Provides: tomcat8 -# Required-Start: $local_fs $remote_fs $network -# Required-Stop: $local_fs $remote_fs $network -# Should-Start: $named -# Should-Stop: $named -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Start Tomcat. -# Description: Start the Tomcat servlet engine. -### END INIT INFO - -# Run Tomcat 8 as this user ID and group ID -TOMCAT8_USER=tomcat8 -TOMCAT8_GROUP=tomcat8 - -# this is a work-around until there is a suitable runtime replacement -# for dpkg-architecture for arch:all packages -# this function sets the variable JDK_DIRS -find_jdks() -{ - for java_version in 9 8 7 - do - for jvmdir in /usr/lib/jvm/java-${java_version}-openjdk-* \ - /usr/lib/jvm/jdk-${java_version}-oracle-* \ - /usr/lib/jvm/jre-${java_version}-oracle-* - do - if [ -d "${jvmdir}" ] - then - JDK_DIRS="${JDK_DIRS} ${jvmdir}" - fi - done - done - - # Add older non multi arch installations - JDK_DIRS="${JDK_DIRS} /usr/lib/jvm/java-7-oracle" -} - -# The first existing directory is used for JAVA_HOME (if JAVA_HOME is not -# defined in $DEFAULT) -JDK_DIRS="/usr/lib/jvm/default-java" -find_jdks - -# Look for the right JVM to use -for jdir in $JDK_DIRS; do - if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then - JAVA_HOME="$jdir" - fi -done -export JAVA_HOME - -export CATALINA_HOME=/opt/tomcat8 -export PATH=$JAVA_HOME/bin:$PATH - -start() { - echo "Starting Tomcat 8..." - /bin/su -s /bin/bash $TOMCAT8_USER -c $CATALINA_HOME/bin/startup.sh -} -stop() { - echo "Stopping Tomcat 8..." - /bin/su -s /bin/bash $TOMCAT8_USER -c '$CATALINA_HOME/bin/shutdown.sh -force' -} -case $1 in - start|stop) $1;; - restart) stop; start;; - *) echo "Usage : $0 <start|stop|restart>"; exit 1;; -esac - -exit 0 - - diff --git a/dockerfiles/release.sh b/dockerfiles/release.sh index 6c2669e5ac47489c1188f17503958b4d0433bcb9..1e75372ca58f5bf57756049ece3184dc1d983947 100755 --- a/dockerfiles/release.sh +++ b/dockerfiles/release.sh @@ -4,11 +4,22 @@ set -e VERSION=${1:-latest} TYPE=${2:-staging} -docker build -t gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/dspace:$VERSION . -f Dockerfile.dspace -docker build -t gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/nginx:$VERSION . -f Dockerfile.nginx -docker build -t gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/postgres:$VERSION . -f Dockerfile.postgres +# export DOCKER_BUILDKIT=1 +docker build \ + --build-arg LABEL_VERSION="$VERSION" \ + --build-arg LABEL_BUILD_DATE="$(date -R)" \ + -t "gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/dspace:$VERSION" . -f Dockerfile.dspace +docker build \ + --build-arg LABEL_VERSION="$VERSION" \ + --build-arg LABEL_BUILD_DATE="$(date -R)" \ + -t "gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/nginx:$VERSION" . -f Dockerfile.nginx +docker build \ + --build-arg LABEL_VERSION="$VERSION" \ + --build-arg LABEL_BUILD_DATE="$(date -R)" \ + -t "gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/postgres:$VERSION" . -f Dockerfile.postgres -docker push gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/dspace:$VERSION -docker push gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/nginx:$VERSION -docker push gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/postgres:$VERSION +docker push "gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/dspace:$VERSION" +docker push "gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/nginx:$VERSION" +docker push "gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/$TYPE/postgres:$VERSION" +echo sed ../kubernetes/*-deployment.yaml -e \"'s#\(.*image: gitlab.inf.unibz.it:4567/.*:\).*#\1'"${VERSION}#"\" diff --git a/dockerfiles/ubuntu-16.04.sources.list b/dockerfiles/ubuntu-16.04.sources.list new file mode 100644 index 0000000000000000000000000000000000000000..0e7283d3053ca70eff1cc1c191000c2e840cc6c3 --- /dev/null +++ b/dockerfiles/ubuntu-16.04.sources.list @@ -0,0 +1,4 @@ +# http://layer0.authentise.com/docker-4-useful-tips-you-may-not-know-about.html +deb mirror://mirrors.ubuntu.com/mirrors.txt xenial main restricted universe multiverse +deb mirror://mirrors.ubuntu.com/mirrors.txt xenial-updates main restricted universe multiverse +deb mirror://mirrors.ubuntu.com/mirrors.txt xenial-security main restricted universe multiverse diff --git a/kubernetes/dspace-deployment.yaml b/kubernetes/dspace-deployment.yaml index 6c1db3a1b907d109e1bd20ca6a1849ac82967927..0ec6766d06b4c7032163075e842bf9712171585f 100644 --- a/kubernetes/dspace-deployment.yaml +++ b/kubernetes/dspace-deployment.yaml @@ -56,7 +56,7 @@ spec: secretKeyRef: key: mail.pass name: dspace-secrets - image: gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/production/dspace:1.3.4 + image: gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/production/dspace:1.3.5 name: clarin-dspace imagePullPolicy: Always ports: diff --git a/kubernetes/dspace-ingress.yaml b/kubernetes/dspace-ingress.yaml index 9ea0a7bf2d2af28ef7fd138167dcf10662dc0fef..94e6b49a4d95936291448c87492abea906e163b1 100644 --- a/kubernetes/dspace-ingress.yaml +++ b/kubernetes/dspace-ingress.yaml @@ -32,6 +32,10 @@ spec: # later on (without the need to change http:// to https://) # see https://github.com/nginx-shib/nginx-http-shibboleth/issues/22 # + # However, make sure to disable all enforce-SSL settings, for example + # for the [dspace REST + # API](https://wiki.duraspace.org/display/DSDOC5x/REST+API). + # # For a general overview for SP reverse proxy-ing # see https://wiki.shibboleth.net/confluence/display/SHIB2/SPReverseProxy # diff --git a/kubernetes/nginx-deployment.yaml b/kubernetes/nginx-deployment.yaml index 94a95dd7964ba20529ee70e2eeec6ce7e015f37f..23637b6c003bee36d4dbe2251798e825d83af646 100644 --- a/kubernetes/nginx-deployment.yaml +++ b/kubernetes/nginx-deployment.yaml @@ -20,7 +20,7 @@ spec: io.kompose.service: nginx spec: containers: - - image: gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/production/nginx:1.3.4 + - image: gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/production/nginx:1.3.5 imagePullPolicy: Always name: clarin-nginx ports: diff --git a/kubernetes/postgres-deployment.yaml b/kubernetes/postgres-deployment.yaml index 1f6ac1da8f533a25572cb7681310d0368e24d5d3..b6c8ee77bbaa6ef1cc58ef72bcd17066f9007e63 100644 --- a/kubernetes/postgres-deployment.yaml +++ b/kubernetes/postgres-deployment.yaml @@ -48,7 +48,7 @@ spec: secretKeyRef: key: dspace.utils.name name: dspace-secrets - image: gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/production/postgres:1.3.4 + image: gitlab.inf.unibz.it:4567/commul/docker/clarin-dspace/production/postgres:1.3.5 imagePullPolicy: Always name: clarin-postgres resources: {}