spec/plugins: return interface details and multiple IP addresses to runtime
authorDan Williams <dcbw@redhat.com>
Tue, 22 Nov 2016 17:32:35 +0000 (11:32 -0600)
committerDan Williams <dcbw@redhat.com>
Wed, 25 Jan 2017 17:31:18 +0000 (11:31 -0600)
commit06b397912bf4d3ad97119930de313339be02cecd
tree342a82af4cae5c6d12a1381748ea5d1c3c43a6e2
parentb89b56dc97777dba4d2cedb3966102ad84bfe128
spec/plugins: return interface details and multiple IP addresses to runtime

Updates the spec and plugins to return an array of interfaces and IP details
to the runtime including:

- interface names and MAC addresses configured by the plugin
- whether the interfaces are sandboxed (container/VM) or host (bridge, veth, etc)
- multiple IP addresses configured by IPAM and which interface they
have been assigned to

Returning interface details is useful for runtimes, as well as allowing
more flexible chaining of CNI plugins themselves.  For example, some
meta plugins may need to know the host-side interface to be able to
apply firewall or traffic shaping rules to the container.
14 files changed:
invoke/exec_test.go
invoke/raw_exec_test.go
ipam/ipam.go
ipam/ipam_test.go
skel/skel_test.go
types/020/types.go [new file with mode: 0644]
types/020/types_suite_test.go [new file with mode: 0644]
types/020/types_test.go [new file with mode: 0644]
types/current/types.go
types/current/types_suite_test.go
types/current/types_test.go
types/types.go
version/legacy_examples/examples.go
version/version.go