Skip to content

Commit 319353a

Browse files
committed
Add conditional check for ActiveMQ configuration
1 parent 322d575 commit 319353a

3 files changed

Lines changed: 26 additions & 22 deletions

File tree

images/fcrepo6/rootfs/etc/confd/templates/activemq.xml.tmpl

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
<context:property-placeholder/>
1111

12-
{{ if or (ne (getenv "FCREPO_ACTIVEMQ_QUEUE") "") (ne (getenv "FCREPO_ACTIVEMQ_TOPIC") "") }}
1312
<!--
1413
The <broker> element is used to configure the ActiveMQ broker.
1514
-->
@@ -30,5 +29,4 @@
3029
</networkConnector>
3130
</networkConnectors>
3231
</broker>
33-
{{ end }}
3432
</beans>

images/fcrepo6/rootfs/etc/s6-overlay/scripts/fcrepo-setup.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,7 @@ function main {
7878
# actually can write to the folder.
7979
chown tomcat:tomcat /data
8080
if [ -n "${FCREPO_ACTIVEMQ_QUEUE:-}" ] || [ -n "${FCREPO_ACTIVEMQ_TOPIC:-}" ]; then
81-
# Fcrepo can fail to start if it cannot connect to an broker on startup.
82-
# ideally this is just enforced with a docker compose service conditon on activemq
83-
wait_for_broker
81+
wait_for_broker
8482
fi
8583
}
8684
main
Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,31 @@
11
#!/command/with-contenv bash
22
# shellcheck shell=bash
33
export JAVA_OPTS="${TOMCAT_JAVA_OPTS}"
4-
export CATALINA_OPTS="${TOMCAT_CATALINA_OPTS}"
5-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.home=/data/home"
6-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.velocity.runtime.log=/dev/stdout"
7-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.jms.baseUrl=http://${HOSTNAME}/fcrepo/rest"
8-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.external.content.allowed=/opt/tomcat/conf/allowed-external-content.txt"
9-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.autoversioning.enabled=false"
10-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.activemq.directory=file:///data/home/data/Activemq"
11-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.activemq.configuration=file:///opt/tomcat/conf/activemq.xml"
12-
# Set timeout
13-
export CATALINA_OPTS="${CATALINA_OPTS} -DconnectionTimeout=${FCREPO_CATALINA_TIMEOUT:=-1}"
4+
CATALINA_OPTS="${TOMCAT_CATALINA_OPTS}"
5+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.home=/data/home"
6+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.velocity.runtime.log=/dev/stdout"
7+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.external.content.allowed=/opt/tomcat/conf/allowed-external-content.txt"
8+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.autoversioning.enabled=false"
9+
10+
if [ -z "${FCREPO_ACTIVEMQ_QUEUE:-}" ] && [ -z "${FCREPO_ACTIVEMQ_TOPIC:-}" ]; then
11+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.jms.enabled=false"
12+
else
13+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.jms.baseUrl=http://${HOSTNAME}/fcrepo/rest"
14+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.activemq.directory=file:///data/home/data/Activemq"
15+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.activemq.configuration=file:///opt/tomcat/conf/activemq.xml"
16+
fi
17+
18+
CATALINA_OPTS="${CATALINA_OPTS} -DconnectionTimeout=${FCREPO_CATALINA_TIMEOUT:=-1}"
1419

1520
case "${DB_DRIVER}" in
1621
none)
1722
# No action required.
1823
;;
1924
mysql)
20-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.url=jdbc:mysql://${DB_MYSQL_HOST}:${DB_MYSQL_PORT}/${FCREPO_DB_NAME}"
25+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.url=jdbc:mysql://${DB_MYSQL_HOST}:${DB_MYSQL_PORT}/${FCREPO_DB_NAME}"
2126
;;
2227
postgresql)
23-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.url=jdbc:postgresql://${DB_POSTGRESQL_HOST}:${DB_POSTGRESQL_PORT}/${FCREPO_DB_NAME}"
28+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.url=jdbc:postgresql://${DB_POSTGRESQL_HOST}:${DB_POSTGRESQL_PORT}/${FCREPO_DB_NAME}"
2429
;;
2530
*)
2631
echo "Only mysql/postgresql are supported values for DB_DRIVER." >&2
@@ -29,18 +34,21 @@ postgresql)
2934
esac
3035

3136
if [[ "${DB_DRIVER}" != "none" ]]; then
32-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.user=${FCREPO_DB_USER}"
33-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.password=${FCREPO_DB_PASSWORD}"
37+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.user=${FCREPO_DB_USER}"
38+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.db.password=${FCREPO_DB_PASSWORD}"
3439
fi
3540

3641
if [[ "${FCREPO_DISABLE_SYN}" == "true" ]]; then
37-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.properties.management=relaxed"
42+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.properties.management=relaxed"
3843
fi
3944

4045
if [[ "${FCREPO_BINARYSTORAGE_TYPE}" == "file" ]]; then
41-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.storage=ocfl-fs"
46+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.storage=ocfl-fs"
4247
fi
4348
if [[ "${FCREPO_BINARYSTORAGE_TYPE}" == "s3" ]]; then
4449
# Enable S3 mode and set default options
45-
export CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.storage=ocfl-s3 -Dfcrepo.aws.region=${FCREPO_AWS_REGION} -Dfcrepo.ocfl.s3.bucket=${FCREPO_S3_BUCKET} -Dfcrepo.ocfl.s3.prefix=${FCREPO_S3_PREFIX}"
50+
CATALINA_OPTS="${CATALINA_OPTS} -Dfcrepo.storage=ocfl-s3 -Dfcrepo.aws.region=${FCREPO_AWS_REGION} -Dfcrepo.ocfl.s3.bucket=${FCREPO_S3_BUCKET} -Dfcrepo.ocfl.s3.prefix=${FCREPO_S3_PREFIX}"
4651
fi
52+
53+
54+
export CATALINA_OPTS

0 commit comments

Comments
 (0)