Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

RSS

iproute2 (10) Versions 2.0.1

Provides custom resources for iproute2 commands

Policyfile
Berkshelf
Knife
cookbook 'iproute2', '~> 2.0.1', :supermarket
cookbook 'iproute2', '~> 2.0.1'
knife supermarket install iproute2
knife supermarket download iproute2
README
Dependencies
Changelog
Quality 33%

iproute2 Cookbook

Build Status Cookbook Version

Provides custom resources for iproute commands

  • ip-netns
  • ip-link
  • ip-address
  • ip-route

todo

  • ip-tunnel

not planning to do anytime soon

| ip-rule | ip-xfrm | ip-maddress | ip-addrlabel | ip-l2tp | ip-monitor | ip-mroute(8) | ip-neighbour | ip-ntable | ip-tcp_metrics

Platforms

  • Debian/Ubuntu
  • RHEL/CentOS/Scientific/Amazon/Oracle
  • Fedora
  • OpenSUSE

Chef

  • Chef 12.7+

Recipes

Installs iproute package

Custom resources

ip-netns


Action :add (default)

ip_netns 'vpn' do
  action :add
end

Action :delete

ip_netns 'vpn' do
  action :delete
end

Ethernet interface

Action :add (default)
*Note Does :add and then :set

ip_link 'dumb0' do
  action :add
  type 'dummy'
  state 'down'
  netns 'vpn'
  mtu 900
  mac 'aa:bb:cc:00:11:22'
  alias_name 'i am alias of nsalias0'
  qlen 12345
  ip '1.1.1.1/28'
end

Action :set

ip_link 'dumb0' do
  action :set
  state 'down'
  netns 'vpn'
  mtu 900
  mac 'aa:bb:cc:00:11:22'
  alias_name 'i am alias of nsalias0'
  qlen 12345
  ip '1.1.1.1/28'  
end

Action :delete

ip_link 'nsdeltest0' do
  type 'dummy'
  netns 'vpn'
  state 'down'
  action :delete
end

Note: Parameter state 'down' downs the interface before removing

VLAN


Action :add (default)

ip_link 'vlan.200' do
  link 'nsvlan0'
  id 200
  type 'vlan'
  netns 'vlanns'
  mtu 1400
  mac 'aa:00:aa:00:aa:00'
  qlen 300
  alias_name 'i am vlan in netns'
  ip ['1.1.1.1/28', '2.2.2.2']
end

Action :delete

ip_link 'nsvlan.del0' do
action :add
netns 'vlanns'
link 'nsvlandel0'
type 'vlan'
state 'down'
id 200
alias_name 'i should exist in netns'
end

VETH PAIR


Action :add

Creates a pair of veth interfaces nsveth1 and nsveth2 and assigns them to appropriate netns

ip_link 'nsveth1' do
  type 'veth'
  peer 'nsveth2'
  netns 'aside'
  alias_name 'i am one end'
  ip Array.new(4) { |i| "169.254.0.#{i + 1}" }
end
ip_link 'nsveth2' do
  action :set
  type 'veth'
  netns 'zside'
  alias_name 'i am the other end'
end

Properties
* type: can be ..... <#todo>
* state: can be up or down, default is up
* netns: netns to which link should be in. make sure netns support is there.
* mtu: mtu
* mac: update mac. :warning: cookbook does not take care of restarting network or link :warning:
* alias_name: update alias name .. (alias is a reserved name so using alias_name)
* qlen: update qlen
* link: link on which vlan to be created. used with vlan type
* id: vlan id. used with vlan type
* peer: used with veth type
* ip: Add ip address(es) to the link

ip-addr


Action :add (default)

ip_addr 'eth0.100' do
  action :add
  ip ['1.1.1.1/32', '2.2.2.2/32']
end

Action :delete

ip_addr 'eth0.100' do
  action :add
  ip '2.2.2.2/32'
end

Action :flush

ip_addr 'eth0.100' do
  action :flush
end

Action :flush_and_set

ip_addr 'eth0.100' do
action :flush_and_set
ip '192.168.1.2/24'
end

ip-route


Action :add (default)

ip_route '10.12.12.0/24' do
  netns 'router'
  via '192.168.3.1'
  dev 'routetester0'
  metric 1234
  table 221
  src '192.168.3.1'
  realm  133
  mtu 9001
  mtu_lock true
  window 1024
  rtt '12s'
end

Dependent cookbooks

This cookbook has no specified dependencies.

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

iproute2 cookbook CHANGELOG

0.0.1

0.0.2

  • Karthik: basic ip link operations

0.0.3

  • Karthik: network namespace capability

0.1.0

  • Karthik: Update readme for ip-link and ip-netns

0.1.1

0.1.2

  • Karthik: update mac address test on all platforms

0.2.0

  • Karthik: all targetted ip link features

0.3.0

  • Karthik: ip link can create VLANs

0.4.0

  • Karthik: ip link can create veth pairs and associate to netns

0.4.1

0.4.2

1.0.0

  • Karthik: A fully working IP Addr and IP Link (vlan, netns)

1.0.1

1.0.2

  • Karthik: Chef guys removed property_is_set?

2.0.0

Collaborator Number Metric
            

2.0.1 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

2.0.1 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

2.0.1 passed this metric

No Binaries Metric
            

2.0.1 passed this metric

Testing File Metric
            

2.0.1 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

2.0.1 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number