3 ms·
I'm a strong advocate of boring technology too but I'm also very much in favor of keeping things off my dev machine. In that case they have to run ssh, git and
by dewey 4y ago
I'm a strong advocate of boring technology too but I'm also very much in favor of keeping things off my dev machine. In that case they have to run ssh, git and run a script to switch endpoints.
My current boring system for a simple Rails app (https://getbirdfeeder.com https://getbirdfeeder.com) is that I push to GitLab, the CI builds a docker image and does the ssh & docker-compose up -d dance. That way I can deploy / roll back from anywhere even without my computer as long as I can log into GitLab (and maybe even fix things with their web editor). Seems a lot "more boring" to me and having the deploy procedore codified in a .gitlab-ci.yml acts as documentation too.
- outworlder 4y agoMy rule is: SSH to a machine and running manual commands for any non-toy systems is an antipattern. Every time you SSH to do something, it means you are missing automation and/or observability. In small teams it's bad because it's a waste of time. In large teams it's bad because it creates communication overhead (it's also a waste of time but that can be often absorbed if things don't get too crazy). For a single person team it is bad because now they have to depend on their memory and shell history.
- emptysea 4y agoYeah it's really straightforward to setup Github/Gitlab/Circle/etc. to run your various deploy / ssh commands for you, then you don't need actually access to the box. Really nice being able to open up GitHub and manually kick off a deploy -- or have it deploy automatically.
- ithrow 4y agoFor a single person team it is bad because now they have to depend on their memory and shell history. There is this thing called shell scripts.
- outworlder 4y agoThe scripts can SSH to whatever. If someone is connecting via SSH and then running scripts, that's an issue.
- intelVISA 4y agoThis needs to be on a plaque somewhere. Reproducible doesn't just mean build systems!