Skip to content

Tags: aakapoor/trigger

Tags

1.5.10

Toggle 1.5.10's commit message
Release 1.5.10 (trigger#281)

Bug Fixes
---------

- Extended prompt detection for IOS-like devices to include interstitial
  space (`\s`) or carriage return (`\r`) characters which is sometimes
  seen on Arista EOS devices, and would cause asynchronous execution to
  sometimes hang and result in a `~trigger.exceptions.CommandTimeout`
  error.
- Bugfix in `bin/load_acl` that prevents `queue.complete()` from being
  called when using the `--no-db` flag.  Previously, an `AttributeError`
  attribute error was raised due to attempting to call `complete` on
  `queue`, which is set to `None` when passing `--no-db`.
- Cleaned up network.utils.ping, removed hostname validation code
- Bugfix in `~trigger.utils.network.ping()` where a file descriptor
  wasn't closed cleanly.
- Bugfix in `bin/gnng` that printed device names before any tables,
  resulting in potentially confusing results.  Devices names are now
  printed with the corresponding table.
- Bugfix in `bin/gnng` that allows the `--filter-on-type` to function as
  expected.
- Update documentation of `gnng`'s `-N`/`--nonprod` flag.
- Bugfix in `bin/gnng` that allows `gnng` to fail gracefully when a
  device isn't found.
- Bugfix in `bin/gnng --all` that was causing many device vendors to be
  skipped entirely because the filter was too specific. This vendor
  filter has been removed and will now fallback to
  `~trigger.cmds.NetACLInfo()` internal knowledge of supported
  platforms.

1.5.9

Toggle 1.5.9's commit message
Release 1.5.9

Bug Fixes
---------

+ Bugfix in `~trigger.gorc` where init commands would be sent
  before a prompt was even available on the remote device.
+ Bugfix in `~trigger.utils.core.pretty_time()` where `pytz` was
  being referenced but not imported.
+ Extended prompt detection for IOS-like devices to include backspace
  characters (`\b` or `\x08`) which is sometimes seen on Cisco NX-OS
  devices, and would cause asynchronous execution to sometimes hang and
  result in a `~trigger.exceptions.CommandTimeout` error.
* Improved the internal grouping logic for `load_acl` to be more
  permissive and if grouping fails it will just not group devices.
* Fixed a bug that would prevent ACL staging from working when using
  default global settings.
* Fixed bugs in the default global callables for `get_current_oncall()`
  and `create_tm_ticket()` that would prevent `lod_acl` from working.
  They now default to a disabled state that does not require
  customization just to utilize core load_acl functionality.
* Updated the sample `settings.py` (`conf/trigger_settings.py`) to
  utilize the updated default callables.
* Fixed a bug in default global callable for `get_tftp_source()` to
  properly perform lookup of `settings.VIPS`
* Fixed a bug in default global callable for `stage_acls()` to
  properly perform lookup of `settings.FIREWALL_DIR` and
  `settings.TFTPROOT_DIR`.

1.5.8

Toggle 1.5.8's commit message
Release 1.5.8

Bug Fixes
---------

+ Bugfix in `~trigger.cmds.Commando` related to the addition of TextFSM
  support for parsing unstructured CLI output.

1.5.7

Toggle 1.5.7's commit message
Release 1.5.7

Enhancements
------------

- Added TextFSM parser to process unstructured CLI output.
- Added a new prompt pattern to `settings.CONTINUE_PROMPTS`.
- New continue prompts no longer need to be lower-cased.
- Clarified the error text when an enable password is required but not
  provided when connecting to a device to make it a little more clear on
  how to proceed.

Bug Fixes
---------

- Bugfix in `~trigger.contrib.commando.plugins.config_device` causing an
  unhandled `NameError`.
- Bugfix in `bin/gnng` that would cause a crash when using
  `--sqldb` or `--csv` output flags.

1.5.6

Toggle 1.5.6's commit message
Release 1.5.6

Bug Fixes
---------

* Added `-f/--force-cli` to `run_cmds` to allow CLI execution
  on Juniper devices or any vendor platform where API support is enabled
  by default, fixing an underlying bug where CLI output would result in a
  crash.
* Multiple commands can now be sent to Juniper devices w/ `run_cmds`.
* Updated the Juniper CLI prompt pattern to work when a hostname isn't set
  that would result in a `CommandTimeout` causing execution to fail.

1.5.5

Toggle 1.5.5's commit message
Release 1.5.5

Bug Fixes
---------

+ Bugfix in `~trigger.netdevices.NetDevices.match()` where keyword
  arguments were not properly filtering out devices that matched,
  sometimes resulting in a confusing union of matching devices.

1.5.4

Toggle 1.5.4's commit message
Release 1.5.4

Bug Fixes
---------

+ Bugfix when using `~trigger.netdevices.NetDevices.match()` to lookup
  devices by attribute/value, which will no longer result in a
  `KeyError` if any device is missing the desired attribute. This means
  that besides the minimum required attributes,
  `~trigger.netdevices.NetDevice` objects:

  - Are no longer required to have uniform attributes;
  - If an attribute does it exist it may have a value of `None`.

1.5.3

Toggle 1.5.3's commit message
Release 1.5.3

New Features
------------

+ Remote execution on Avocent console servers is now officially supported.
+ Example normalizer project added to the `examples` directory at the root of
  the repository.

Enhancements
------------

+ An identity test for `~trigger.netdevices.NetDevice` objects has been added
  that can be used to check whether a devices is a Cisco Nexus. You may utilize
  it by calling `.is_cisco_nexus()` on any `NetDevice` object.
+ Support for parsing interfaces on Cisco Nexus devices has been added.
+ A new global setting now defines what to do when a device object does not
  have a manufacturer defined (See: :setting:`FALLBACK_MANUFACTURER`) which
  defaults to the value `UNKNOWN`.
+ The `~trigger.twister` module is now PEP8-compliant.

Bug Fixes
---------

+ Fixed a bug where devices w/ mixed case names aren't properly detected by
  `~trigger.cmds.Commando` subclasses, since
  `~trigger.netdevices.NetDevices` normalizes the hostname on load.
+ Fixed a bug in `~trigger.changemgmt` so that Trigger can use the
  current version of `pytz`.
+ Fixed a bug where sending an enable password to a device in a low
  latency environment (sub 1 ms) would result in the password being sent before
  the password prompt is displayed by the device.
+ Pin Twisted version so that py2.6 unit tests succeed. (Twisted
  15.5.0 dropped support for Python 2.6)

1.5.2

Toggle 1.5.2's commit message
Release 1.5.2

New Features
------------

- `trigger.netdevices.NetDevices` can now be properly subclassed and
  extended.
- A disable paging command has been added for Citrix NetScaler devices.
- String patterns used for detecting continue prompts is now globally
  configurable. (See: settings.CONTINUE_PROMPTS)

Bug Fixes
---------

- Addressed an issue where the buffer storing results from a command
  was not properly cleared when output continued to be sent after the
  prompt was displayed.
- `bin/run_cmds` will now no longer hide errors when in `--verbose`
  mode.

1.5.1

Toggle 1.5.1's commit message
Relase 1.5.1

New Features
------------

- The SSH authentication order is now a configurable setting. Public key is now
  the last method by default, but this is now easily configured in settings.py
  using the new SSH_AUTHENTICATION_ORDER setting.
- The command_interval argument may now be passed to Commando and its
  subclasses. This allows you to specify a delay time in seconds to wait
  between sending commands to devices.

Enhancements
------------

- The example script the Trigger XMLRPC service has been improved to
  check the pid file and kill the existing twistd process by process id.