usgo / online-ratings

AGA Online Ratings protocol and implementation
MIT License
23 stars 12 forks source link

Faster Initial Development #92

Closed lackita closed 4 years ago

lackita commented 4 years ago

I ran into several issues getting set up and creating an account. To make it easier on the next developer, I introduced a few changes to make account creation possible out of the box.

The biggest change is introducing mailhog to catch any emails that are produced in development. If the developer doesn't have a valid SMTP server to communicate with, registration fails and produces an error. I've added mailhog to the containers created by docker-compose and adjusted the example env file to use that information. Mailhog doesn't support TLS and uses a non-standard port, so I had to introduce the ability to control those things through environment variables.

One issue is this causes the docker-compose configuration to drift a bit from what will be in production. Since we're not in production right now, though, I think it's better to have something people can work on and solve the deployment problem down the road.

Another problem I ran into was last_login_ip and current_login_ip weren't wide enough to support the addresses my computer was providing. When I googled those columns, which are part of flask_security, other people were using 45 instead of 25 so I resized the columns to that.