--- - fail: msg="This role depends on postgres!" when: - services.postgresql.enable is not defined or services.postgresql.enable is not true - fail: msg="Option 'services.synapse.homeserverConfig' has to be set!" when: - services.synapse.homeserverConfig is not defined - fail: msg="Option 'services.synapse.logConfig' has to be set!" when: - services.synapse.logConfig is not defined - fail: msg="Option 'services.synapse.webClient.configFile' has to be set when 'services.synapse.webClient.enable' is true!" when: - services.synapse.webClient.enable is not defined - services.synapse.webClient.enable is true - services.synapse.webClient.configFile is not defined - fail: msg="Nginx role has to be enabled when using nginx options!" when: - services.synapse.nginx.enable is true - services.nginx.enable is false - fail: msg="Option 'services.synapse.nginx.domain' has to be set when using nginx!" when: - services.synapse.nginx.enable is defined - services.synapse.nginx.enable is true - services.synapse.nginx.domain is not defined - fail: msg="Option 'services.synapse.nginx.sslOnly' has to be set when using nginx!" when: - services.synapse.nginx.enable is defined - services.synapse.nginx.enable is true - services.synapse.nginx.sslOnly is not defined - fail: msg="Option 'services.synapse.nginx.ssl.cert' has to be set when using nginx with ssl!" when: - services.synapse.nginx.enable is defined - services.synapse.nginx.enable is true - services.synapse.nginx.ssl.enable is defined - services.synapse.nginx.ssl.enable is true - services.synapse.nginx.ssl.cert is not defined - fail: msg="Option 'services.synapse.nginx.ssl.privkey' has to be set when using nginx with ssl!" when: - services.synapse.nginx.enable is defined - services.synapse.nginx.enable is true - services.synapse.nginx.ssl.enable is defined - services.synapse.nginx.ssl.enable is true - services.synapse.nginx.ssl.privkey is not defined #todo: check that certs exists