Fueled/django-init

Some enhancements to the project

karambir opened this issue · 3 comments

I have done a few enhancements to the project here master...karambir:master

I don't think all of them will be useful to you guys but feel-free to chery-pick. Few pointers:

  • Scrap Fabric and use Make as build(-ish?) system.
  • Use Poetry for Python libs dependency management. This is huge improvement. It can also help in managing virtualenv with support from Pyenv.
  • Use Pyenv and NVM to manage multiple python and node versions on per-project basis. Makefile use them to setup and run commands. Developer needs to have these tools setup and activated in shell.
  • Pin Python and PG versions being installed with ansible on servers. This with Poetry and Pyenv helps in having similar python version as on production. Even for Postgres, when only using client(server on RDS), having same client version as RDS helps.
  • A few fixes in ansible tasks. These are small.
  • Also removed a few things like Heroku
  • remove CircleCI.

I am also planning to add more playbooks where instead of having single web/app server, we can have multiple app servers behind load-balancer. This will need some refactoring in ansible roles to support both configurations(single and multiple servers) and use Terraform to deploy whole project from scratch.

Hey @karambir, thanks for reaching out. Your enhancements look great.
We will have to discuss internally regarding what we would want to cherry-pick from this.

Personally, I would really like to see the playbook for multiple app servers behind load balancer since I had been thinking of adding that as well. Please do consider sending in a PR when you are through with it.

+1 for using Make instead of fabfile. I've been using Makefile in some project with success and I love the idea of using Makefile.

I will send in a PR soon. Using it in one of my projects as well.