18 Commits

Author SHA1 Message Date
fcbde68d32 docs: add brief section on contributing, to README 2016-04-01 12:51:39 +01:00
8c860a832f docs: cosmetic edits to README.md 2016-04-01 12:37:39 +01:00
77a5bf44f4 README: add Calico and Weave as CNI users 2016-03-31 15:44:03 +02:00
0b4f7d849f README: add a list of CNI users 2016-03-30 15:59:16 -07:00
48ff0e472a Moves to official vendoring solution 2016-03-16 08:38:20 -07:00
c1ee5d00df travis & README: add coveralls coverage report
Also, don't use sudo for the entire test script
2016-03-05 19:07:31 +01:00
f48bd43d8c Adds travis badge, now we have more tests 2016-03-02 11:43:27 -05:00
2708bdf2f5 Create a plugin for up'ing a lo device
- Believe we need sudo to create netns
- Use syscall instead of relying on ip netns
- Add sudo to .travis.yml
- Needs more -E
- Revert Godeps GoVersion to 1.4.2
- in travis, test command is run with all necessary env vars
- Loopback plugin only works on 'lo' interface
- Update README, add loopback plugin config
- note script dependency on jq

Signed-off-by: Gabe Rosenhouse <grosenhouse@pivotal.io>
2016-02-29 12:29:06 -05:00
54286af90f Update README.md
Highlight bash/shell code in markdown for readability.

Signed-off-by: chengtiesheng <chengtiesheng@huawei.com>
2016-01-06 16:25:02 +08:00
0a289316d6 Update README.md
No need for full path to ifconfig (and the given path doesn't work...)
2016-01-04 17:06:30 -08:00
d3ca177ee4 README/CONTRIBUTING: mention cni-dev@ list 2015-10-01 12:43:43 -07:00
b88f173c43 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).
2015-09-16 10:14:39 +01:00
ac0b5177a4 Fix a few spelling mistakes in the docs 2015-08-20 16:41:25 +01:00
1ca1c875c2 Fix environment bug,version of golang should be 1.4+, add reminding in Readme.md 2015-07-08 18:21:58 +08:00
78daffc479 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.
2015-06-11 15:37:58 -07:00
0f8ca5aa60 *: first cut at SPEC and README 2015-04-28 20:51:29 -07:00
88377fa346 Add plugin code
This adds basic plugins.
"main" types: veth, bridge, macvlan
"ipam" type: host-local

The code has been ported over from github.com/coreos/rkt project
and adapted to fit the CNI spec.
2015-04-27 14:14:29 -07:00
502be19aed Initial commit 2015-04-04 20:35:49 -07:00