Jacek Kowalski
2016-05-02 0cf5a669f2644ccc3d50b58a2e93ebb03caaee40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/bin/bash
 
# Solr configuration
cd "${SOLR_PREFIX}/solr/server"
if [ ! -f solr/solr.xml ]; then
    cp -Rf solr.bak/* solr/
    chown -R solr:solr solr
    chown -R solr:solr "${SOLR_PREFIX}/solr-data"
fi
 
cd "${CASEBOX_PREFIX}/casebox"
 
# Casebox file ownership
if [ "`stat -c %U data`" != "${APACHE_USER}" ]; then
    chown -Rf "${APACHE_USER}:${APACHE_GROUP}" data logs
fi
 
# Apache configuration
if [ ! -f ${APACHE_VHOST_CONFIG} ]; then
    envsubst < docker/apache.conf > "${APACHE_VHOST_CONFIG}"
fi
 
# Casebox configuration template
if [ ! -f config_install.ini ]; then
    envsubst < docker/casebox.ini > config_install.ini
fi
 
# Solr schemas (not mentioned in installation guide)
if [ ! -L "${SOLR_PREFIX}/solr/server/solr/configsets/cb_default" ]; then
    ln -s "${CASEBOX_PREFIX}/casebox/sys/solr_configsets/default_config" \
        "${SOLR_PREFIX}/solr/server/solr/configsets/cb_default"
fi
if [ ! -L "${SOLR_PREFIX}/solr/server/solr/configsets/cb_log" ]; then
    ln -s "${CASEBOX_PREFIX}/casebox/sys/solr_configsets/log_config" \
        "${SOLR_PREFIX}/solr/server/solr/configsets/cb_log"
fi
 
# Solr
sudo -u solr "${SOLR_PREFIX}/solr/bin/solr" start
 
# Casebox configuration
if [ ! -f httpsdocs/config.ini ]; then
    php bin/install.php -f config_install.ini
    
    # Fix file uploads (not mentioned in installation guide)
    mkdir -p "data/tmp/${CASEBOX_CORE}/incomming"
    chown -Rf "${APACHE_USER}:${APACHE_GROUP}" data
fi
 
# Cron daemon
cron
 
# Cron jobs
if [ ! -f casebox_crontab ]; then
    echo "*/2 * * * * php -f '${CASEBOX_PREFIX}/casebox/sys/crons/run_cron.php' -- -n send_notifications -c all" > casebox_crontab
    echo "*/2 * * * * php -f '${CASEBOX_PREFIX}/casebox/sys/crons/run_cron.php' -- -n extract_files_content -c all" >> casebox_crontab
    echo "*/5 * * * * php -f '${CASEBOX_PREFIX}/casebox/sys/crons/run_cron.php' -- -n check_mail -c all" >> casebox_crontab
    echo "*/2 * * * * php -f '${CASEBOX_PREFIX}/casebox/sys/crons/cron_receive_comments.php'" >> casebox_crontab
    crontab -u ${APACHE_USER} casebox_crontab
fi
 
# LibreOffice (file conversion)
sudo -u "${APACHE_USER}" unoconv --listener &
 
# Apache
APACHE_ARGUMENTS=-DFOREGROUND apache2ctl start