@@ -, +, @@
- Adding a replaceable string to the template for koha-conf.xml
- Making koha-create-dirs create the needed directories (i.e.
/var/cache/koha/instance and /var/cache/koha/instance/templates)
- Adding a --template-cache-dir switch to koha-create (so sysadmins can
specify their favourite directory for the templates cache).
- koha-remove now takes care of the instance's *templates* dir.
- The install scripts now automatically create /var/cache/koha so it can
be used later by koha-create and friends. It does so the same way it does
for other install-created directories.
- Make sure you have the latest misc4dev in your kohadevbox (if it is a
fresh box you have it already)
- Run:
$ sudo perl misc4dev/cp_debian_files.pl
- Manually create the /var/cache/koha dir (skip if you have your own
packages):
$ sudo mkdir /var/cache/koha
- Create a new instance:
$ sudo koha-create --create-db cachetest
* /etc/koha/sites/cachetest/koha-conf.xml contains
template_cache_dir and is populated with /var/cache/koha/cachetest/templates
* The directory /var/cache/koha/cachetest/templates exists!
- Create a new instance, pass your own cache dir:
$ sudo koha-create --create-db --template-cache-dir /tmp cachetest2
and is populated with /tmp
- Run:
$ man koha-create
correctly.
- Sign off :-D!
---
debian/docs/koha-create.xml | 9 +++++++++
debian/koha-common.dirs | 1 +
debian/scripts/koha-create | 18 ++++++++++++++++--
debian/scripts/koha-create-dirs | 2 ++
debian/scripts/koha-remove | 2 ++
debian/templates/koha-conf-site.xml.in | 5 +----
6 files changed, 31 insertions(+), 6 deletions(-)
--- a/debian/docs/koha-create.xml
+++ a/debian/docs/koha-create.xml
@@ -40,6 +40,7 @@
n port
+ directory directory|
@@ -185,6 +186,14 @@
+
+
+ Specify a for storing the template cache files of the instance.
+ It defaults to /var/cache/koha/instance/templates.
+
+
+
+ Specify a for storing the permanently uploaded files of the instance.
--- a/debian/koha-common.dirs
+++ a/debian/koha-common.dirs
@@ -1,4 +1,5 @@
etc/koha/sites
+var/cache/koha
var/lib/koha
var/log/koha
var/lock/koha
--- a/debian/scripts/koha-create
+++ a/debian/scripts/koha-create
@@ -70,6 +70,8 @@ Options:
--database dbname Enforce the use of the specified DB name (64 char limit)
--adminuser n Explicit the admin user ID in the DB. Relevant in
conjunction with --defaultsql and --populate-db.
+ --template-cache-dir Set a user defined template_cache_dir. It defaults to
+ /var/cache/koha//templates
--upload-path dir Set a user defined upload_path. It defaults to
/var/lib/koha//uploads
--letsencrypt Set up a https-only site with letsencrypt certificates
@@ -113,6 +115,7 @@ generate_config_file() {
-e "s/__DB_PASS__/$mysqlpwd/g" \
-e "s/__UNIXUSER__/$username/g" \
-e "s/__UNIXGROUP__/$username/g" \
+ -e "s#__TEMPLATE_CACHE_DIR__#$TEMPLATE_CACHE_DIR#g" \
-e "s#__UPLOAD_PATH__#$UPLOAD_PATH#g" \
-e "s/__LOG_DIR__/\/var\/log\/koha\/$name/g" \
-e "s/__PLUGINS_DIR__/\/var\/lib\/koha\/$name\/plugins/g" \
@@ -405,6 +408,8 @@ DEFAULT_MEMCACHED_PREFIX="koha_"
UPLOAD_PATH_BASE="/var/lib/koha"
UPLOAD_DIR="uploads"
UPLOAD_PATH=""
+# cache base dir
+CACHE_DIR_BASE="/var/cache/koha"
# Generate a randomizaed API secret
API_SECRET="$(pwgen -s 64 1)"
# SRU server variables
@@ -433,7 +438,7 @@ fi
[ $# -ge 1 ] && [ $# -le 16 ] || ( usage ; die "Error: wrong parameters" )
-TEMP=`getopt -o chrpm:l:d:f:b:a: -l create-db,request-db,populate-db,use-db,use-memcached,enable-sru,sru-port:,help,marcflavor:,auth-idx:,biblio-idx:,zebralang:,defaultsql:,configfile:,passwdfile:,dbhost:,database:,adminuser:,memcached-servers:,memcached-prefix:,upload-path:,letsencrypt, \
+TEMP=`getopt -o chrpm:l:d:f:b:a: -l create-db,request-db,populate-db,use-db,use-memcached,enable-sru,sru-port:,help,marcflavor:,auth-idx:,biblio-idx:,zebralang:,defaultsql:,configfile:,passwdfile:,dbhost:,database:,adminuser:,memcached-servers:,memcached-prefix:,template-cache-dir:,upload-path:,letsencrypt, \
-n "$0" -- "$@"`
# Note the quotes around `$TEMP': they are essential!
@@ -450,6 +455,7 @@ CLO_MEMCACHED_SERVERS=""
CLO_MEMCACHED_PREFIX=""
CLO_UPLOAD_PATH=""
CLO_LETSENCRYPT=""
+CLO_TEMPLATE_CACHE_DIR=""
while true ; do
case "$1" in
@@ -491,6 +497,8 @@ while true ; do
ENABLE_SRU="yes" ; shift ;;
--sru-port)
SRU_SERVER_PORT="$2" ; shift 2 ;;
+ --template-cache-dir)
+ CLO_TEMPLATE_CACHE_DIR="$2" ; shift 2 ;;
--upload-path)
CLO_UPLOAD_PATH="$2" ; shift 2 ;;
--letsencrypt)
@@ -592,6 +600,13 @@ else
MEMCACHED_PREFIX=""
fi
+# Set template cache dir
+if [ "$CLO_TEMPLATE_CACHE_DIR" != "" ]; then
+ TEMPLATE_CACHE_DIR="$CLO_TEMPLATE_CACHE_DIR"
+else
+ TEMPLATE_CACHE_DIR="$CACHE_DIR_BASE/$name/templates"
+fi
+
# Are we root? If not, the mod_rewrite check will fail and be confusing, so
# we look into this first.
if [[ $UID -ne 0 ]]
@@ -727,7 +742,6 @@ eof
generate_config_file zebra.passwd.in \
"/etc/koha/sites/$name/zebra.passwd"
-
# Create a GPG-encrypted file for requesting a DB to be set up.
if [ "$op" = request ]
then
--- a/debian/scripts/koha-create-dirs
+++ a/debian/scripts/koha-create-dirs
@@ -40,6 +40,8 @@ for name in "$@"
do
rootdir "/var/spool/koha/$name"
userdir "$name" "/etc/koha/sites/$name"
+ userdir "$name" "/var/cache/koha/$name"
+ userdir "$name" "/var/cache/koha/$name/templates"
userdir "$name" "/var/lib/koha/$name"
userdir "$name" "/var/lib/koha/$name/authorities"
userdir "$name" "/var/lib/koha/$name/authorities/key"
--- a/debian/scripts/koha-remove
+++ a/debian/scripts/koha-remove
@@ -125,6 +125,8 @@ eof
rm -r "/var/lock/koha/$name"
[ -d "/var/log/koha/$name" ] && \
rm -r "/var/log/koha/$name"
+ [ -d "/var/cache/koha/$name" ] && \
+ rm -r "/var/cache/koha/$name"
[ -d "/var/run/koha/$name" ] && \
rm -r "/var/run/koha/$name"
[ "$purgeall" = "1" ] && [ -d "/var/lib/koha/$name" ] && \
--- a/debian/templates/koha-conf-site.xml.in
+++ a/debian/templates/koha-conf-site.xml.in
@@ -291,10 +291,7 @@ __END_SRU_PUBLICSERVER__
__MEMCACHED_SERVERS____MEMCACHED_NAMESPACE__
-
+ __TEMPLATE_CACHE_DIR____API_SECRET__
--