Nice read, makes me happy to see people invest in CLI.
"Humans first"... How about "Humans with Tools first" ? :)
I would say that ALL logging should go to stderr (level should be --configurable of course), so that when running a container for example I can capture all the logging easily on stderr.
Also that [WARN], [ERROR], etc tags are quite nice to have in there when grep'ing over it.. Just saying :)
I would very much recommend The Art of UNIX programming, by Eric S. Raymond [0]
I used it extensively when developing Space.sh [1] (which was an insane shell script adventure purifying for the soul, but taxing on the brain).
Going full termie is the best choice I've made, thanks for a good read! \o
It would be nice to see an example of space.sh usage somewhere on the landing page. I was intrigued by “through 10 firewalls” but not quite enough to go to the documentation and look it up.
Note that server jumping (over firewalls) is perfectly viable in the last example too, by adding more hosts (comma separated). Note that it can be important to balance host names to user names (see the doc [0]).
In the examples space wraps module functionality where the last module file is the one finally running inside the container, wrapped first by the `ssh` module then the `docker` module.
It is totally agent-less so nothing is uploaded to the server, it's just like SSHing in and running commands.
If you add the `-d` flag to space it will dump the script to output, which you can save to a .sh file and run later (without needing space.sh at all).
Space it self requires bash, but the output runs with POSIX shells, so it also works with dash/ash/busybox, etc which is good because servers/containers often doesn't come with bash, but simpler ash/dash instead.
Thanks for showing interest, this makes me keen on pushing a few fixes and updates I have pending. Let me know if it doesn't work and I'll fix that :)
"Humans first"... How about "Humans with Tools first" ? :)
I would say that ALL logging should go to stderr (level should be --configurable of course), so that when running a container for example I can capture all the logging easily on stderr. Also that [WARN], [ERROR], etc tags are quite nice to have in there when grep'ing over it.. Just saying :)
I would very much recommend The Art of UNIX programming, by Eric S. Raymond [0]
I used it extensively when developing Space.sh [1] (which was an insane shell script adventure purifying for the soul, but taxing on the brain).
Going full termie is the best choice I've made, thanks for a good read! \o
[0] http://www.catb.org/esr/writings/taoup/html/ (There is a PDF available somewhere too) [1] https://space.sh/