plugins.git
9 years agoMerge pull request #99 from kinvolk/alban/dns-config
Stefan Junker [Wed, 27 Jan 2016 07:49:16 +0000 (08:49 +0100)]
Merge pull request #99 from kinvolk/alban/dns-config

*: add "dns" field to the configuration

9 years ago*: add "dns" field to the configuration
Alban Crequy [Tue, 26 Jan 2016 17:54:56 +0000 (18:54 +0100)]
*: add "dns" field to the configuration

appc/cni#76 added a "dns" field in the result JSON. But before this
patch, the plugins had no way of knowing which name server to return.

There could be two ways of knowing which name server to return:
1. add it as an extra argument ("CNI_ARGS")
2. add it in the network configuration as a convenience (received via
   stdin)

I chose the second way because it is easier. In the case of rkt, it
means the user could just add the DNS name servers in
/etc/rkt/net.d/mynetwork.conf.

9 years agoMerge pull request #98 from apcera/remove-addif
Jonathan Boulle [Fri, 22 Jan 2016 19:33:22 +0000 (20:33 +0100)]
Merge pull request #98 from apcera/remove-addif

spec: Removed reference to unsupported addIf attribute

9 years agospec: Removed reference to unsupported addIf attribute
Ken Robertson [Fri, 22 Jan 2016 17:36:03 +0000 (09:36 -0800)]
spec: Removed reference to unsupported addIf attribute

Removes the "addIf" attribute from the example of a bridge network
definition. This doesn't appear to exist in the implementation.

10 years agoMerge pull request #92 from ChengTiesheng/patch-1
Jonathan Boulle [Wed, 6 Jan 2016 17:08:25 +0000 (18:08 +0100)]
Merge pull request #92 from ChengTiesheng/patch-1

Update README.md

10 years agoUpdate README.md
Tiesheng [Wed, 6 Jan 2016 08:25:02 +0000 (16:25 +0800)]
Update README.md

Highlight bash/shell code in markdown for readability.

Signed-off-by: chengtiesheng <chengtiesheng@huawei.com>
10 years agoMerge pull request #91 from tomdee/patch-1
Stefan Junker [Tue, 5 Jan 2016 08:05:09 +0000 (09:05 +0100)]
Merge pull request #91 from tomdee/patch-1

Fix docker example in README.md

10 years agoUpdate README.md
Tom Denham [Tue, 5 Jan 2016 01:06:30 +0000 (17:06 -0800)]
Update README.md

