Commit Graph

167 Commits (master)

Author SHA1 Message Date
Chip Senkbeil ba6ebcfcb8
Refactor codebase to be more testable & add some initial tests 3 years ago
Chip Senkbeil 1ca3cd7859
Big refactor that is not finished 3 years ago
Chip Senkbeil 2b23cd379c
Rename mode -> format; bump to 0.13.0 3 years ago
Chip Senkbeil 33abcbb5fb
Update logger to properly shutdown when process exits 3 years ago
Chip Senkbeil 69af44cb8e
Add lsp session mode w/ parser and tests 3 years ago
Chip Senkbeil f12c3428eb
Move around some net structs and impls to their own modules, add some client tests 3 years ago
Chip Senkbeil aded5fd16f
Merge branch 'master' of github.com:chipsenkbeil/distant 3 years ago
Chip Senkbeil e857dabe43
Add tests for codec and transport; move net::client to dedicated file 3 years ago
Chip Senkbeil 160631bc7b
Add login shell support by defualt to run distant command on launch 3 years ago
Chip Senkbeil f6e9195503
Update error response to include kind, refactor kind to be from a defined set, support new exists request/response 3 years ago
Chip Senkbeil e2fd3a9bae
Add proper exit codes mirroring sysexits from FreeBSD 3 years ago
Chip Senkbeil 86e4d7f2fc
Refactor to support a payload for request/response with multiple entries; bump to 0.10.0 3 years ago
Chip Senkbeil 24d0c3b2ab
Bump to v0.9.5 and update couple of cli descriptions 3 years ago
Chip Senkbeil fac7687f27
Remove excessive trace logging of send/recv at transport level as this isn't useful 3 years ago
Chip Senkbeil 1a1f219594
Update DirRead to sort returned paths by name 3 years ago
Chip Senkbeil 809baaee85
Add extra aliases for different actions like creating a dir and running a process 3 years ago
Chip Senkbeil f51b8420f3
Update metadata human printout to not include canonicalized_path if missing 3 years ago
Chip Senkbeil 9a67418227
Add option to metadata request to return the canonicalized path in the response; bump to 0.9.0 3 years ago
Chip Senkbeil d3a1cad7b3
Fix bug where socket not cleared when fail flag disabled; fix shutdown timer logic 3 years ago
Chip Senkbeil 956f7e0119
Unfinished timing 3 years ago
Chip Senkbeil df80f261bc
Add client timeout support, system info message, and support for including root path in retrieved dir entries 3 years ago
Chip Senkbeil cbefdb69ec
Fix stdout/stderr not being detected in proc response when no newline was provided 3 years ago
Chip Senkbeil b3a4d79507
Update stdin/stdout/stderr pipes to read into buffers instead of waiting for newlines 3 years ago
Chip Senkbeil a15a707f1d
Fix processes lingering for unix socket proxy when a connection closes 3 years ago
Chip Senkbeil 638638f332
Refactor ProcStdin to send a string representing a line instead of a vec of bytes 3 years ago
Chip Senkbeil 4edf8021cc
Add features and fixes for upcoming 0.6.0
1. Capture errors when listing directory contents and report them
   as part of the response instead of exiting on first error
2. Refactor DirRead request to support providing a depth (instead
   of the "all" flag), canonicalizing the paths, and have the choice
   of returning absolute paths instead of relative
3. Fix forked process for launch not connecting over TCP to
   server due to tokio runtime being inherited from parent
4. Fix leftover launch process caused by forking w/ the old runtime
5. Fix stdout/stderr of running processes not being reported
   (when process looping and not returning) by wrapping stdout/stderr
   in `BufReader` and sending back one line at a time for each
6. Refactor ProcStdout and ProcStderr responses to send back a line
   field that is a string instead of a data field that is a byte vec
   as we are now reading and sending back whole lines, which makes
   more sense and aligns with output flushing and common stdout/stderr
   processing by other programs
3 years ago
Chip Senkbeil d4775477aa
Refactor codebase into cli and core modules, add unix socket support, bump to 0.5.0 3 years ago
Chip Senkbeil bb7829e3f0
Add support for launch to be interactive 3 years ago
Chip Senkbeil d9c2b9942a
Consolidate session production to just the session struct 3 years ago
Chip Senkbeil de69b419a4
Fix CPU pegging when stdin stream has closed 3 years ago
Chip Senkbeil a7dd0eb435
Refactor codebase with breaking changes
1. Add --session argument to launch and action
   subcommands that accepts file or pipe for
   launch and environment, file, or pipe for action
