Add mailroom webhook support to Omnibus
Omnibus starts mailroom using bin/mailroom binary with the configuration generated from config/mail_room.yml. The mailroom service run script is available here. The mailroom service configuration is merged between hard-coded address-worker mappings, and Gitlab's incoming_email and service_desk_email configuration. It means Omnibus acts as an environment manager. config/mail_room.yml decides which delivery method to use. As soon as Omnibus can prepare the necessary config, especially secret_file, the mailroom service should work seamlessly when we switch to use webhook.
Therefore, there are some main steps to do. We can replicate the detailed steps in Omnibus kas recipe.
- Add a random secret to mailroom configuration. This configuration should be added when the recipe is enabled. kas example.
- Mount the aforementioned secret as a file under mailroom configuration. kas example.
- Add the secret file path to secret_filefields ofincoming_emailandservice_desk_emailin config/gitlab.yml template.
Edited  by Quang-Minh Nguyen