Skip to content

Support new issue creation by email without subaddressing

Description

Currently we only support new issue creation by email if the provider or server supports email sub-addressing, but some servers, such as Exchange, do not support sub-addressing.

Also, some servers don't support slashes in email addresses: https://gitlab.com/gitlab-org/gitlab-ce/issues/25001

Proposal

Add a setting to the email configuration, called something like limited_address_characters.

This means that:

  1. Every - in a project name is replaced with --.
  2. Every / in a project name is replaced with -.
  3. There are two types of address that can behave differently depending on a suffix. Both of these will be handled by using a - as the separator, with a trailing - present in the case where there's nothing after the separator.
  4. Service Desk (project/path) / create an issue in a project (project/path+token).
  5. Reply to an issue thread (replykey) / unsubscribe from an issue thread (replykey+unsubscribe).

For example, for this project:

  • gitlab--org-gitlab--ce-$token would create an issue as the user with $token.
  • gitlab--org-gitlab--ce- would be a Service Desk email.

Links / references

https://gitlab.zendesk.com/agent/tickets/70057

/cc @godfat

Additional requirements to finalize

  • Support both formats.
  • Need to figure out UX flows of choosing one, based on what scenario:
    • If your email server doesn't support one format, you probably don't care and don't want your users sending email to that format.
    • If you plan to use that address for a google group membership, then you might want to use the other format too.

Customers

https://gitlab.my.salesforce.com/00161000004zrF8

Edited by Patrick Harlan