Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update table on transitioning to run_shell_cmd to also cover run_cmd_qa options #247

Merged
merged 3 commits into from
Apr 6, 2024
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 23 additions & 28 deletions docs/easybuild-v5/run_shell_cmd.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,34 +56,29 @@ Examples:
ec = res.code
```

## Transitioning from `run_cmd` to `run_shell_cmd`
## Transitioning from `run_cmd` and `run_cmd_qa` to `run_shell_cmd`

For parameters in general, the following translation table can be used, where the default values are shown:

| run_cmd parameter |run_shell_cmd parameter| meaning |
| ---------------------|-----------------------|---------|
| `cmd` | `cmd` | command to run |
| `log_all=False` | (removed) | always log command output and exit code *(now always `True`)* |
| `simple=False` | (removed) | if `True`, just return `True`/`False` to indicate success *(obsolete)* |
| `regexp=True` | (removed) | regex used to check the output for errors *(obsolete)* |
| `log_ok=True` | `fail_on_error=True` | fail on non-zero exit code |
| | `split_error=False` | split of stderr from stdout output *(new feature)*|
| `inp=None` | `stdin=None` | the input given to the command via `stdin` |
| | `env=None` | environment to use to run command (if `None`, inherit current process environment) *(new feature)* |
| `trace=True` | `hidden=False` | don't show command in terminal output with `--trace`, or `--extended-dry-run` / `-x`) |
| `force_in_dry_run=False`| `in_dry_run=False` | also run command in dry run mode |
| `verbose=True` | `verbose_dry_run=False` | show that command is run in dry run mode (overrules `--hidden`) |
| `path=None` | `work_dir=None` | working directory to run command in (current working directory if `None`) |
| `shell=None` | `use_bash=True` | execute command through bash shell (`run_cmd` enables this for `None`)|
| `log_output=False` | `output_file=True` | collect command output in temporary output file *(changed default)* |
| `stream_output=None` | `stream_output=None` | stream command output to stdout (auto-enabled with `--logtostdout` if `None`) |
| `asynchronous=False` | `asynchronous=False` | run command asynchronously (not yet implemented for `run_shell_cmd`)|
| `with_hooks=True` | `with_hooks=True` | trigger pre/post `run_cmd` or `run_shell_cmd` hooks |
| | `qa_patterns=None` | list of 2-tuples with patterns for questions + corresponding answers (not yet implemented for `run_shell_cmd`) |
| | `qa_wait_patterns=None`| list of 2-tuples with patterns for non-questions and number of iterations to allow these patterns to match with end out command output (not yet implemented for `run_shell_cmd`)|

## Transitioning from `run_cmd_qa` to `run_shell_cmd`

This is still to be implemented in `run_shell_cmd`.

...
| run_cmd / run_cmd_qa parameter | run_shell_cmd parameter | meaning |
| -------------------------------|-------------------------|---------|
| `cmd` | `cmd` | command to run |
| `log_all=False` | (removed) | always log command output and exit code *(now always `True`)* |
| `simple=False` | (removed) | if `True`, just return `True`/`False` to indicate success *(obsolete)* |
| `regexp=True` | (removed) | regex used to check the output for errors *(obsolete)* |
| `log_ok=True` | `fail_on_error=True` | fail on non-zero exit code |
| | `split_error=False` | split of stderr from stdout output *(new feature)*|
| `inp=None` | `stdin=None` | the input given to the command via `stdin` |
| | `env=None` | environment to use to run command (if `None`, inherit current process environment) *(new feature)* |
| `trace=True` | `hidden=False` | don't show command in terminal output with `--trace`, or `--extended-dry-run` / `-x`) |
| `force_in_dry_run=False` | `in_dry_run=False` | also run command in dry run mode |
| `verbose=True` | `verbose_dry_run=False` | show that command is run in dry run mode (overrules `--hidden`) |
| `path=None` | `work_dir=None` | working directory to run command in (current working directory if `None`) |
| `shell=None` | `use_bash=True` | execute command through bash shell (`run_cmd` enables this for `None`)|
| `log_output=False` | `output_file=True` | collect command output in temporary output file *(changed default)* |
| `stream_output=None` | `stream_output=None` | stream command output to stdout (auto-enabled with `--logtostdout` if `None`) |
| `asynchronous=False` | `asynchronous=False` | run command asynchronously (not yet implemented for `run_shell_cmd`)|
boegel marked this conversation as resolved.
Show resolved Hide resolved
| `with_hooks=True` | `with_hooks=True` | trigger pre/post `run_cmd` or `run_shell_cmd` hooks |
| `qa` and `std_qa=None` | `qa_patterns=None` | list of 2-tuples with patterns for questions + corresponding answers |
| `no_qa=None` | `qa_wait_patterns=None` | list of strings with patterns for non-questions |
| `maxhits=50` | `qa_timeout=100` | amount of seconds to wait until more output is produced when there is no matching question |
Loading