Tired of the hacky methods of deploying and running commands, I decided to go ahead and clean up the cli a bit and allow for targeting specific node classes for ssh, and deploy commands
Also, since it's super annoying for bitte deploy to take a super long time without any feedback, I also fixed the stdout of the nix build commands so we can again see build progress during a deployment.
Some other niceties for deploy: since we almost always disable rollbacks I went ahead and inverted the flags, so now you have to pass the rollback settings if you want them otherwise they are disbled by default, also, instead of exiting on error, simply log the error and continue so we don't have to reinvoke if one of the clients failed to activate (since this is sometimes a false positive anyway).
Before merging, I'd probably also like to add a bitte scp command, which should be mostly just refactoring the existing ssh code path, so not too much work :crossed_fingers:
Tired of the hacky methods of deploying and running commands, I decided to go ahead and clean up the cli a bit and allow for targeting specific node classes for
ssh
, anddeploy
commandsAlso, since it's super annoying for
bitte deploy
to take a super long time without any feedback, I also fixed the stdout of the nix build commands so we can again see build progress during a deployment.Some other niceties for
deploy
: since we almost always disable rollbacks I went ahead and inverted the flags, so now you have to pass the rollback settings if you want them otherwise they are disbled by default, also, instead of exiting on error, simply log the error and continue so we don't have to reinvoke if one of the clients failed to activate (since this is sometimes a false positive anyway).Before merging, I'd probably also like to add a
bitte scp
command, which should be mostly just refactoring the existing ssh code path, so not too much work :crossed_fingers: