NEW
---
- Added the following builtins:
__DATE__ # Date in YYYYMMDD format
__DATETIME__ # Date and time in YYYYMMDDHHMMSS format
__HOSTNAME__ # Full name of current host as passed to program
__HOSTNUM__ # Count of host being processed, starting at 1
__HOSTSHORT__ # Leftmost component of hostname as passed to program
__TIME__ # Time in HHMMSS format
- Added an "execution builtin". This runs a command of your
choosing (on the local machine) and assigns the results to
a user-defined variable.
- Added -E to redirect all stderr output to stdout instead,
- Added -T timeout option (default is 15 sec).
- Added -a to allow program to continue after file transfer error.
- Added -l logging option. Defaults to /dev/null. This fixes the error
that was previously being reported:
"No handlers could be found for logger "paramiko.transport"
CHANGES
-------
- Changed hostname separator from ':' to '-' when using the -G command.
- The <HOSTNAME> and <HOSTSHORT> builtins have been replaced
with the new builtins described above.
- Error messages now more consistent and clear.
BUG FIXES
---------
- Fixed bug that prevented the proper dereferencing of HOSTNAME
in file transfer specifications.
- Fixed bug that prevented '.define' variables from being substituted
in file transfer specifications.
- Fixed bug that only recognized sudo invocations if they were the
first statement on a command line. All instances of the string
"sudo " will now force sudo password prompting and processing.
That string is ignored if it appears inside single- or double quotes.
- Fixed bug that intermittently occurred during password-based auth
sessions because ssh-agent and key searching were still being used.
- Fixed error reporting blowout when key-exchange auth fails.
TODO
----
- Do testmode substitions.
- Note importance of giving variables distinctive names so they do
not accidentally get substituted.
- Make note that all cmdfiles are read in and THEN evaluated at *runtime*:
echo __HOSTNUM__
echo __HOSTNAME__
echo __HOSTSHORT__
.define __HOSTSHORT__ = ozzie
Runtime __HOSTSHORT__ == ozzie
- Write a new section on builtins. Note that they are evaluated
*locally* and are reevaluated for each new host being processed.
e.g., Timestamp will change with a big list of hosts.
Include material on execution variables.
- Add note about this being a *NIX, Python 2 only prog.
sudoers Mode
------------
- Capture bad password
- Capture failed command output
- Write the server noise, as it appears to stderr for debug purposes
- Note in docs: In this mode it will HANG waiting for interactive input.
- Note in docs: There is no separation between stdout and sterr in this mode