* 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
* 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
* 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)
* 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
* 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
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>
* 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
* 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
* 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
* 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
* 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>
* 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
* 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
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)
* 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
* 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
* 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
* 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
* 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
* 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
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>
* 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
* 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
* 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.
* 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
* 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
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
* 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
* 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>