No need for full path to ifconfig (and the given path doesn't work...)

10 years agoMerge pull request #90 from dgonyeo/master
Jonathan Boulle [Wed, 16 Dec 2015 21:46:05 +0000 (22:46 +0100)]
Merge pull request #90 from dgonyeo/master

pkg/ip: fix typo in error message, s/iptabes/iptables/

10 years agopkg/ip: fix typo in error message, s/iptabes/iptables/
Derek Gonyeo [Wed, 16 Dec 2015 21:20:19 +0000 (13:20 -0800)]
pkg/ip: fix typo in error message, s/iptabes/iptables/

10 years agoMerge pull request #80 from eyakubovich/add-version
Eugene Yakubovich [Wed, 9 Dec 2015 21:59:47 +0000 (13:59 -0800)]
Merge pull request #80 from eyakubovich/add-version

spec: add cniVersion to results and config

10 years agospec: add cniVersion to results and config
Eugene Yakubovich [Tue, 17 Nov 2015 00:07:15 +0000 (16:07 -0800)]
spec: add cniVersion to results and config

Version all artifacts using semantic versioning
so that plugins and container runtimes coded against
different versions of the spec can interoperate.

Fixes #44

10 years agoMerge pull request #78 from steveeJ/improve-errormsg-missing-subnet
Stefan Junker [Mon, 30 Nov 2015 19:56:25 +0000 (20:56 +0100)]
Merge pull request #78 from steveeJ/improve-errormsg-missing-subnet

host-local: detect missing subnet and error out

10 years agohost-local: detect missing subnet and error out
Stefan Junker [Thu, 12 Nov 2015 19:00:48 +0000 (20:00 +0100)]
host-local: detect missing subnet and error out

10 years agoMerge pull request #82 from steveeJ/dhcp-linkfix
Eugene Yakubovich [Fri, 20 Nov 2015 20:18:18 +0000 (12:18 -0800)]
Merge pull request #82 from steveeJ/dhcp-linkfix

dhcp: detect if link is down and attempt to set up

10 years agodhcp: detect if link is down and attempt to set up
Stefan Junker [Thu, 19 Nov 2015 10:08:04 +0000 (11:08 +0100)]
dhcp: detect if link is down and attempt to set up

With this we still get the "network is down" error, but after the 2nd
retry the interface is up and the dhcp request works.

10 years agoMerge pull request #76 from eyakubovich/dns
Eugene Yakubovich [Wed, 11 Nov 2015 00:59:31 +0000 (16:59 -0800)]
Merge pull request #76 from eyakubovich/dns

spec: add "dns" field to the result JSON

10 years agospec: add "dns" field to the result JSON
Eugene Yakubovich [Wed, 4 Nov 2015 19:31:35 +0000 (11:31 -0800)]
spec: add "dns" field to the result JSON

This adds an ability for networks to communicate
about the DNS nameservers they know about to the
container runtime.

Fixes #67

10 years agoMerge pull request #73 from eyakubovich/flannel-fix
Eugene Yakubovich [Thu, 8 Oct 2015 01:03:54 +0000 (18:03 -0700)]
Merge pull request #73 from eyakubovich/flannel-fix

flannel: doc fix and check for missing subnet.env fields

10 years agoflannel: doc fix and check for missing subnet.env fields
Eugene Yakubovich [Wed, 7 Oct 2015 22:11:54 +0000 (15:11 -0700)]
flannel: doc fix and check for missing subnet.env fields

- Document that flannel outputs FLANNEL_NETWORK b/c we use it
- Check and error out if expecited fields are missing in subnetEnv file

Fixes #72

10 years agoMerge pull request #71 from jonboulle/master
Michael Bridgen [Mon, 5 Oct 2015 11:10:56 +0000 (12:10 +0100)]
Merge pull request #71 from jonboulle/master

README/CONTRIBUTING: mention cni-dev@ list

10 years agoREADME/CONTRIBUTING: mention cni-dev@ list
Jonathan Boulle [Thu, 1 Oct 2015 19:43:43 +0000 (12:43 -0700)]
README/CONTRIBUTING: mention cni-dev@ list

10 years agoMerge pull request #69 from eyakubovich/err-msgs
Eugene Yakubovich [Wed, 30 Sep 2015 18:56:56 +0000 (11:56 -0700)]
Merge pull request #69 from eyakubovich/err-msgs

Route del would fail due to wrong scope; better errors

10 years agoMerge pull request #70 from eyakubovich/copyright
Eugene Yakubovich [Wed, 30 Sep 2015 18:03:46 +0000 (11:03 -0700)]
Merge pull request #70 from eyakubovich/copyright

Change copyright from CoreOS to CNI authors

10 years agoChange copyright from CoreOS to CNI authors
Eugene Yakubovich [Tue, 29 Sep 2015 18:51:33 +0000 (11:51 -0700)]
Change copyright from CoreOS to CNI authors

CNI is developed by more than just CoreOS, Inc
and the copyright is retained by all CNI
contributors (for their respective contributed code).

10 years agoRoute del would fail due to wrong scope; better errors
Eugene Yakubovich [Tue, 29 Sep 2015 18:27:49 +0000 (11:27 -0700)]
Route del would fail due to wrong scope; better errors

In some cases the route deletion would fail due to wrong
scope. It should be NOWHERE when deleting (per iproute2).
This also adds more verbose error messages.

10 years agoMerge pull request #65 from steveeJ/fix-veth-setup
Stefan Junker [Thu, 24 Sep 2015 19:53:54 +0000 (21:53 +0200)]
Merge pull request #65 from steveeJ/fix-veth-setup

Fix veth setup

Fixes #61 #64

10 years agolink: switch to host netns to set up host veth end
Stefan Junker [Thu, 24 Sep 2015 16:27:41 +0000 (18:27 +0200)]
link: switch to host netns to set up host veth end

10 years agoRevert "plugins/ptp: allow host veth to be UP"
Stefan Junker [Thu, 24 Sep 2015 16:28:14 +0000 (18:28 +0200)]
Revert "plugins/ptp: allow host veth to be UP"

This reverts commit 231d2d5a27f3ba54219c3f0b1c8ef2c5dab4faaf.

10 years agoMerge pull request #63 from steveeJ/no-host-local-ptp
Stefan Junker [Thu, 24 Sep 2015 11:10:47 +0000 (13:10 +0200)]
Merge pull request #63 from steveeJ/no-host-local-ptp

Merge host-local and host-local-ptp

10 years agoplugins/ptp: allow host veth to be UP
Stefan Junker [Wed, 23 Sep 2015 09:03:22 +0000 (11:03 +0200)]
plugins/ptp: allow host veth to be UP

10 years agoupdate ptp docs to reflect changes in plugin
Stefan Junker [Wed, 23 Sep 2015 20:11:25 +0000 (22:11 +0200)]
update ptp docs to reflect changes in plugin

10 years agoremove host-local-ptp plugin
Eugene Yakubovich [Thu, 17 Sep 2015 21:56:13 +0000 (14:56 -0700)]
remove host-local-ptp plugin

10 years agoUse single IP on the host for ptp veths
Eugene Yakubovich [Thu, 17 Sep 2015 18:49:21 +0000 (11:49 -0700)]
Use single IP on the host for ptp veths

Instead of allocating a /31 for each container,
use the same IP on the host side for all veths.
This is very similar how real point-to-point
devices work (using donor IPs).

10 years agorevendoring netlink
Eugene Yakubovich [Thu, 17 Sep 2015 18:51:14 +0000 (11:51 -0700)]
revendoring netlink

10 years agoMerge pull request #60 from eyakubovich/fix-plugin-del
Michael Bridgen [Tue, 22 Sep 2015 15:39:59 +0000 (16:39 +0100)]
Merge pull request #60 from eyakubovich/fix-plugin-del

bug fix: exec of DEL cmd caused JSON decode error

10 years agobug fix: exec of DEL cmd caused JSON decode error
Eugene Yakubovich [Fri, 18 Sep 2015 17:30:10 +0000 (10:30 -0700)]
bug fix: exec of DEL cmd caused JSON decode error

When plugin is executed with a DEL command, it does not
print result to stdout unless there is an error. Therefore
it stdout bytes should not be passed to json.Unmarshal.

10 years agoMerge pull request #59 from squaremo/factor-out-libcni
Michael Bridgen [Wed, 16 Sep 2015 23:06:54 +0000 (00:06 +0100)]
Merge pull request #59 from squaremo/factor-out-libcni

Factor an API out into a module

10 years agoFactor an API out into a module
Michael Bridgen [Fri, 7 Aug 2015 15:27:52 +0000 (16:27 +0100)]
Factor an API out into a module

This takes some of the machinery from CNI and from the rkt networking
code, and turns it into a library that can be linked into go apps.

Included is an example command-line application that uses the library,
called `cnitool`.

Other headline changes:

 * Plugin exec'ing is factored out

The motivation here is to factor out the protocol for invoking
plugins. To that end, a generalisation of the code from api.go and
pkg/plugin/ipam.go goes into pkg/invoke/exec.go.

 * Move argument-handling and conf-loading into public API

The fact that the arguments get turned into an environment for the
plugin is incidental to the API; so, provide a way of supplying them
as a struct or saying "just use the same arguments as I got" (the
latter is for IPAM plugins).

10 years agoMerge pull request #58 from steveeJ/remove-ipmasq-ifneedbe
Stefan Junker [Thu, 10 Sep 2015 20:08:57 +0000 (22:08 +0200)]
Merge pull request #58 from steveeJ/remove-ipmasq-ifneedbe

ipvlan/macvlan: remove ipMasq related code

10 years agoipvlan/macvlan: remove ipMasq related code
Stefan Junker [Wed, 9 Sep 2015 12:02:51 +0000 (14:02 +0200)]
ipvlan/macvlan: remove ipMasq related code

Luckily the docs haven't mentioned support for ipMasq for both plugins so far.
Even if anyone has attempted to enable the feature in their configuration files it didn't have the desired effect for the network.

10 years agoMerge pull request #57 from eyakubovich/maintainers
Stefan Junker [Wed, 9 Sep 2015 10:05:35 +0000 (12:05 +0200)]
Merge pull request #57 from eyakubovich/maintainers

Add MAINTAINERS file

10 years agoAdd MAINTAINERS file
Eugene Yakubovich [Tue, 8 Sep 2015 22:34:59 +0000 (15:34 -0700)]
Add MAINTAINERS file

10 years agoMerge pull request #53 from NeilW/master
Jonathan Boulle [Tue, 8 Sep 2015 21:26:11 +0000 (14:26 -0700)]
Merge pull request #53 from NeilW/master

IPAM plugin: improve error messages

10 years agoplugin/ipam: correct formatting of error message
Neil Wilson [Tue, 8 Sep 2015 03:20:11 +0000 (03:20 +0000)]
plugin/ipam: correct formatting of error message

10 years agoIPAM plugin: improve error messages
Neil Wilson [Mon, 7 Sep 2015 15:15:23 +0000 (15:15 +0000)]
IPAM plugin: improve error messages

Make it more clear that we failed to find an IPAM plugin.
Check for a missing plugin name and issue a more helpful error.

10 years agoMerge pull request #55 from jonboulle/travis
Jonathan Boulle [Mon, 7 Sep 2015 23:28:35 +0000 (16:28 -0700)]
Merge pull request #55 from jonboulle/travis

*: add basic test script + travis hook

10 years ago*: add basic test script + travis hook
Jonathan Boulle [Mon, 7 Sep 2015 23:15:18 +0000 (16:15 -0700)]
*: add basic test script + travis hook

Adds a simple test script, mostly to perform gofmt and govet checking;
currently tests only exist for the DHCP plugin.

10 years agoMerge pull request #54 from jonboulle/master
Stefan Junker [Mon, 7 Sep 2015 22:49:28 +0000 (00:49 +0200)]
Merge pull request #54 from jonboulle/master

plugin/ipam: fix typo in error message

10 years agoplugin/ipam: fix typo in error message
Jonathan Boulle [Mon, 7 Sep 2015 22:43:34 +0000 (15:43 -0700)]
plugin/ipam: fix typo in error message

10 years agoMerge pull request #51 from steveeJ/plugins-args
Stefan Junker [Sat, 5 Sep 2015 17:00:53 +0000 (19:00 +0200)]
Merge pull request #51 from steveeJ/plugins-args

CNI_ARGS: use ';' to split args as documented

10 years agoCNI_ARGS: use ';' to split args as documented
Stefan Junker [Sat, 5 Sep 2015 16:58:58 +0000 (18:58 +0200)]
CNI_ARGS: use ';' to split args as documented

10 years agoMerge pull request #42 from steveeJ/plugins-args
Stefan Junker [Thu, 3 Sep 2015 23:42:11 +0000 (01:42 +0200)]
Merge pull request #42 from steveeJ/plugins-args

host-local: allow ip request via CNI_ARGS

10 years agohost-local: allow ip request via CNI_ARGS
Stefan Junker [Sun, 16 Aug 2015 00:30:04 +0000 (02:30 +0200)]
host-local: allow ip request via CNI_ARGS

A specific IP can now be requested via the environment variable CNI_ARGS, e.g.
`CNI_ARGS=ip=1.2.3.4`.
The plugin will try to reserve the specified IP.
If this is not successful the execution will fail.

10 years agoMerge pull request #49 from eyakubovich/dco
Eugene Yakubovich [Wed, 2 Sep 2015 18:01:42 +0000 (11:01 -0700)]
Merge pull request #49 from eyakubovich/dco

Add DCO and CONTRIBUTING.md

10 years agoAdd DCO and CONTRIBUTING.md
Eugene Yakubovich [Wed, 2 Sep 2015 18:00:27 +0000 (11:00 -0700)]
Add DCO and CONTRIBUTING.md

10 years agoMerge pull request #43 from alexwlchan/master
Jonathan Boulle [Thu, 20 Aug 2015 16:17:56 +0000 (09:17 -0700)]
Merge pull request #43 from alexwlchan/master

Fix a few spelling mistakes in the docs

10 years agoFix a few spelling mistakes in the docs
Alex Chan [Thu, 20 Aug 2015 15:41:25 +0000 (16:41 +0100)]
Fix a few spelling mistakes in the docs

10 years agoMerge pull request #41 from eyakubovich/flannel-route
Eugene Yakubovich [Sat, 15 Aug 2015 23:28:09 +0000 (16:28 -0700)]
Merge pull request #41 from eyakubovich/flannel-route

flannel: set up route for the entire flannel network

10 years agoflannel: set up route for the entire flannel network
Eugene Yakubovich [Mon, 10 Aug 2015 21:13:06 +0000 (14:13 -0700)]
flannel: set up route for the entire flannel network

Without it, packets leave via default route iface
and come back via interface added by flannel plugin.
If rp_filter=1, the packets are dropped.

10 years agoMerge pull request #37 from steveeJ/fix-docs
Jonathan Boulle [Mon, 3 Aug 2015 22:12:07 +0000 (15:12 -0700)]
Merge pull request #37 from steveeJ/fix-docs

host-local: fix routes in README examples

10 years agohost-local: fix routes in README examples
Stefan Junker [Mon, 3 Aug 2015 13:37:14 +0000 (15:37 +0200)]
host-local: fix routes in README examples

10 years agoMerge pull request #34 from eyakubovich/document-plugins
Eugene Yakubovich [Wed, 22 Jul 2015 16:02:39 +0000 (09:02 -0700)]
Merge pull request #34 from eyakubovich/document-plugins

Document the plugins

10 years agoMerge pull request #33 from eyakubovich/veth-to-ptp-rename
Eugene Yakubovich [Wed, 22 Jul 2015 00:20:37 +0000 (17:20 -0700)]
Merge pull request #33 from eyakubovich/veth-to-ptp-rename

Rename veth plugin to ptp and add docs.

10 years agoRename veth plugin to ptp and add docs.
Eugene Yakubovich [Fri, 10 Jul 2015 19:18:25 +0000 (12:18 -0700)]
Rename veth plugin to ptp and add docs.

ptp (point-to-point) better describes the nature of the plugin
as veth pairs are also used by the bridge plugin.

10 years agoDocument the plugins
Eugene Yakubovich [Fri, 10 Jul 2015 19:48:36 +0000 (12:48 -0700)]
Document the plugins

Adds a .md file to the Documentation/ folder for each plugin.

Fixes #16

10 years agoMerge pull request #35 from eyakubovich/ip_forward
Eugene Yakubovich [Wed, 22 Jul 2015 00:12:04 +0000 (17:12 -0700)]
Merge pull request #35 from eyakubovich/ip_forward

enable net.ipv4.ip_forward in plugins that need it

10 years agoMerge pull request #29 from eyakubovich/spec-fmt-fixes
Eugene Yakubovich [Fri, 17 Jul 2015 03:18:33 +0000 (20:18 -0700)]
Merge pull request #29 from eyakubovich/spec-fmt-fixes

spec: fix fmt issues and example JSON

10 years agoMerge pull request #32 from eyakubovich/ipvlan-fix
Eugene Yakubovich [Wed, 15 Jul 2015 17:25:07 +0000 (10:25 -0700)]
Merge pull request #32 from eyakubovich/ipvlan-fix

ipvlan: wrong name was used during link creation

10 years agoenable net.ipv4.ip_forward in plugins that need it
Eugene Yakubovich [Mon, 13 Jul 2015 22:41:02 +0000 (15:41 -0700)]
enable net.ipv4.ip_forward in plugins that need it

10 years agoipvlan: wrong name was used during link creation
Eugene Yakubovich [Fri, 10 Jul 2015 21:02:32 +0000 (14:02 -0700)]
ipvlan: wrong name was used during link creation

Instead of temp (random) name, the final name (e.g. eth0)
was used during link creation. This would collide on hosts
that already had the an interface with such a name.

10 years agoMerge pull request #30 from zenlinTechnofreak/master
Jonathan Boulle [Wed, 8 Jul 2015 19:18:54 +0000 (12:18 -0700)]
Merge pull request #30 from zenlinTechnofreak/master

Fix environment bug,version of golang should be 1.4+, add reminding i…

10 years agoFix environment bug,version of golang should be 1.4+, add reminding in Readme.md
zenlin [Tue, 7 Jul 2015 05:08:32 +0000 (13:08 +0800)]
Fix environment bug,version of golang should be 1.4+, add reminding in Readme.md

10 years agospec: fix fmt issues and example JSON
Eugene Yakubovich [Tue, 7 Jul 2015 00:00:57 +0000 (17:00 -0700)]
spec: fix fmt issues and example JSON

10 years agoMerge pull request #22 from eyakubovich/netns-err
Eugene Yakubovich [Mon, 15 Jun 2015 23:08:01 +0000 (16:08 -0700)]
Merge pull request #22 from eyakubovich/netns-err

dhcp: don't swallow err from netns switch

10 years agodhcp: don't swallow err from netns switch
Eugene Yakubovich [Mon, 15 Jun 2015 18:32:33 +0000 (11:32 -0700)]
dhcp: don't swallow err from netns switch

10 years agoMerge pull request #24 from eyakubovich/dhcp-abs-path
Eugene Yakubovich [Mon, 15 Jun 2015 19:46:40 +0000 (12:46 -0700)]
Merge pull request #24 from eyakubovich/dhcp-abs-path

dhcp: make netns path absolute prior to RPC

10 years agoMerge pull request #25 from eyakubovich/dhcp-timeout
Eugene Yakubovich [Mon, 15 Jun 2015 19:45:09 +0000 (12:45 -0700)]
Merge pull request #25 from eyakubovich/dhcp-timeout

dhcp: decrease read timeout and clamp backoff

10 years agodhcp: make netns path absolute prior to RPC
Eugene Yakubovich [Mon, 15 Jun 2015 19:31:07 +0000 (12:31 -0700)]
dhcp: make netns path absolute prior to RPC

The dhcp daemon may be running with a different cwd
and so the netns paths need to be absolute. This patch
also refactors the code to pull out the common, RPC
parts, out into a separate function.

10 years agodhcp: decrease read timeout and clamp backoff
Eugene Yakubovich [Mon, 15 Jun 2015 19:40:34 +0000 (12:40 -0700)]
dhcp: decrease read timeout and clamp backoff

10 years agoMerge pull request #21 from eyakubovich/no-path-rewrite
Eugene Yakubovich [Fri, 12 Jun 2015 23:29:58 +0000 (16:29 -0700)]
Merge pull request #21 from eyakubovich/no-path-rewrite

No more path rewriting

10 years agoNo more path rewriting
Eugene Yakubovich [Fri, 12 Jun 2015 19:15:11 +0000 (12:15 -0700)]
No more path rewriting

Path rewriting causes too many problems when vendoring
vendored code. When CNI code is vendored into rkt,
godep has problems code already vendored by CNI.

10 years agoMerge pull request #20 from eyakubovich/flannel
Eugene Yakubovich [Thu, 11 Jun 2015 22:39:53 +0000 (15:39 -0700)]
Merge pull request #20 from eyakubovich/flannel

add flannel plugin

10 years agoadd flannel plugin
Eugene Yakubovich [Mon, 1 Jun 2015 23:58:43 +0000 (16:58 -0700)]
add flannel plugin

This introduces a notion of a "meta" plugin. A meta plugin
is one that delegates the actual work of setting up the interface
to the main plugin. The meta plugin is used to select and dynamically
configure the main plugin. The sequence of events, is as follows:

Given netconf like:

    {
"name": "mynet",
"type": "flannel",
"delegate": {
    "type": "bridge"
}
    }

flannel fills in values like "mtu", "ipam.subnet" and delegates to
"bridge" main plugin. "bridge" plugin will operate as usual, calling
into ipam module for IP assignment.

Delegate dictionary should not contain "name" field as it will be
filled in by the flannel plugin.

10 years agoMerge pull request #19 from eyakubovich/err-handling
Jonathan Boulle [Thu, 11 Jun 2015 17:37:37 +0000 (10:37 -0700)]
Merge pull request #19 from eyakubovich/err-handling

Propagate json error object to the caller

10 years agoPropagate json error object to the caller
Eugene Yakubovich [Tue, 2 Jun 2015 00:34:00 +0000 (17:34 -0700)]
Propagate json error object to the caller

When plugin errors out, it prints out a JSON object to stdout
describing the failure. This object needs to be propagated out
through the plugins and to the container runtime. This change
also adds Print method to both the result and error structs
for easy serialization to stdout.

10 years agoMerge pull request #13 from eyakubovich/dhcp
Eugene Yakubovich [Fri, 22 May 2015 01:18:58 +0000 (18:18 -0700)]
Merge pull request #13 from eyakubovich/dhcp

DHCP plugin

10 years agoadd DHCP IPAM plugin
Eugene Yakubovich [Tue, 19 May 2015 19:02:41 +0000 (12:02 -0700)]
add DHCP IPAM plugin

The plugin binary actually functions in two modes. The first mode
is a regular CNI plugin. The second mode (when stared with "daemon" arg)
runs a DHCP client daemon. When executed as a CNI plugin, it issues
an RPC request to the daemon for actual processing. The daemon is
required since a DHCP lease needs to be maintained by periodically
renewing it. One instance of the daemon can server arbitrary number
of containers/leases.

10 years agomacvlan and ipvlan: rename tmp iface name prior to calling IPAM
Eugene Yakubovich [Tue, 19 May 2015 18:55:06 +0000 (11:55 -0700)]
macvlan and ipvlan: rename tmp iface name prior to calling IPAM

10 years agofix bridge to call IPAM after link creation
Eugene Yakubovich [Tue, 19 May 2015 18:53:41 +0000 (11:53 -0700)]
fix bridge to call IPAM after link creation

10 years agovendoring sys/unix, go-systemd, dhcp libraries
Eugene Yakubovich [Tue, 19 May 2015 18:49:13 +0000 (11:49 -0700)]
vendoring sys/unix, go-systemd, dhcp libraries

10 years agoMerge pull request #12 from eyakubovich/git-ignore
Eugene Yakubovich [Mon, 11 May 2015 19:18:08 +0000 (12:18 -0700)]
Merge pull request #12 from eyakubovich/git-ignore

adding .gitignore

10 years agoadding .gitignore
Eugene Yakubovich [Mon, 11 May 2015 18:12:24 +0000 (11:12 -0700)]
adding .gitignore

10 years agoMerge pull request #9 from eyakubovich/errors
Eugene Yakubovich [Fri, 8 May 2015 22:08:03 +0000 (15:08 -0700)]
Merge pull request #9 from eyakubovich/errors

report errors via JSON

10 years agoreport errors via JSON
Eugene Yakubovich [Thu, 30 Apr 2015 00:52:41 +0000 (17:52 -0700)]
report errors via JSON

This reflects the latest SPEC draft.

10 years agoMerge pull request #11 from eyakubovich/nspath
Eugene Yakubovich [Fri, 8 May 2015 22:02:56 +0000 (15:02 -0700)]
Merge pull request #11 from eyakubovich/nspath

Do not use netns as ID or for entropy

10 years agoDo not use netns as ID or for entropy
Eugene Yakubovich [Tue, 5 May 2015 20:35:20 +0000 (13:35 -0700)]
Do not use netns as ID or for entropy

ContainerID is now required so use that
or generate random bytes.

Fixes #5

10 years agoMerge pull request #2 from jonboulle/master
Eugene Yakubovich [Tue, 5 May 2015 21:41:38 +0000 (14:41 -0700)]
Merge pull request #2 from jonboulle/master

*: first cut at SPEC and README

10 years agoMerge pull request #8 from steveeJ/ipvlan
Eugene Yakubovich [Tue, 5 May 2015 20:35:11 +0000 (13:35 -0700)]
Merge pull request #8 from steveeJ/ipvlan

plugins: add ipvlan main plugin

10 years agoplugins: add ipvlan main plugin
Stefan Junker [Sun, 3 May 2015 06:18:03 +0000 (23:18 -0700)]
plugins: add ipvlan main plugin

Add the ipvlan main plugin which is heavily based on the macvlan plugin.
Availabile modes for this plugin are l2 and l3, wheres l2 has the higher
compatibility due to support for multicast and broadcasts. L2 has therefore been
chosen as the default mode.
See the official docs at
https://www.kernel.org/doc/Documentation/networking/ipvlan.txt
for more information.

Fixes #6.