Issue 1:
From @mwarkentin on 2016-03-28T13:51:44Z

ISSUE TYPE

Feature Idea

COMPONENT NAME

homebrew

DESCRIPTION

It'd be nice if we could use the brew bundle command with ansible. Thoughts on if this should be a new module or included with the existing homebrew module?

brew bundle options:

$ brew bundle --help
brew bundle [-v|--verbose] [--file=<path>|--global]
brew bundle dump [--force] [--file=<path>|--global]
brew bundle cleanup [--force] [--file=<path>|--global]
brew bundle check [--file=<path>|--global]
brew bundle [--version]
brew bundle [-h|--help]

Usage:
Bundler for non-Ruby dependencies from Homebrew

brew bundle install or upgrade all dependencies in a Brewfile
brew bundle dump write all installed casks/formulae/taps into a Brewfile
brew bundle cleanup uninstall all dependencies not listed in a Brewfile
brew bundle check check if all dependencies are installed in a Brewfile

Options:
-v, --verbose print verbose output
--force uninstall dependencies or overwrite existing Brewfile
--file=<path> set Brewfile path
--global set Brewfile path to $HOME/.Brewfile
-h, --help show this help message and exit
--version show the version of homebrew-bundle

Copied from original issue: ansible/ansible-modules-extras#1921

Issue 2:
ISSUE TYPE

Bug Report

COMPONENT NAME

network/lldp.py

ANSIBLE VERSION

ansible 2.2.2.0
config file =
configured module search path = Default w/o overrides

CONFIGURATION

OS / ENVIRONMENT

SUMMARY

LLDP module fails with a 'str' object does not support item assignment in some cases. Occasionally when looping through the lldpctl output, it runs across duplicate variables. When it tries to assign the new variable a previously assigned name, it throws an exception. I was able to get around this by using a try except.

STEPS TO REPRODUCE

Full command output here for debugging:

https://gist.github.com/antonym/01e1663c8790c65063ba2d3177fd9457

Should be able to put that into a file, change up the module to cat that file out and you'll see the failure.

---
- name: Ensure LLDP started
service:
name: lldpd
state: started

- name: Gather LLDP facts about server
lldp:

EXPECTED RESULTS

Expected LLDP info to be captured.

ACTUAL RESULTS

An exception occurred during task execution. To see the full traceback, use -vvv. The error was: TypeError: 'str' object does not support item assignment

fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "module_stderr": "Traceback (most recent call last):\n File "/tmp/ansible_9j3yPm/ansible_module_lldp.py", line 94, in \n main()\n File "/tmp/ansible_9j3yPm/ansible_module_lldp.py", line 83, in main\n lldp_output = gather_lldp()\n File "/tmp/ansible_9j3yPm/ansible_module_lldp.py", line 76, in gather_lldp\n current_dict[final] = value\nTypeError: 'str' object does not support item assignment\n", "module_stdout": "", "msg": "MODULE FAILURE"}

root@localhost:~# lldpctl -f keyvalue
lldp.eno1.via=LLDP
lldp.eno1.rid=2
lldp.eno1.age=0 day, 03:33:53
lldp.eno1.chassis.mac=54:7f:ee:a5:79:6c
lldp.eno1.chassis.name=servers-lab-1.sat6
lldp.eno1.chassis.descr=Cisco Nexus Operating System (NX-OS) Software 6.0(2)U5(1)
TAC support: http://www.cisco.com/tac
Copyright (c) 2002-2015, Cisco Systems, Inc. All rights reserved.
lldp.eno1.chassis.mgmt-ip=10.127.5.250
lldp.eno1.chassis.Bridge.enabled=on
lldp.eno1.chassis.Router.enabled=on
lldp.eno1.port.ifname=Ethernet1/5
lldp.eno1.port.descr=Ethernet1/5
lldp.eno1.vlan.vlan-id=906
lldp.eno1.vlan.pvid=yes
lldp.eno1.unknown-tlvs.unknown-tlv.oui=00,01,42
lldp.eno1.unknown-tlvs.unknown-tlv.subtype=1
lldp.eno1.unknown-tlvs.unknown-tlv.len=1
lldp.eno1.unknown-tlvs.unknown-tlv=01
lldp.eno1.unknown-tlvs.unknown-tlv.oui=00,01,42 <- fails parsing this line because four lines up, same variable