Tomofumi Hayashi
61a412ea77
Align test suite name with others
2018-09-06 15:56:40 +09:00
Tomofumi Hayashi
61c136126f
Support multiple IP addresses in CNI_ARGS
2018-09-06 15:50:18 +09:00
Dan Williams
35b87a34db
Merge pull request #191 from dcbw/portmap-panic-fix
...
portmap: don't panic if listing a chain returns fewer lines than exected
2018-09-05 10:09:02 -05:00
Tomofumi Hayashi
9048a61dda
Add description for mac/mtu/promisc in tuning README.md
...
This diff adds documents for #177 change (mac/mtu/promisc) in tuning
README.md. Fixes #199 .
2018-09-05 16:01:24 +09:00
Tomofumi Hayashi
321467bf1b
Merge remote-tracking branch 'upstream/master' into dev/static-args
2018-09-05 14:39:16 +09:00
Tomofumi Hayashi
60a99ca331
Incorporate Dan's comments.
2018-09-05 14:37:31 +09:00
Dan Williams
7d329215b0
portmap: don't panic if listing a chain returns fewer lines than expected
2018-08-16 09:50:28 -05:00
Dong Jun
220499db6b
Correct the bandwidth unit in description
...
Replace Kbps with bps and Kb with bits in bandwidth description.
2018-08-15 19:26:13 +08:00
Dan Williams
fb7a24405e
Merge pull request #177 from s1061123/tuninig-iplink
...
tuning: add some generic link settings (MAC, promisc, MTU)
2018-08-14 13:22:10 -05:00
Tomofumi Hayashi
9425d24c28
Incorporate @jelloneck/@bboreham/@squeed's comments.
2018-08-09 22:28:12 +09:00
Tomofumi Hayashi
635cb22f12
Merge remote-tracking branch 'origin/master' into tuninig-iplink
2018-08-09 21:43:33 +09:00
Bryan Boreham
75d3585862
Merge pull request #174 from jellonek/updatecomment
...
plugins/ipam/static: Update docstring
2018-08-01 16:28:45 +01:00
Tomofumi Hayashi
3a7f254a63
Introduce iplink(MTU MAC and promiscas) feature into tuning
...
This change adds 'ip link' command related feature into tuning
meta cni plugin. Currently MTU, MAC and promiscas mode are
supported.
2018-07-31 12:54:15 +09:00
Dan Williams
2b819b5571
Merge pull request #129 from mauriciovasquezbernal/fix_ip_leakage_bridge
...
bridge: release IP in case of error
2018-07-27 15:58:08 -05:00
Mauricio Vasquez B
316489903b
bridge: add test case for release IP on error
...
Signed-off-by: Mauricio Vasquez B <mauricio.vasquez@polito.it>
2018-07-27 07:57:12 -05:00
Mauricio Vasquez B
3a7ee332be
bridge: release IP in case of error
...
If there is an error after an IP has been allocated it is necesary
to release it.
Signed-off-by: Mauricio Vasquez B <mauricio.vasquez@polito.it>
2018-07-27 07:57:04 -05:00
Tomofumi Hayashi
cc3ad26691
Incorporate Casey's comments
2018-07-27 12:47:28 +09:00
Dan Williams
4b296ba330
bridge: add random datadir to all testcases
2018-07-26 21:09:30 -05:00
Piotr Skamruk
6dc16b9132
plugins/ipam/static: Update docstring
2018-07-19 14:35:10 +02:00
Matt Dupre
f970542036
Merge pull request #173 from sak0/pr
...
remove duplicated assginment.
2018-07-11 16:32:59 +01:00
Tomofumi Hayashi
3b3622db67
Incorporate jellonek's comments.
2018-07-06 13:17:22 +09:00
CuiHaozhi
dc899ac0e0
remove duplicated assginment.
...
Signed-off-by: CuiHaozhi <61755280@qq.com>
2018-07-05 09:21:09 +08:00
Ye Yin
7571169160
Fix tc-tbf burst value in bytes.
2018-07-03 18:36:49 +08:00
Neil Wilson
b2fc336833
plugins/host-local: ensure subnet is a network address
...
Allocation code assumes the specified subnet is a clean network address
prefix, so check that is the case and throw an error otherwise
Fixes #161
2018-06-18 10:13:34 +01:00
Tomofumi Hayashi
6da1cb7876
Support CNI_ARGS in static IPAM plugin
...
This change is to add CNI_ARGS support in static IPAM plugin.
When IP/SUBNET/GATEWAY are given in CNI_ARGS, static IPAM adds
these info in addition to config files.
To configure ip address only from CNI_ARGS, 'address' field in config
is changed to optional from required.
2018-06-18 16:18:47 +09:00
Casey Callendrello
68b4efb405
plugins/* stub-out GET functions so plugins build with v0.7
2018-06-15 15:28:53 +02:00
Luca Bruno
475fdb8a0a
plugins/dhcp: update to new go-systemd
2018-05-28 12:35:04 +00:00
Dan Williams
1d973f59d2
Merge pull request #147 from databus23/host-device-fix
...
host-device: Ensure device is down before rename
2018-05-16 10:54:47 -05:00
Dan Williams
731298003c
plugins/testutils: pass CNI_CONTAINERID to plugins in testcases
...
Recent CNI specification changes require the container ID on ADD/DEL,
which the testcases were not providing. Fix that up so things work
when this repo gets CNI revendored.
2018-04-26 11:24:30 -05:00
Fabian Ruff
eb410208cb
host-device: Ensure device is down before rename
...
If the device is in state up trying to set the name fails with "device or resource busy"
2018-04-25 20:39:23 +02:00
Dan Williams
1df359a210
Merge pull request #144 from squeed/build-fixes
...
build: some small improvements; bump to go1.10
2018-04-25 10:41:32 -05:00
Casey Callendrello
adba9ec16e
Merge pull request #138 from m1093782566/runtime-config
...
traffic shaping: take configuration via a runtimeConfig
2018-04-25 17:09:41 +02:00
Lion-Wei
4a0971bcd8
update integration test configlist
2018-04-19 10:08:25 +08:00
m1093782566
7cf02869ec
traffic shaping: take configuration via a runtimeConfig
2018-04-13 10:57:17 +08:00
Casey Callendrello
aade7b93ee
build: some small improvements; bump to go1.10
...
- bump to go 1.10
- Add a linker tag with the build version
- Remove fastbuild, go builds are cached now
- Use better ginkgo suite names
2018-04-12 16:59:51 +02:00
Dan Williams
bb1e8d10a7
Merge pull request #143 from containernetworking/v0.7
...
Merge v0.7.1 fix into master
2018-04-12 09:21:42 -05:00
Dan Williams
0dba9daee0
Merge pull request #136 from s1061123/add_static
...
plugins: add static CNI plugin
2018-04-12 06:34:52 -05:00
Dan Williams
e4f13535ab
Merge pull request #131 from squeed/no-delete-ns
...
pkg/ns: remove namespace creation (and move to testutils)
2018-04-11 13:32:32 -05:00
Casey Callendrello
26dafaa097
plugins/ptp: test for valid data in Interfaces field
2018-04-11 15:19:20 +02:00
Casey Callendrello
13e6a4b2ba
plugins/bridge: Make stricter assertions about the return data
2018-04-11 15:10:39 +02:00
Casey Callendrello
a0eac8d7d9
pkg/ns: remove namespace creation (and move to testutils)
...
Namespace creation had an unergonomic interface and isn't used, except
for testing code. Remove it; downstream users should really be creating
their own namespaces
2018-04-03 18:56:25 +02:00
Tomofumi Hayashi
263ff063a6
Add static CNI plugin
...
This changes to add 'static' CNI plugin, which provides to assign
IPv4/v6 address statically from given config file. See README.md
for the details.
2018-03-29 14:10:04 +09:00
Dan Williams
e590fca5ae
Merge pull request #130 from jingax10/fix_typo_branch
...
Fix a typo in PTP plugin comment, i.e., s/IFF_POINTOPONT/IFF_POINTTOPOINT.
2018-03-21 08:28:55 -05:00
Jing Ai
00fbba085e
Fix a typo s/IFF_POINTOPONT/IFF_POINTTOPOINT.
2018-03-15 22:47:54 -07:00
Tyler Schultz
fe0cf201f8
Safely print error
...
Format plugin code
Signed-off-by: Aidan Obley <aobley@pivotal.io>
2018-03-12 15:53:23 -07:00
Aidan Obley
d2f6472474
Ensure the bandwith plugin chooses the host veth device
...
When chained with a plugin that returns multiple devices, the bandwidth
plugin chooses the host veth device.
Signed-off-by: Tyler Schultz <tschultz@pivotal.io>
2018-03-12 15:08:53 -07:00
Gabe Rosenhouse
90252c30fb
meta/bandwidth: package main so we can build a binary
2018-02-27 22:24:26 -08:00
Gabe Rosenhouse
59fa37252f
meta/bandwidth: group and sort imports
...
ref: https://github.com/golang/go/wiki/CodeReviewComments#imports
2018-02-27 20:47:42 -08:00
Gabe Rosenhouse
dce91d11d6
meta/bandwidth: remove boilerplate comments
2018-02-27 20:47:41 -08:00
DennisDenuto
b78e535055
plugins/meta/bandwith: traffic shaping plugin
...
Add chained plugin to add a tbf qdisc to shape ingress/egress traffic
2018-02-27 20:47:41 -08:00
Dan Williams
372bb5e826
Merge pull request #119 from jzwlqx/master
...
dhcp: clean duplicated error message
2018-02-21 11:09:15 -06:00
Gabe Rosenhouse
69cc860821
bridge test: fix go vet error
2018-02-17 18:51:41 -08:00
Jizhong Jiang
fdc602c0f0
clean duplicated error message
2018-02-12 16:47:53 +08:00
Dan Williams
596480eadc
dhcp: remove leases when they are released
...
Don't lock around the Stop() operation though, as that may take
a while and block other operations. That may mean we call Stop()
multiple times, but the Lease object should handle that correctly
itself.
2018-02-08 11:17:38 -06:00
Dan Williams
61c3c42107
dhcp: don't try to close the lease stop channel multiple times
...
Fixes: https://github.com/containernetworking/plugins/issues/105
2018-02-08 11:17:38 -06:00
Dan Williams
b522ed6aae
plugins/dhcp: add testcase
2018-02-08 11:17:38 -06:00
Casey Callendrello
e2f063b534
Merge pull request #88 from lyft/ipvlan-master-intf-ipam
...
ipvlan: support enslaving an interface returned by ipam
2018-01-31 17:17:13 +01:00
Casey Callendrello
9e5836047c
Merge pull request #104 from mzahorik/master
...
Append default route and process route options in compliance with RFC 3442
2018-01-31 15:08:57 +01:00
Matt Zahorik
808d4e20ae
Append a default route to the CNI reply if there's a gateway advertised.
...
Classless static routes (DHCP option 121) are now processed first.
If CSRs exist, static routes (DHCP option 33) and the gateway default
route are ignored as per RFC 3442.
2018-01-26 10:06:26 -05:00
Paul Fisher
3468364f7e
Merge branch 'master' into ipvlan-master-intf-ipam
2018-01-25 15:06:06 -08:00
Casey Callendrello
412b6d3128
Merge pull request #111 from s1061123/add_procfsprefx
...
Add -hostprefix in DHCP daemon to run the daemon as container
2018-01-25 12:00:51 +01:00
Tomofumi Hayashi
9604565b22
Add -hostprefix in DHCP daemon to run the daemon as container
...
This diff adds -hostprefix option in dhcp daemon. This option
could be used to run dhcp daemon as container because container
cannot touch host's netns directly. The diff changes dhcp daemon
to touch procfs mounted to another path, like '/hostfs/proc'.
2018-01-25 02:00:43 +09:00
Bryan Boreham
2a0736c748
Merge pull request #97 from oilbeater/fix/link-leak
...
delete link and ip if err when cmdAdd to avoid resource leak.
2018-01-24 16:38:44 +00:00
Casey Callendrello
2eba56ad52
Merge pull request #100 from squeed/range-arg
...
ipam/host-local: Accept ip ranges as a runtime argument
2018-01-24 15:45:39 +01:00
Casey Callendrello
c42470bc79
Merge pull request #110 from dcbw/host-device-honor-ifname
...
host-device: respect CNI_IFNAME/args.IfName
2018-01-19 19:05:29 +01:00
Dan Williams
ffc591e242
host-device: respect CNI_IFNAME/args.IfName
...
On ADD save the host device's name into its IFLA_ALIAS property and
rename the device to the requested CNI_IFNAME inside the container
to conform to the CNI specification. On DEL rename the device to
the original name and move it back into the host namespace.
2018-01-17 14:30:22 -06:00
Jing Ai
8ebea58550
Update IPVLAN modes by adding l3s in README.
2018-01-12 12:06:48 -08:00
Paul Fisher
5c7e7c0913
ipvlan: support chaining for master interface and IP configuration
...
For IP allocation schemes that cannot be interface agnostic, the
ipvlan plugin can be chained with an earlier plugin that handles this
logic. If "master" is omitted from the ipvlan configuration, then the
previous Result must contain a single interface name for the ipvlan
plugin to enslave. If "ipam" is omitted, then the previous Result is
used to configure the ipvlan interface.
2017-12-23 10:59:48 -08:00
Casey Callendrello
b03d23a4fa
ipam/host-local: Accept ip ranges as a runtime argument
...
This allows for the runtime to dynamically request IP ranges.
Fixes : #95
2017-12-11 13:51:01 +01:00
oilbeater
1f02326d56
delete link and ip if err when cmdAdd to avoid resource leak.
2017-11-27 15:26:07 +08:00
Dan Williams
92c634042c
Merge pull request #93 from squeed/host-device
...
plugins/main/host-device: generate result, fix DEL, other cleanups
2017-11-22 10:09:32 -06:00
Casey Callendrello
2c05055101
Merge pull request #81 from squeed/portmap-hairpin
...
portmap: support hairpin, improve performance
2017-11-15 17:34:35 +01:00
Casey Callendrello
5e830efb20
plugins/main/host-local: generate result, fix DEL, other cleanups
...
This plugin needed some cleaning up: it didn't generate output, and
didn't test DEL. Add those things, plus a README.
2017-11-15 16:00:32 +01:00
Casey Callendrello
d07d2aaf71
plugins/host_device: move to "main" folder
2017-11-13 18:50:20 +01:00
Rakesh Kelkar
47668f6d64
host-local: Update host-local IPAM to support Windows
2017-11-11 15:17:45 -08:00
Gabriel Rosenhouse
99f6be0319
Enable Windows CI (Appveyor)
...
- start list of linux_only plugins; ignore them when testing on Windows
- Isolate linux-only code by filename suffix
- Remove stub (NotImplemented) functions
- other misc. fixes for Windows compatibility
2017-11-10 08:09:29 -08:00
Casey Callendrello
5576f3120e
portmap: support hairpin, improve performance
...
This change improves the performance of the portmap plugin and fixes
hairpin, when a container is mapped back to itself.
Performance is improved by using a multiport test to reduce rule
traversal, and by using a masquerade mark.
Hairpin is fixed by enabling masquerading for hairpin traffic.
2017-11-10 16:56:52 +01:00
Paul Fisher
4779f1d2bf
ipvlan: support enslaving an interface returned by ipam
...
For IP allocation schemes that cannot be interface agnostic, master can be set
to "ipam". In this configuration, the IPAM plugin is required to return a single
interface name for the ipvlan plugin to enslave.
2017-11-01 10:14:04 -07:00
Roman Mohr
cc71426592
Don't let DHCP delete fail on missing lease
...
There are at least two reasons why a lease is not present:
* The dhcp ipam daemon was restarted
* On add the IPAM plugin failed
Don't fail the IPAM invocation when the lease is not present, to allow
proper device cleanup on CNI delete invocations.
2017-10-11 14:29:16 +02:00
Gabriel Rosenhouse
c238c93b5e
host-device plugin: result is valid JSON
...
test:
- feed valid config JSON to plugin
- execute plugin inside the namespace with the test device
2017-09-12 21:01:58 -07:00
Gabriel Rosenhouse
25ca6ccb52
host-device: do not swallow netlink errors
2017-09-12 20:53:35 -07:00
Lantao Liu
5e46a66c89
Fix go get github.com/containernetworking/plugins
.
...
Signed-off-by: Lantao Liu <lantaol@google.com>
2017-09-12 05:08:38 +00:00
Casey Callendrello
6be2e8a0e2
Merge pull request #3 from trusch/master
...
added host-device plugin which adds a specified link to container
2017-09-11 18:51:21 +02:00
Gabriel Rosenhouse
d8f2fd7a3c
testing: move echosvr into testutils
2017-09-06 19:10:48 -07:00
Dan Williams
1396ab0bab
Merge pull request #63 from squeed/v6-fixes
...
Fix ipmasq teardown on v6-only interfaces
2017-09-06 15:36:24 -05:00
Casey Callendrello
7a62515407
pkg/ip: Fix ipmasq teardown on v6-only interfaces
2017-09-06 20:02:41 +02:00
Gabriel Rosenhouse
008024125a
portmap integration test: echo server runs in separate process
...
this way we're not mixing goroutines and namespaces
2017-09-05 23:36:12 -07:00
Gabe Rosenhouse
2f957864ea
host-local disk backend store uses FileLock by reference
...
- this change fixes go vet warnings for the package
2017-08-30 06:52:29 -07:00
Casey Callendrello
a124fb36e6
bridge: various fixes
...
* Don't set the MAC, send gratuitous arp instead
* Set the bridge's MAC to itself
* Only disable DAD when necessary
2017-08-28 18:12:49 +02:00
Dan Williams
7480240de9
Merge pull request #50 from squeed/host-local-multi
...
ipam/host-local: support sets of disjoint ranges
2017-08-11 11:59:55 -05:00
Casey Callendrello
27d027a6d3
ipam/host-local: support sets of disjoint ranges
...
In real-world address allocations, disjoint address ranges are common.
Therefore, the host-local allocator should support them.
This change still allows for multiple IPs in a single configuration, but
also allows for a "set of subnets."
Fixes : #45
2017-08-09 19:02:08 +02:00
Dan Williams
998a0f6c6a
tuning: pass prevResult through
2017-07-26 14:39:01 -05:00
Tom Denham
a714098daf
Merge pull request #35 from dnardo/bridge-plugin
...
bridge: add support for promiscuous mode
2017-07-12 08:30:00 -07:00
Casey Callendrello
3745ee2d3f
plugins/portmap: fix test flake
...
The source address selection was random, and sometimes we picked a
source address that the container didn't have a route to. Adding a
default route fixes that!
2017-07-06 16:12:24 +02:00
Dan Williams
0b9dbef185
ptp: fix testcase for Interface int-pointer changes
2017-07-05 16:26:19 -05:00
Daniel Nardo
9d08b04a3a
bridge: add support for promiscuous mode
2017-07-05 09:51:10 -07:00
Casey Callendrello
a690f775ae
Merge pull request #25 from squeed/ptp-v6
...
ptp: add ipv6 support
2017-07-05 17:30:23 +02:00
Casey Callendrello
3daee3214d
ptp: add ipv6 support
...
* Wait for addresses to leave tentative state before setting routes
* Enable forwarding correctly
* Set up masquerading according to the active protocol
2017-06-30 12:06:57 +02:00
Dan Williams
0da6780449
pkg,plugins: update for Result struct Interface index changes
...
It's a pointer now, so we need to use the helper function to set
the field and also test for nil before accessing it.
2017-06-29 13:40:36 -05:00
Tino Rusch
ca3f28fa9e
host-device: cleanup + completed tests;
2017-06-29 11:44:59 +02:00