Configuring outbound mail / notification providers in tools (just like any other configurations) should be easier as you move higher up the application layer (Think configuring sendmail command line program vs configuring an option in facebook / twitter). Surprisingly, Phabricator Outbound Email SMTP Configuration turned out to be more tricky (both usage & documentation wise) than I anticipated. Hopefully the following post will help reduce time if you are setting up the notifications!!

Prerequisites

1. Phabricator – I have installed it on an Ubuntu VirtualBox on my laptop
2. SMTP Server details – Keep the SMTP server details at hand to configure the outbound mails

Configuration Steps

1. Set the metamta.mail-adapter configuration of Phabricator to PhabricatorMailImplementationPHPMailerLiteAdapter. You can set this option from the UI itself.

2. You can’t edit SMTP configuration directly in Phabricator. Although mail configuration documentation mentions the configurations to be added, advanced configuration provides details on how to (UI isn’t much helpful as well….). I am outlining the steps below:

2.1 Create a config file (for eg. at your PHABRICATOR_HOME/conf/custom/PhabricatorMail.conf.php) and add your specific SMTP configurations as shown below (replace the upper case place holders with valid values for your environment). Note that SMTP Port is an integer value – so it doesn’t require quotes. Also, SMTP protocol could have either ssl or tls as values if necessary (refer to mail configuration documentation above). Note that you don’t need to close the php tag in the end!

2.2 Set up phabricator local environment file as shown below (refer to advanced configuration document for more details). Note that the file name provided below doesn’t have .conf.php in the name!

3. After setting up the configuration, you need to restart phabricator. Since there is no phabricator server, what this means is to restart the web server – apache

4. Test that the configuration has changed from the phabricator UI config screens. You can use phabricator/bin/mail send-test (command line option) or send a notification / welcome mail from the UI (latter is easier to test..)

Observations

1. No UI provided (none that I could find…) to check success or failure of mail delivery / setup (you have to do this through command line itself – but it doesn’t provide complete details of the errors…)
2. Idea of creating a configuration file to hold all the relevant values is great – since it will be useful in migrating settings in the future
3. Would have been great if the configuration file didn’t have <?php in the beginning – since it feels weird that we are not closing the tags at the end of the file!
4. Not sure why the ENVIRONMENT takes the filename without .conf.php – bit weird!!!

 

Share this:

About Chethan

I am the Founder and Director of Expertz.me! I am an Entrepreneur, Architect, Problem Solver & Techy - All rolled into one!!

  • Xeno LEE

    I am a starter using Ubuntu. I got a “permission denied” while setting up local envrionment

    # bash: conf/local/ENVIRONMENT: Permission denied

    No problem using “sudo” but it won’t work here..
    Can anyone help me, plz?