1
0
mirror of https://github.com/zokradonh/kopano-docker synced 2025-06-07 16:06:14 +00:00

improve config options for grapi (#269)

* make it possible to configure grapi through its cfg
* add test for config setting in grapi
* add volume for persistent data
* chown and add tests for dir
This commit is contained in:
Felix Bartels 2019-10-23 14:54:25 +02:00 committed by GitHub
parent bcb0926c6d
commit 5077bbd1b6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 46 additions and 5 deletions

View File

@ -409,6 +409,7 @@ test-commander: ## Test scripts with commander
commander test tests/commander.yaml commander test tests/commander.yaml
COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=core/commander/server dccommander run kopano_server COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=core/commander/server dccommander run kopano_server
COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=core/commander/spooler dccommander run kopano_spooler COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=core/commander/spooler dccommander run kopano_spooler
COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=core/commander/grapi dccommander run kopano_grapi
COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=webapp dccommander run kopano_webapp COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=webapp dccommander run kopano_webapp
COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=zpush dccommander run kopano_zpush COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=zpush dccommander run kopano_zpush
COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=scheduler dccommander run kopano_scheduler COMMANDER_OPTS="--concurrent 1" COMMANDER_FILES_PATH=scheduler dccommander run kopano_scheduler

View File

@ -0,0 +1,17 @@
tests:
start-service script:
command: bash -c "shopt -s expand_aliases; alias exec='echo'; . /kopano/start-service.sh && env"
exit-code: 0
stdout:
contains:
- enable_experimental_endpoints=true
config:
env:
KCCONF_GRAPI_ENABLE_EXPERIMENTAL_ENDPOINTS: true
config:
env:
DEBUG: ${DEBUG}
GRAPI_BACKEND: ${GRAPI_BACKEND}
LANG: ${LANG}
SERVICE_TO_START: ${SERVICE_TO_START}
PATH: ${PATH}

View File

@ -1,7 +1,10 @@
tests: tests:
test sending mail: test sending mail:
command: apt update && apt install -y swaks netbase && dockerize -wait tcp://"$KCCONF_SPOOLER_SMTP_SERVER":25 -timeout 1080s swaks --to user1@kopano.demo --server $KCCONF_SPOOLER_SMTP_SERVER command: apt update && apt install -y swaks netbase && dockerize -wait tcp://"$KCCONF_SPOOLER_SMTP_SERVER":25 -timeout 1080s && swaks --to user1@kopano.demo --server $KCCONF_SPOOLER_SMTP_SERVER
exit-code: 0 exit-code: 0
stdout:
contains:
- "250 2.0.0 Ok: queued as"
config: config:
env: env:

View File

@ -1,7 +1,20 @@
file: file:
/var/lib/kopano-grapi:
exists: true
mode: "0755"
size: 4096
owner: kapi
group: kopano
filetype: directory
/var/run/kopano/grapi: /var/run/kopano/grapi:
exists: true exists: true
mode: "0755" mode: "0755"
owner: kapi owner: kapi
group: kopano group: kopano
filetype: directory filetype: directory
mount:
/var/lib/kopano-grapi:
exists: true
opts:
- rw
- relatime

View File

@ -22,7 +22,7 @@ ADDITIONAL_KOPANO_PACKAGES=$(echo "$ADDITIONAL_KOPANO_PACKAGES" | tr -d '"')
fi fi
done done
mkdir -p /kopano/data/attachments /kopano/data/kapi-kvs /tmp/"$SERVICE_TO_START" /var/run/kopano mkdir -p /kopano/data/attachments /kopano/data/kapi-kvs /tmp/"$SERVICE_TO_START" /var/run/kopano /var/lib/kopano-grapi
echo "Configure core service '$SERVICE_TO_START'" | ts echo "Configure core service '$SERVICE_TO_START'" | ts
/usr/bin/python3 /kopano/"$SERVICE_TO_START".py /usr/bin/python3 /kopano/"$SERVICE_TO_START".py
@ -32,6 +32,7 @@ rm -f /var/run/kopano/"$SERVICE_TO_START".pid
echo "Set ownership" | ts echo "Set ownership" | ts
chown kopano:kopano /kopano/data/ /kopano/data/attachments chown kopano:kopano /kopano/data/ /kopano/data/attachments
chown kapi:kopano /var/lib/kopano-grapi
# allow helper commands given by "docker-compose run" # allow helper commands given by "docker-compose run"
if [ $# -gt 0 ]; then if [ $# -gt 0 ]; then
@ -127,6 +128,9 @@ grapi)
fi fi
;; ;;
esac esac
sed s/\ *=\ */=/g /etc/kopano/grapi.cfg > /tmp/grapi-env
# shellcheck disable=SC2046
export $(grep -v '^#' /tmp/grapi-env | xargs -d '\n')
# cleaning up env variables # cleaning up env variables
unset "${!KCCONF_@}" unset "${!KCCONF_@}"
# the backend option is only available in more recent versions of grapi # the backend option is only available in more recent versions of grapi
@ -151,9 +155,9 @@ kapi)
-timeout 360s -timeout 360s
fi fi
LC_CTYPE=en_US.UTF-8 LC_CTYPE=en_US.UTF-8
sed -i s/\ *=\ */=/g /etc/kopano/kapid.cfg sed s/\ *=\ */=/g /etc/kopano/kapid.cfg > /tmp/kapid-env
# shellcheck disable=SC2046 # shellcheck disable=SC2046
export $(grep -v '^#' /etc/kopano/kapid.cfg | xargs -d '\n') export $(grep -v '^#' /tmp/kapid-env | xargs -d '\n')
kopano-kapid setup kopano-kapid setup
# cleaning up env variables # cleaning up env variables
unset "${!KCCONF_@}" unset "${!KCCONF_@}"

View File

@ -227,9 +227,11 @@ services:
- kopano_server - kopano_server
volumes: volumes:
- kopanosocket/:/run/kopano - kopanosocket/:/run/kopano
- kopanograpi/:/var/lib/kopano-grapi
environment: environment:
- SERVICE_TO_START=grapi - SERVICE_TO_START=grapi
- TZ=${TZ} - TZ=${TZ}
- KCCONF_GRAPI_ENABLE_EXPERIMENTAL_ENDPOINTS=false
env_file: env_file:
- kopano_grapi.env - kopano_grapi.env
networks: networks:
@ -477,6 +479,7 @@ volumes:
mtaconfig: mtaconfig:
mysql: mysql:
kopanodata: kopanodata:
kopanograpi:
kopanossl: kopanossl:
kopanosocket: kopanosocket:
kopanowebapp: kopanowebapp: