Version information
This version is compatible with:
- Puppet Enterprise 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
- Puppet >=2.7.20 <5.0.0
- , ,
Start using this module
Add this module to your Puppetfile:
mod 'razorsedge-openlldp', '1.0.0'
Learn more about managing modules with a PuppetfileDocumentation
Puppet Open-LLDP Module
master branch: develop branch:
Introduction
This module installs Open-LLDP. lldpad (LLDP Agent Daemon) is a GPL licensed implementation of the Link Layer Discovery Protocol for Linux.
Actions:
- Installs Open-LLDP (lldpad).
- Starts lldpad.
- Provides LLDP neighbor facts via facter (requires lldpad running and configured to at least receive LLDP frames on each Ethernet interface).
- Configures lldpad to receive and/or transmit LLDP frames via the included lldptool.
- Configures lldpad to transmit LLDP TLVs.
OS Support:
- RedHat family - tested on CentOS 6.3
- SuSE family - presently unsupported (patches welcome)
- Debian family - presently unsupported (patches welcome)
Class documentation is available via puppetdoc.
Examples
class { 'openlldp': }
# Configure lldpad to receive and transmit LLDP frames on the specific interface.
openlldp::config::lldp { 'eth0':
adminstatus => 'rxtx',
}
# Configure lldpad to transmit Basic LLDP TLVs.
# openlldp::config::lldp adminstatus has to be tx or rxtx for these to transmit.
openlldp::config::tlv { 'eth0':
portDesc => 'yes',
sysName => 'yes',
sysDesc => 'yes',
sysCap => 'yes',
mngAddr => 'yes',
}
Notes
- Open-LLDP talks about applying configurations globally by not specifying "-i ethX" to lldptool. This has not worked with the versions tested (0.9.43), thus a global configuration mode has not been built into the Puppet module.
- PVID TLV is not suported as a keyword with the versions tested (0.9.43), thus the code uses numerical values for all TLVs.
Issues
- None
TODO
- None
Contributing
Please see CONTRIBUTING.md for contribution information.
License
Please see LICENSE file.
Copyright
Copyright (C) 2012 Mike Arnold mike@razorsedge.org
2017-07-01 Michael Arnold github@razorsedge.org - 1.0.0
Michael Arnold github@razorsedge.org (17):
-
Now supporting Puppet 4.
-
Keep Puppet 2.7 support.
-
Pin rake below version 11 to keep Ruby 1.8 support.
-
The "pe" requirement is no longer supported by the Forge.
-
Add .vendor to .gitignore.
-
Pin gems to specific Ruby versions with modulesync.
-
Rename DEVELOP.md to CONTRIBUTING.md.
-
Update instructions in CONTRIBUTING.md.
-
Do not run variable_is_lowercase check.
-
Use Ruby 2.3.1 and remove puppet-lint-variable_contains_upcase with modulesync.
-
Remove puppet-lint no-variable_contains_upcase-check.
-
Constrain metadata-json-lint on Ruby 1.x with modulesync.
-
Remove Ruby 2.3.1 testing and add Puppet 5 testing with modulesync.
-
No longer accept failures in Puppet 4 testing with modulesync.
-
Remove no-variable_contains_upcase-check from .puppet-lint.rc.
-
Support STRICT_VARIABLES for Puppet 4.
-
Update versions for 1.0.0 release.
Mike Dorman mdorman@godaddy.com (1):
-
Correct grep pattern for determining get-lldp status
2016-01-20 Michael Arnold github@razorsedge.org - 0.3.0
Michael Arnold github@razorsedge.org (14):
-
Fix license and unbounded ranges in metadata.json.
-
Add .sync.yml to unmanage spec/spec_helper.rb.
-
Manage common files with modulesync.
-
Manage .puppet-lint.rc with modulesync.
-
Update rspec-puppet ~> 2.0 and metadata-json-lint >= 0.0.4 with modulesync.
-
Fix puppetlint rake task with modulesync.
-
Stick with rspec 2 for unit tests.
-
Get code ready for Puppet 4 via modulesync.
-
Lint: Remove check for mixed case variables.
-
Update Puppet 4 gem and support puppet_blacksmith with modulesync.
-
Update Geppetto .project.
-
Unit test against Puppet 4 via modulesync.
-
Now supporting Puppet 4.
-
Update versions for 0.3.0 release.
Zack Smith zack@puppetlabs.com (1):
-
Update fact for Facter 3 compatiblity
2014-09-17 Michael Arnold github@razorsedge.org - 0.2.1
Michael Arnold github@razorsedge.org (10):
- Update Geppetto .project to version 4.
- Update Modulefile summary to be more concise.
- Convert fixtures repositories to use https.
- Expand Puppet versions tested in Travis-CI.
- Update Modulefile source to use https.
- Allow tracking of metadata.json.
- Switch to using metadata.json vs Modulefile.
- Add copyright info to openlldp.rb.
- Improved docs.
- Update versions for 0.2.1 release.
2013-10-21 Michael Arnold github@razorsedge.org - 0.2.0
Michael Arnold github@razorsedge.org (6):
-
Expand Puppet versions tested in Travis-CI.
-
Rake validate to also check ERB for syntax errors.
-
Update tests/init.pp to pass puppet-lint.
-
Add contribution instructions to README.md.
-
Increase puppetlabs/stdlib dependency to 2.3.0.
-
Update versions for 0.2.0 release.
Joshua Hoblitt jhoblitt@cpan.org (3):
-
add path param to all exec statements
-
add Gemfile.lock to .gitignore ad# modified: .gitignore
-
update travis test matrix
Bill ONeill woneill@pobox.com (1):
-
Support PortID and PVID info from Nexus LLDP neighbors
2013-01-05 Michael Arnold github@razorsedge.org - 0.1.0
Michael Arnold github@razorsedge.org (25):
- Add shell version of facts.
- First attempt at ruby version of facts.
- Functional ruby version of facts.
- Improvements to facts.
- Standardize MAC address output.
- Rename fact: VLAN to PVID.
- Added defines to configure Open-LLDP.
- Fix the openlldp::config::lldp name.
- Add "include openlldp" to tests.
- Lint line-length in puppetdoc areas.
- Use stdlib 2.6.0 for testing.
- Added rspec tests for openlldp facts.
- Strip back validate_re 3rd arguement.
- Revert: Strip back validate_re 3rd arguement.
- Add :each to openlldp facts before block.
- Another attempt to appease Travis-CI fact failures.
- Yet another attempt to fix Travis-CI failures.
- One more attempt at fixing Travis-CI failures.
- Two more attempts at fixing Travis-CI failures.
- Three more attempts at fixing Travis-CI failures.
- Four more attempts at fixing Travis-CI failures.
- Update README, remove openlldp.sh from fact path.
- Five more attempts at fixing Travis-CI failures.
- Refactored facter rspec tests.
- Update versions for 0.1.0 release.
2012-12-12 Michael Arnold github@razorsedge.org - 0.0.1
Dependencies
- puppetlabs/stdlib (>=2.3.0 <5.0.0)
Copyright (C) 2012 Mike Arnold <mike@razorsedge.org> Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.