aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jonas Gunz <himself@jonasgunz.de> 2020-06-07 22:48:17 +0200
committerGravatar Jonas Gunz <himself@jonasgunz.de> 2020-06-07 22:48:17 +0200
commit1e26db53d594a6cc057b81116db5888527d19b0f (patch)
tree0a82d8c232eeebce1a276888f1245d7f45e0ecb4
parent9e7ca7538e2f96fda9cbdc126887afc8d7d15b11 (diff)
downloadltask-1e26db53d594a6cc057b81116db5888527d19b0f.tar.gz
Readme
-rw-r--r--Readme.md30
1 files changed, 27 insertions, 3 deletions
diff --git a/Readme.md b/Readme.md
index 6b23b7b..4957b43 100644
--- a/Readme.md
+++ b/Readme.md
@@ -9,13 +9,23 @@ lightweight remote task management
-H HOST Add HOST to target hosts. can be used
to target single hosts without defining
a custom target
+ -p Force parallel execution
-h print this help text
+## Output
+
+All output from targets is printed to `STDOUT`, prefixed by the hostname.
+This also includes text sent to `STDERR`, which is prefixed by `[ERR]`.
+Text is displayed "as it comes", not sorted by host.
+If required, this can be done afterwards with tools such as `grep`
+Status and error messages are printed to `STDERR`.
+In Linear execution mode, ltask displays a progress meter.
## How it works
-`ltask` executes scripts (`tasks`) on remote hosts and hostgroups (`targets`) vis SSH.
-Tasks can be written in sh or bash.
-Only the interpreter and an ssh-key accessible user account has to be set up on the target.
+`ltask` executes scripts (`tasks`) on remote hosts and hostgroups (`targets`) via SSH,
+either linearly if user input is required, or in parallel.
+Tasks and targets are written in bash, thus are very flexible.
+No special Software is required, neither on the host nor on the target.
### Tasks
@@ -34,6 +44,7 @@ Reference for environment variables
SSH_IDENTITY path to ssh-key used for authentification of specified user
FILES Array of Files to copy over before script invocation
INCLUDES Array of libraries to include
+ PARALLEL Enable parallel execution (true/[false])
# Available in setup
ASSET_DIR paht to folder where eg keys are stored
@@ -41,6 +52,8 @@ Reference for environment variables
Tasks are stored in `tasks/`
+[Example](tasks/example)
+
### Targets
Targets define hostgroups for tasks to target.
@@ -51,6 +64,17 @@ The port should only be specified if != 22 to avoid double mentions.
Targets are stored in `targets/`
+[Example](targets/example)
+
+### Libraries
+
+Libraries are scripts which are executed on the remote host before the main task.
+Their purpose is to define generic interfaces for different types of hosts.
+
+Libraries are stored in `libs/`
+
+[Example](libs/pkgmanager)
+
## License
This program is free software: you can redistribute it and/or modify