2. Unify session string as "DISTANT DATA <host> <port> <auth key>"
3. Rename utils to session
4. Split out Session file functionality to SessionFile
5. Remove SessionError in favor of io::Error
6. Bump version to 0.4.0 in preparation for that release
3 years ago
Chip Senkbeil d1e342f04f
Fix bug where writing file did not work from cli, add text options for write and append, bump to 0.3.2 3 years ago
Chip Senkbeil 3c68bb3377
Add metadata request & response; bump to 0.3.1 3 years ago
Chip Senkbeil f24bb6067d
Rename send -> action and bump to 0.3.0 3 years ago
Chip Senkbeil 3cbdfb19d9
Add extra session commands 3 years ago
Chip Senkbeil fa71e40982
Fix failures not returning a bad exit code 3 years ago
Chip Senkbeil 878c27742a
Fix file_type being null in json 3 years ago
Chip Senkbeil b4706e88bc
Add interactive loop for shell and json modes; fix some minor discrepancies 3 years ago
Chip Senkbeil c7b8db517c
Rename format to mode; remove unsupported --detach option on proc-run 3 years ago
Chip Senkbeil b9cec3399b
Rename ADDRESS to HOST for positional host argument of launch command 3 years ago
Chip Senkbeil bada62c7da
Remove unused --use-ipv6 option on launch command 3 years ago
Chip Senkbeil c7c9c237d7
Merge human and shell format types 3 years ago
Chip Senkbeil 72870b2b7d
Change file logging to include timestamp and remove exposure of derived crypt key 3 years ago
Chip Senkbeil 54d61fe5b3
Add support for encryption using derived common secret and introduce authentication using an auth secret 3 years ago
Chip Senkbeil 676a89427b
Add support for changing cwd of server, which starts at / by default when launched over ssh 3 years ago
Chip Senkbeil 3a2749fd7f
Add support for piping stdin to remote proccess and reduce size of packets to just include the total bytes as a header 3 years ago
Chip Senkbeil f59ae7f6ed
Fix dropped messages on client side and lockup of transport when trying to read and write concurrently 3 years ago
Chip Senkbeil 6ef55d6e38
Rename format type shell -> human and program -> shell 3 years ago
Chip Senkbeil 79fe86ae15
Update into_split to reuse buffers; fix newline appearing after stdout/stderr from program 3 years ago
Chip Senkbeil f090aa8fc3
Refactor clear-session into session clear 3 years ago
Chip Senkbeil b48a5c1a2b
Fix program not being option -- still seeing dropped frames (testing with zsh repeat) 3 years ago
Chip Senkbeil 4c249abf6a
Fix (maybe) issue about first frame being dropped on new client 3 years ago
Chip Senkbeil 4c69584f63
Process is now sort of working, but not reliable enough 3 years ago
Chip Senkbeil 24a8cf8401
Refactored listener code into a handler module, wrote support to split transport into read and write halves, implemented most of backend although process run is not working yet 3 years ago
Chip Senkbeil a707523fb5
Implement file I/O commands 3 years ago
Chip Senkbeil f2cce4aa34
Refactor code to have request/response format w/ client wrapper for easier processing 3 years ago
Chip Senkbeil f6fa3e606e
Fix CPU pegging of server (unnecessary transport loop), add extra server args option, and adjust default port settings to be TCP friendly 3 years ago
Chip Senkbeil e4bdde8aae
Update with proper logging; fix bad host parsing 3 years ago
Chip Senkbeil 801265a258
Fixed transport issue due to packed problems 3 years ago
Chip Senkbeil 3c7561bef8
Implemented broken framed logic 3 years ago
Chip Senkbeil a52fb82fbf
Add response type and associated data; add operation to send stdin to remote process 3 years ago
Chip Senkbeil 9d7be8b4d7
Refactor operations to be both cli and request data 3 years ago
Chip Senkbeil f09cca80f1
Minor cosmetics 3 years ago
Chip Senkbeil ccd23a2fdc
Support port range binding 3 years ago
Chip Senkbeil 273e55fa0b
Refactor to create tokio runtimes within commands instead of at main 3 years ago
Chip Senkbeil 1b7d017c14
Implement some of the session setup code 3 years ago
Chip Senkbeil b506943607
Initial commit 3 years ago