mirror of
				https://github.com/zokradonh/kopano-docker
				synced 2025-10-30 18:07:46 +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:
		
							parent
							
								
									bcb0926c6d
								
							
						
					
					
						commit
						5077bbd1b6
					
				
							
								
								
									
										1
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Makefile
									
									
									
									
									
								
							| @ -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 | ||||||
|  | |||||||
							
								
								
									
										17
									
								
								core/commander/grapi/commander.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								core/commander/grapi/commander.yaml
									
									
									
									
									
										Normal 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} | ||||||
| @ -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: | ||||||
|  | |||||||
| @ -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 | ||||||
|  | |||||||
| @ -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_@}" | ||||||
|  | |||||||
| @ -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: | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user