Add a README

This commit is contained in:
Jon Goldberg 2018-03-26 12:05:43 -04:00
parent ae8fb35f99
commit 5a337e2a85
Signed by: jon
GPG Key ID: 0DC025928E9AA851

25
README.md Normal file
View File

@ -0,0 +1,25 @@
# README
## Installation
* `git clone` this repository on to a server with incoming SMTP enabled. I recommend running both a live and test copy. For instance, store in both `/usr/local/bin/redirect` and `/usr/local/bin/redirect_test`.
* In `/etc/aliases`, set up aliases. E.g.:
```
support: "| /usr/local/bin/redirect/redirect.php"
support-test: "| /usr/local/bin/redirect_test/redirect.php"
```
* Run `newaliases` as root for the aliases to take effect.
* Run `composer install` in the directory to install dependencies.
* Copy `.env.example` to `.env`.
* Open `.env` and fill in the appropriate environment values. Note that for the boolean values (e.g. `DEBUG_MODE`), you should leave the values blank for false.
* (Optional) Add a custom field in Redmine called "Email Domain" to the Projects entity of type "Text". Populate this with the domain name that emails come from. This catches users from the organization who don't otherwise haev an account.
* Run `php getmappings.php` to test your settings. If you've set everything up correctly, it should populate two CSVs in the `data` folder: `domainmap.csv` and `usermap.csv`.
* If you have special emails that should be handled differently, you can create a `specialusers.csv` file in the `data` folder with the same format as records in `usermap.csv`. This file is concatenated on to the end of whatever users come from Redmine.
* Set up a cron job to generate the mappings. I run this once per hour:
```
45 3 * * * /usr/bin/php /usr/local/bin/redirect_test/getmappings.php
45 4 * * * /usr/bin/php /usr/local/bin/redirect/getmappings.php
```