1
0
mirror of https://github.com/zokradonh/kopano-docker synced 2025-06-10 17:36:19 +00:00

81 Commits

Author SHA1 Message Date
Felix Bartels
7eab9c7c06
Hardcoded server names (#298)
* use variables to check if the server is running
* use kopano_con to address the specified kopano socket in an unified way
* set default value for kopano_con
2019-11-28 13:05:54 +01:00
RobinvG
edf4086d7e Disable some checks when deploying with injected cfg files (#295)
* Add variables to disable some checks that aren't needed if you inject the cfg files
* add tests for new functionality
* uncomment write protected test

fixes https://github.com/zokradonh/kopano-docker/pull/296
2019-11-27 14:56:27 +01:00
Felix Bartels
d7fb796fa3
split up installation for core and kapi+grapi (#293)
* split up installation for core and kapi+grapi
* add some debug output in case package installation fails
* let konnect run as nobody
* add code to check writing permissions for certificates and create certificates in container if possible
* add tests to check on failed and successful certificate creation
* add certificate creation logic from the konnect binfile
* add env for custom dockerize timeout (to fail earlier in tests)
2019-11-26 10:10:22 +01:00
Felix Bartels
ead0acfdb0
Add a per setup unique machine-id (#257)
* add mount for machine-id
* services should check the availability of the machine id before starting
* add a note to the readme
* add new mounts to the multiserver example
* add dockerize to kweb
* fix meet demo
2019-11-19 13:55:11 +01:00
Felix Bartels
52d6b18322
Further tweaks for univention app (#264)
* add option to change base path
* fix env name
* add kweb configuration for using konnect in a subpath
* make webapp display configurable
* more explicit startup messages
* add ability to use an external oidc provider
* install the grapi ldap backend in the image when building with a recent enough kopano version
* add the ability to run test in the konnect container
  * the startup script gets more and more complicated, there should be a way to test it
* test some values and add test helper
* do not simply cat the registration, but call with yq
* update kweb and konnect
2019-11-11 10:54:54 +01:00
Felix Bartels
a827ef65b7
Make sure that services listen globally (#273)
they need to be made available through reverse proxy and port forwarding anyways
changed in https://jira.kopano.io/browse/KC-1616

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-10-29 12:16:39 +01:00
Felix Bartels
e74da7b832
run apt non-interactive to prevent package questions (like config updates) during install (#272)
relates to https://github.com/zokradonh/kopano-docker/issues/261

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-10-29 10:14:44 +01:00
Felix Bartels
8fa4da5f74
further goss checks (#270)
* check for running kopano-server
* run goss during startup test for kopano-server
2019-10-24 18:49:41 +02:00
Felix Bartels
5077bbd1b6
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
2019-10-23 14:54:25 +02:00
Felix Bartels
bcb0926c6d
Misc changes (#268)
* fixes for setup-tools.sh

fixes https://github.com/zokradonh/kopano-docker/issues/266

* add startup tests for meet demo
* add architecture to contributing file
* define ical_listen for kopano-ical
* precreate database if it does not yet exist
* fix spelling
2019-10-22 15:00:31 +02:00
Felix Bartels
c49da1d5eb
Store language (#251)
* clean out unneeded locales
* add test to verify that language is picked up in admin.cfg
* add basic question for language and use variable in compose
* use scriptlet to generate locales before start of kopano-server
* add script to check folders of a given mailbox (for language checks)
* add tests for locale generation

relates to #248
2019-10-15 09:24:10 +02:00
Felix Bartels
37f3ee0720
Make repo script more dynamic #232
* also add the ability to download the tar for supported releases
* use env variables for distribution, channel and branch
* add tests for new archive download for supported releases
2019-10-14 11:19:07 +02:00
Felix Bartels
80a3b2a563
experiment with overriding exec to test bash script functions (#254)
* experiment with overriding exec to test bash script functions

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* refine tests

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* test installation of packages

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* make sure package list is not updated when there are not additional packages

* basic commander tests for webapp

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* add webapp commander to makefile

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* basic tests for webapp

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* check webapp config.php

Signed-off-by: Felix Bartels <felix@host-consultants.de>

* add tests for z-push

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-10-08 23:00:36 +02:00
Felix Bartels
b3c3ac669e
Switch to PERMIT_DOCKER=connected-networks (#210)
* test if https://github.com/tomav/docker-mailserver/issues/1079 is resolved
* add spooler test to commander target
2019-09-18 17:17:35 +02:00
Felix Bartels
ab35522da5
Further improve commander test cases (#233)
* add a more detailed example based on https://github.com/SimonBaeumer/commander/pull/82
include test for '!include /usr/share/kopano/ldap.openldap.cfg'?
* add readme on testing
* add goss wait files for dagent and spooler
2019-09-12 13:26:05 +02:00
Felix Bartels
1a16f9822e
make search start again (#238)
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-09-10 15:22:16 +02:00
Felix Bartels
8135321201
Add example compose file to run Meet without Kopano (#217)
* Add example compose file to run Meet without Kopano
* add readme 
* add an example env file
* add setup.sh so user can easily create their own
* use kopano repo by default
2019-09-06 13:19:13 +02:00
Felix Bartels
7717fcf344 add functionality to detect the grapi version
this allows running the same dockerfile with both master and final branches of Kopano Groupware Core

Signed-off-by: Felix Bartels <felix@host-consultants.de>
(cherry picked from commit a40db475f92eb9908348871ccd4b40f24161de66)
2019-09-02 12:49:13 +02:00
Felix Bartels
de66536525
Fix version detection in version.sh and add testing for it (#225)
* fix version syntax
* commander: verify output of version.sh
* commander: exit setup.sh with code 1 when .env exists
* add commander to travis
* minimal test for commander in core container
2019-08-30 18:22:36 +02:00
bjoernneumann
db63ee39cb core-start-service: make the grapi ldap-backend usable (#227)
* core-start-service: make the grapi ldap-backend usable
* fix startup script for kopano grapi backend
2019-08-29 12:47:21 +02:00
Felix Bartels
26c45ce1db
cut quotes from additional package var earlier on (#224)
* cut quotes from additional package var earlier on
* add easy debugging switch to script and predefine env var in base image
2019-08-28 20:49:31 +02:00
Felix Bartels
4878fc9917
Use goss for healthchecks (#223)
* basic healthcheck based on goss
* add goss to travis
* healtcheck command runs now for all services
* add to makefile
2019-08-27 14:56:49 +02:00
Felix Bartels
d6744b20e2
Add test implementation of goss (#222)
* add test target for goss
split test-ci up to later add goss to it
* bring back chown of /kopano/data
* use a dedicated goss file for kopano-server
* add todo
2019-08-24 15:40:56 +02:00
zokradonh
b0236bf0d8 Cure some quoting issues
* Double quotes not needed by docker compose

Same issue as here https://github.com/zokradonh/kopano-docker/issues/216

* move deletion of tmpfile into an exit trap

otherwise the file is not cleaned up when supported images are built

* repair sourcing of env by removing kopano ldap settings from env before sourcing

* additional packages env vars should be quoted in .env
* adapt start scripts to handle quotes additional packages
* treat update-tag script with ldap variable fix from setup.sh

fixes #216

* run version.sh in travis (to fail early if something is wrong there)
commit forgotten fixes to start scripts
2019-08-22 09:21:10 +02:00
Felix Bartels
b8885da14e
remove chown step in service startup (#219)
change is not neccesary and is blocking startup on kubernetes

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-08-22 08:34:08 +02:00
Felix Bartels
f7934cbc51
Make it possible to use an existing konnect instance (#195)
* make konnect url configurable
* switch to fork of dockerize as it allows to skip ssl verification
since the address of the oidc issuer is now dynamic it could point to an invalid ssl certificate (the self signed cert is by default "valid" for *)
* update hadolint
* add more scopes
* only skip ssl verification when running insecure
2019-08-20 21:16:42 +02:00
Felix Bartels
fb37723cc3
Enforce .editorconfig by running eclint (#213)
* tune .editorconfig for the existing files
* fix reported linting issues
* travis: switch language to node_js to be able to run npm
* travis: build on ubuntu bionic
2019-08-12 16:14:45 +02:00
Felix Bartels
f0cc708933
Add softdelete and backup to scheduler (#189)
* disable soft delete in kopano-server and add cron in scheduler to execute it there (fixes #187)
* fix cron example for backup
2019-06-21 07:50:48 +02:00
Felix Bartels
adfbfeb4a3
fail make target when docker wait returns with non zero output (#184)
just install python3-minimal in base
clear apt key todo
rework test-ci to fail when the test containers exits with error code != 1
2019-06-15 19:21:54 +02:00
Felix Bartels
4bcb092266
transition to all versions numbers in labels (#175)
* update supercronic to the latest release
* update tagging for base
* fix version tag for core
* put versions for all containers into labels instead
* define vcf_ref once
* remove cache-from as caches will be invalidated early on because of passing the git ref early on
* do not rebuild when publishing
* do not rebuild when publishing
* reduce layers required for env assignment
* pull newer base images for kdav, scheduler and ssl if available
* alsp publish tag for ldap containers
* fix publishing of ssl container
2019-06-11 10:26:59 +02:00
Felix Bartels
e4b391be4f
add some more documentation about used ports (#161)
also add more ports to docker-compose.yml

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-05-22 12:03:56 +02:00
Felix Bartels
0f98176282
do not upgrade dependencies when installing additional dependencies (#151)
this would otherwise alter other files in the image (e.g. upgrade z-push from 2.4.5 to 2.5.0). the more sustainable approach is to bake additional packages directly into the container by building an own through the makefile.

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-05-09 13:11:45 +02:00
Felix Bartels
124eb25513
Add second ldap image without demo data (#150)
* have a separate ldap container for demo data
* add question to setup.sh about demo users
* make ldap container switchable
* piggyback small fixup for search failing when starting directly after kopano-server

fixes #53
2019-05-09 09:22:33 +02:00
Felix Bartels
250c73053f
Add additional readme files for all produced images (#141) 2019-04-18 08:20:38 +02:00
Felix Bartels
caac8a5c03
wip: Implement a scheduler to run recurring tasks (such as z-push-gabsync) (#123)
* add scheduler container for gabsync
Adds a general scheduler container to trigger tasks within containers.
Also adds gabsync to zpush image
* make scheduler dynamic
execute each cron job once at startup to see if they would succeed
* remove services scripts from core container (now is part of the scheduler)
* add "CRONDELAY" for tasks that should not be executed at startup
* add documentation
* clear out crontab at startup
2019-03-24 17:33:41 +01:00
mithomas
29839286ad Add dynamic dependency-wait for server and spooler service. (#119)
* Add dynamic dependency-wait for server and spooler service.
Instead of using hard-coded dependency-waits on startup for database and MTA for the server and spooler, respectively, the actually configured values are now used.

For the servers, this also takes the use of a unix file socket over a network socket into account.
2019-03-23 00:10:22 +01:00
Felix Bartels
71f88b8451 fix wrong config option in server default config
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-03-22 19:34:01 +01:00
Felix Bartels
dffb90e972
Misc (#120)
* add example docker override (one which would disable the mail container)
* move some config options from docker-compose into the default conf
* add missing depends_on
2019-03-22 19:07:44 +01:00
Felix Bartels
91ccf89765
add linting for shell scripts and Dockerfiles
* add hadolint for dockerfile linting
* add hadofile config
* add checks for dockerfiles and shellcheck into makefile
* shellcheck fixes
* add workaround so that .env can be sourced again from version.sh
* hadolint fixes
* print progress of build/run.sh
* fix check for jq in setup.sh

relates to #41 and #26
2019-03-14 07:46:54 +01:00
Felix Bartels
44c7eb57f5 create admin.cfg in core image
so that it can be later filled through an env variable

relates to https://github.com/zokradonh/kopano-docker/issues/99
2019-03-05 20:46:42 +01:00
Felix Bartels
b21beb96c2 shellcheck for webapp
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-02-26 17:00:32 +01:00
Felix Bartels
d0d3d3c852 change interval for healthcheck
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-02-20 17:01:51 +01:00
Felix Bartels
e3d7e01583
Add Kopano Meet and depending instrastructure to meet
Makefile adjustments
reorder Makefile
adds image for kwmserver
adds image for meet
add Meet to compose
clean up proxy configuration
move kcconf.py into the base image
2019-02-19 12:57:57 +01:00
Felix Bartels
32fe88e5d8 make ldap port configurable
fix startup for grapi

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-01-28 21:37:57 +01:00
Felix Bartels
6a14fbe174
build fixes and readme improvements (#85)
* add compose to the build image
* update readme
* fine tuning for build container
* directly pass commands to run script in build env
* fix dockerfile so that everything can be build on Docker version 17.05.0-ce, build 9f07f0e-synology
2019-01-28 11:07:06 +01:00
Felix Bartels
789762cb34
WIP: Kopano Konnect und Rest API (#72)
* add a new image for konnect
* add konnect to compose file
* adapt gencerts for konnect certs
* integrate gencerts into start.sh and adapt if to only skip individual parts
* add container for kapi
* use same config for webapp and z-push as https://stash.kopano.io/projects/KGOL/repos/kweb/browse/config/legacy.go
* use example compose file in make test target
* make compose file configurable through an env variable
* remove legacy links in compose
* write certificates first to a tempfile
* remove unnecessary paths
* add option to run kapi insecure for testing
* configure openid for kopano-server
* add local playground to test functionality of konnect and kapi
* print errors and logs to stdout in web
* add extrahosts to kopano_server
* adapt extrahosts for ip command on ubuntu 18.04
* add documentation

Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-01-09 21:57:04 +01:00
Felix Bartels
4313de2f24 make smaller styling changes
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-01-03 12:54:40 +01:00
Christian Günther
87bc7765ef fix startup of coreimage containers after unclean shutdown 2019-01-03 00:33:27 +01:00
Felix Bartels
9d5c159db8
Merge pull request #61 from nupplaphil/search_volume
Adding search index to data container
2018-12-21 07:44:22 +01:00
Philipp
58f88fde38 Adding search index to data container 2018-12-20 21:38:24 +01:00