debian-mirror-gitlab/data/deprecations/16-0-deprecate-sidekiq-delivery-method-for-mailroom.yml
2023-07-09 08:55:56 +05:30

40 lines
2.2 KiB
YAML

- title: '`sidekiq` delivery method for `incoming_email` and `service_desk_email` is deprecated'
announcement_milestone: '16.0'
removal_milestone: '17.0'
breaking_change: true
reporter: msaleiko
stage: Monitor
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/398132
body: |
The `sidekiq` delivery method for `incoming_email` and `service_desk_email` is deprecated and is
scheduled for removal in GitLab 17.0.
GitLab uses a separate process called `mail_room` to ingest emails. Currently, GitLab administrators
can configure their GitLab instances to use `sidekiq` or `webhook` delivery methods to deliver ingested
emails from `mail_room` to GitLab.
Using the deprecated `sidekiq` delivery method, `mail_room` writes the job data directly to the GitLab
Redis queue. This means that there is a hard coupling between the delivery method and the Redis
configuration. Another disadvantage is that framework optimizations such as job payload compression are missed.
Using the `webhook` delivery method, `mail_room` pushes the ingested email body to the GitLab
API. That way `mail_room` does not need to know your Redis configuration and the GitLab application
adds the processing job. `mail_room` authenticates with a shared secret key.
Reconfiguring an Omnibus installation generates this secret key file automatically,
so no secret file configuration setting is needed.
You can configure a custom secret key file (32 characters base 64 encoded) by running a command
like below and referencing the secret file in `incoming_email_secret_file` and
`service_desk_email_secret_file` (always specify the absolute path):
```shell
echo $( ruby -rsecurerandom -e "puts SecureRandom.base64(32)" ) > ~/.gitlab-mailroom-secret
```
If you run GitLab on more than one machine, you need to provide the secret key file for each machine.
We highly encourage GitLab administrators to start using the `webhook` delivery method for
`incoming_email_delivery_method` and `service_desk_email_delivery_method` instead of `sidekiq`.
tiers: [Free, Silver, Gold, Core, Premium, Ultimate]
documentation_url: https://docs.gitlab.com/ee/user/project/service_desk.html#use-a-custom-email-address