summaryrefslogtreecommitdiffstats
path: root/lib/puppet/provider/interface
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'community/feature/puppet-device' into 2.7.xPieter van de Bruggen2011-04-181-12/+6
| | | | Reviewed-By: Mike Stahnke
* Cisco Switch/Router Interface managementBrice Figureau2011-04-082-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces managing remotely cisco IOS network devices through ssh or telnet with a puppet type/provider. This patch allows to manage router/switch interface with the interface type: interface { "FastEthernet 0/1": device_url => "ssh://user:pass@cisco2960.domain.com/", mode => trunk, encapsulation => dot1q, trunk_allowed_vlans => "1-99,200,253", description => "to back bone router" } It is possible with this patch to set interface: * mode (access or trunk) * native vlan (only for access mode) * speed (auto or a given speed) * duplex (auto, half or full) * trunk encapsulation * allowed trunk vlan * ipv4 addresses * ipv6 addresses * etherchannel membership The interface name (at least for the cisco provider) can be any shorthand interface name a switch or router can use. The device url should conform to: * scheme: either telnet or ssh * user: can be absent depending on switch/router line config * pass: must be present * port: optional * an optional enable password can be mentioned in the url query string Ex: To connect to a switch with a line password and an enable password: "telnet://:letmein@cisco29224XL.domain.com/?enable=letmeinagain" To connect to a switch/router through ssh and a privileged user: "ssh://brice:letmein@cisco1841L.domain.com/" Note: This patch only includes a Cisco IOS provider. Also terminology adopted in the various types are mostly the ones used in Cisco devices. This patch was tested against: * (really old) Cisco switch 2924XL with ios 12.0(5)WC10 * Cisco router 1841 with ios 12.4(15)T8 * Cisco router 877 with ios 12.4(11)XJ4 * Cisco switch 2960G with ios 12.2(44)SE Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
* Removing all of the code related to the interface type.Luke Kanies2008-07-032-394/+0
|
* Doing what I can to fix #1128, but just in preparation for removing 'interface'.Luke Kanies2008-07-031-6/+17
| | | | | | | | | | This type needs to be started again from scratch, and I'm not going to do so for 0.24.5. In particular, the model for red hat and sunos need to match -- they should both use the device name as the actual name. Signed-off-by: Luke Kanies <luke@madstop.com>
* replacing tabs with spaces in the redhat interface providerLuke Kanies2008-02-271-65/+65
|
* Adding more tests to the redhat interface provider. It noLuke Kanies2007-11-231-18/+25
| | | | | longer uses the :target parameter (which I'll be removing in the next commit).
* Rewriting the sunos interface provider to manually parse andLuke Kanies2007-11-231-80/+98
| | | | | generate, rather than using ParsedFile. This should fix #777, and has from what I can tell.
* Adding unit tests for the sunos interface provider.Luke Kanies2007-11-231-2/+2
|
* Applying patch from #834, apparently fixing a problemLuke Kanies2007-11-201-1/+6
| | | | with bringing up alias interfaces.
* Fixing #762. The main problem was that I accepted the patchLuke Kanies2007-11-201-78/+66
| | | | | | in #744 which broke the templates. In the process, I also added test code for the redhat interface provider and rewrote how parsing worked to make it more testable.
* Removing the Id tags from all of the filesLuke Kanies2007-10-032-2/+0
|
* Constants in provider/interface/redhat.rb are getting redifined as they are ↵christian2007-08-091-13/+13
| | | | | | dynamically assigned, changing them to instance variables git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2762 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #751 -- the interface providers now have basic tests, at least to ↵luke2007-08-052-104/+131
| | | | | | verify that prefetching and listing works. I think these resource types need to be largely rewritten, though, and they currently have no relationship to ifconfig, which seems strange. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2747 980ebf18-57e1-0310-9a29-db15c13687c0
* Renaming the linux interface provider to redhatluke2007-08-031-46/+3
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2737 980ebf18-57e1-0310-9a29-db15c13687c0
* Applying patch by stick to the linux interface providerluke2007-08-031-2/+2
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2736 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding interface implementations, as written by Paul Roseluke2007-07-312-0/+383
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2732 980ebf18-57e1-0310-9a29-db15c13687c0