slack service fails with error 500 if configured hook uses self-signed certificate
Summary
The execution of services fails with error 500 if the configured hook uses a self-signed ssl certificate.
The issue appears to be the exact same as Issue (https://gitlab.com/gitlab-org/gitlab-ce/issues/2681) for webhooks, which has already been solved by the "disable ssl verification" checkbox
Steps to reproduce
- set up a mattermost server with self-signed ssl certificates
- configure slack service with webhook pointing to set-up mattermost server
- Save changes
- Test settings
Expected behavior
- Success message, stating that a request was sent to the url.
- Something happening on mattermost
Actual behavior
- Error 500, something went wrong on our end
- Nothing happens on mattermost
Environment
System information System: Ubuntu 16.04 Current User: git Using RVM: no Ruby Version: 2.3.1p112 Gem Version: 2.6.6 Bundler Version:1.13.6 Rake Version: 10.5.0 Sidekiq Version:4.2.1
GitLab information Version: 8.13.6 Revision: 69cda014 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: postgresql Using LDAP: yes Using Omniauth: no
GitLab Shell Version: 3.6.6 Repository storage paths:
- default: /var/opt/gitlab/git-data/repositories Hooks: /opt/gitlab/embedded/service/gitlab-shell/hooks/ Git: /opt/gitlab/embedded/bin/git
mattermost: Latest stable build
Possible fixes
- add "verify=False" checkbox to slack service configuration
- add mattermost service template instead of using slack template as described in docs (https://docs.gitlab.com/omnibus/gitlab-mattermost/#setting-up-gitlab-integration-service-for-mattermost)