Earlier quoted context omitted.
Of course deploying as root is doing it wrong. However, I still haven't found enough reason to switch from using SSH for deployment. It's almost always three lines. ssh; git pull; ./manage.py syncdb/migrate/collectstatic. The only hindrance has been configuring the site to work on the server for the first time, i.e what the site at this link claims to solve. I've spent several hours on fabric before but gave up when…
Idempotence, edge-cases, compliance ensurance. What if you want to redeploy a configuration change to your web servers? What if you want to ensure such changes get re-deployed everytime a change is made to a config file?
Show HN: Pre-configured Django project, Git repo, and virtualenv with 1 command
41–43 of 43 posts
Re: Show HN: Pre-configured Django project, Git repo, and virtualenv with 1 command
#42Earlier quoted context omitted.
Idempotence, edge-cases, compliance ensurance. What if you want to redeploy a configuration change to your web servers? What if you want to ensure such changes get re-deployed everytime a change is made to a config file?
I guess if you are deploying the same site to more than 1 production server these will become worthy problems to solve?
You need to be using automation.
We have something like 16-17 servers, of which 4-5 are actually production servers. Every single one of them was provisioned, configured, and are pushed to via my code.
Everything from haproxy, to the frontend web servers, to the backend web servers, to the frontend assets, the CDN, the image server, the backups, our staging cluster, experimental cluster, databases...all of it is automated.
Do it once, do it right, do it in code, never do it manually again.
The idempotence is just so you can repeat the same job over and over if it fails halfway between without causing any breakage.
Re: Show HN: Pre-configured Django project, Git repo, and virtualenv with 1 command
#43Earlier quoted context omitted.
One solution to the lack of pushState is to just offer the non-JS version of your website to such old browsers. Easiest way to do that is to have the JS bits disable themselves if pushState isn't found.
Or, you know, just use regular links. That part of the site isn't a web app, it's just a regular web page. Why make things more complicated than they have to be? edit: Particularly when I just tried it at home in Chrome, and it ended up at http://www.nutrivise.com/terms/ anyway. Or did you come to the same conclusion re: links?