Yadtshell

Latest version: v1.9.1

Safety actively analyzes 682387 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

1.8.5

Changes in this release:

Bug fixes
- The prestart phase now works as intended when specific hosts are being updated only and there are complicated dependencies involved.
- The dump command now accepts arguments as intended.
- Not reaching the target_state is now an `ERROR` entry in the log if and only if this was the last try (and we are giving up).
If there are still tries remaining, it is a `WARNING` (as the yadtshell can compensate by retrying).
Previously it was always a `WARNING`.
- It is now possible to use various special characters (like Umlauts or ® for whatever reason) in lock messages.

Features
- For more convenience, the first error found in the log file (root cause) is now displayed before exiting the yadtshell.
- Information on the yadtshell process is now broadcasted for further use by a `yadtcontroller`.
The `yadtcontroller` can now display the host running its command, the log file path and the affected target.

Misc. improvements
- A warning is now displayed when host URIs from the command line are skipped (due to being unknown or unreachable).
- A warning is now displayed when service or artefact URIs are skipped (due to being invalid).
- The manpage was improved (especially the `unlock` section).
- The amount of stacktraces that might transpire to the user has been drastically reduced (still in debug log).
- The error message when no URIs from the command line remain (due to filtering) has been significantly improved (thanks schlomo !)

Full changelog

Run

bash
git log v1.8.4..v1.8.5

1.8.4

Changes in this release:

Bug fixes
- Some errors with a traceback will not be reported more than once anymore.

Features
- Now fetches status of missing service dependencies automatically. Those services are in a read-only state and may not be controlled directly but will satisfy services that depend on them. See the [wiki page](https://github.com/yadt/yadtshell/wiki/Metatargets%2C-Dependencies-and-Readonly-Servicesreadonly-services) for more information.

Misc. improvements
- There is now a warning when URIs given on the command line are ignored (read-only services and wildcards, for example)

Full changelog

Run

bash
git log v1.8.3..v1.8.4

1.8.3

Changes in this release:

Bug fixes
- Fixed a bug which could lead to wrong service resolution in some exotic edge cases (749b2d523d662f355708e0add252f9e719487411).
- Ignore messages with spaces now work as expected.

Features
- Now publishes meta-information (**error-info**) to a yadtcontroller in case of an error. This helps determine which yadt server executed the command, and where the log file can be found.
- Now displays messages for ignored services (just as locked hosts).
- New syntactic sugar while in an interactive session : `using TARGET` will switch to TARGET and fetch a status. See the manpage for more information.
- New command, `restart`. See the [wiki page](https://github.com/yadt/yadtshell/wiki/Command-Restart).

Misc. improvements
- Log file names can be copy-pasted without using any kind of shell escaping, even when tracking IDs are involved.
- Many internal refactorings and test coverage increases thanks to matey-jack .
- The manpage (`man yadtshell`) now includes a section on interactive sessions.
- New parameter, `session-id`, for automated locking/unlocking (see manpage for reference).

Full changelog

Run

bash
git log v1.7.1..v1.8.3

1.7.1

Changes in this release:

Bug fixes
- Corrected preconditions for actions concerning hosts with no pending updates, but needing a reboot.
- A target definition with only `includes` and an empty `hosts` section no longer leads to errors.
- Fixed a lockup that could occur when wildcards were used on a target where unreachable hosts
were found.
- Fixed a problem with the rendering of unreachable host URIs.
- There are no longer strange messages on stderr when using the yadtshell without a TTY.
- Error stacktraces have been moved to the debug log (which goes to a file) and removed from the terminal.

Features
- **Cycles in service definitions now lead to a human readable error message.**
- **Services are no longer prestarted when `update` is called with specific host URIs.**
For instance


update host://foo


might prestart the host _foo_ but not the host _bar_.
- **Services are now ordered according to their dependencies.**
A service that needs many services and is needed by few services will appear near the top, while services that need few services and are needed by many services will appear near the bottom. This sorting also applies to services shown by the yadtbroadcaster.
- **Minions can now configure a timeout that is suitable for rebooting.**
- **Targets can now include other targets.**
A target file with the keyword `includes` can be used to link other targets together.
- **The info matrix rendering is now terminal-size dependent**
When the yadtshell is used from a TTY, the rendering of the info matrix now takes into account the size of the terminal to compute the amount of columns.

Misc. improvements
- **The manpage has been improved and is now created with pandoc instead of ronn**
- **After rebooting a report is now shown.**
(time taken, etc)

Full changelog

Run

bash
git log v1.7.0..v1.7.1

1.7.0

Spotlight feature

The YADTshell can now orchestrate host reboots!

Changes in this release:

Bug fixes
- Actions that could not complete now correctly result in an error.
- Fixed an issue where services would fail to start when the host had no updates but the service needed to be restarted due to dependencies.

Features
- Hosts that run an outdated kernel or have pending artefacts which require a reboot are now automatically rebooted during the update phase (provided the `--reboot` flag is present and the host is handled).
- Status is now resilient against unreachable hosts, allowing you to continue working on the hosts that are still reachable.
- Now asks for confirmation before an update which induces one or more reboot(s), except when there is no TTY (use `-y` or `--forcedyes` to suppress this).
- `yadtshell status` is now performed after each mutation (like `stop` or `update`). Use `--no-final-status` to suppress this.
- Now only installs the updates that were found at the beginning of a transaction.
- `info` now displays reboot related information (reboot inducing artefact pending / old kernel running).
- SSH multiplexing and demultiplexing is now asynchronous.
- `init-yadtshell <target>` can now be used to switch to a target immediately, querying the status.
- YADT minion compatibility (pure python replacement of the old yadt-client).

Misc. improvements
- Now has a manpage, visit `man yadtshell` for more information.
- Improved error messages when an action on a component fails due to an abnormal exit code.
- `yadtshell dump` and `yadtshell info` no longer create log files.
- Suppressed warnings about changed SSH keys
- Lock message handling improvements
- New script to analyze dependencies in a target, produces DOT output
- Miscellaneous usability improvements

Links

Releases

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.