130 Commits

Author SHA1 Message Date
Tomofumi Hayashi
2290fc8d8a static: prioritize the input sources for IPs
This change introduce priorities for IPs input among CNI_ARGS,
'args' and runtimeConfig. Fix #399.

Signed-off-by: Tomofumi Hayashi <tohayash@redhat.com>
2019-10-17 13:36:49 +09:00
Guangming Wang
8ec6bd6a42 bugfix: defer after err check, or it may panic
Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-09-25 22:21:49 +08:00
Tomofumi Hayashi
a069a5f1a3 Support "args" in static and tuning
Support "args" field in JSON config to additional configuration
in static and tuning plugins.
2019-08-09 11:52:06 +09:00
Bruce Ma
e2984e7840 host-local: return error if duplicate allocation is requested for a given ID
Signed-off-by: Bruce Ma <brucema19901024@gmail.com>
2019-07-06 10:05:18 +08:00
Bruce Ma
eb1ff18c4c host-local: add some testcases for allocation idempotency
Signed-off-by: Bruce Ma <brucema19901024@gmail.com>
2019-07-06 09:39:56 +08:00
Bruce Ma
e8771b36a2 host-local: make allocation idempotent to multiple requests with same id
Signed-off-by: Bruce Ma <brucema19901024@gmail.com>
2019-07-06 09:39:56 +08:00
Bruce Ma
7f8ea631e5 host-local: make Store interface support to get ip list by id
Signed-off-by: Bruce Ma <brucema19901024@gmail.com>
2019-07-06 09:39:56 +08:00
Tomofumi Hayashi
660685a8af Support ips capability in static and mac capability in tuning
This change introduces new capability flag to change MAC address
and to specify IP addresses by tuning and static.
2019-06-20 17:11:47 +09:00
Casey Callendrello
72f2a1ffd4 plugins: correctly output build version, cosmetic cleanups
Now that libcni has the ability to print a version message, plumb it
through correctly.

While we're at it,
- fix import paths
- run gofmt
- add some more comments to sample
- add container runtime swappability for release
2019-04-15 16:52:07 +02:00
Casey Callendrello
fbd9accd14
Merge pull request #268 from s1061123/fix/dhcp_daemon_hostprefix
Fix -hostprefix option
2019-04-08 12:53:09 +02:00
Tomofumi Hayashi
8b53f80fa8 Incorporate with @bboreham comment 2019-04-05 03:38:20 +09:00
Dan Williams
18874aac7d
Merge pull request #264 from mccv1r0/add-check
Add CHECK support for linux plugins
2019-04-03 12:58:41 -05:00
Michael Cambria
74a2596573 Add check support for: bridge, ipvlan, macvlan, p2p, vlan and host-device main plugins
host-local and static ipam plugins
  tuning, bandwidth and portmap meta plugins

  Utility functions created for common PrevResult checking

  Fix windows build
2019-04-03 13:08:07 -04:00
Dan Williams
8a3d149a60
Merge pull request #284 from francares/fmc_dhcp_subnetmask
IPAM/DHCP: include Subnet Mask option parameter in DHCPREQUEST
2019-04-01 14:56:13 -05:00
Casares, Francisco M
d577d9cc24 DHCP: include Subnet Mask option parameter in DHCPREQUEST
DHCP REQUEST from DHCP plugin does not include Subnet Mask option parameter (1). Some DHCP servers need that option to be explicit in order to return it in a DHCPACK message.
If not, DHCP plugin returns "DHCP option Subnet Mask not found in DHCPACK" error msg in this type of scenario.
2019-03-26 12:49:48 -07:00
Tomofumi Hayashi
4ec62ac295 Fix -hostprefix option
Fix #267
2019-03-26 18:27:46 +09:00
Tomofumi Hayashi
b1814d7f9a Add systemd unit file to activate socket with systemd
This changes to add sample systemd unit files to activate socket
with systemd. Fix #156.
2019-03-14 16:03:23 +09:00
Nguyen Quang Huy
4bca3e76bf Fix redundant import alias
Because these package names are short and they are unique, it can not conflict. So the import aliases that can be omitted and we should remove them.
2019-02-20 16:58:45 +07:00
Saravana Periyasamy
f891fd9e9a some DHCP servers expect to request for explicit router options 2019-01-28 19:44:53 -06:00
Dan Williams
a686cc4bd8
Merge pull request #248 from JoeWrightss/patch-1
Fix some spelling errors
2019-01-09 09:50:38 -06:00
JoeWrightss
f0208611ad Fix some spelling errors
Signed-off-by: JoeWrightss <zhoulin.xie@daocloud.io>
2018-12-29 21:26:28 +08:00
bingshen.wbs
59a746bd52 remove gateway check
Signed-off-by: bingshen.wbs <bingshen.wbs@alibaba-inc.com>
2018-11-29 12:59:38 +08:00
Michael Cambria
0af31fc4d0 Change dhcp plugin to send ClientID allowing container to have multiple CNI
interfaces using dhcp ipam.

Vendor latest dhcp4server, dhcp4client, dhcp4

Added additional tests for new functionality in dhcp2_test.go

Wrap d2g dhcp4client calls with our own which add clientID to packet.
2018-11-15 11:31:56 -05:00
Michael Cambria
227a4c15fa Add container ifName to the dhcp clientID, making the clientID value
now equal to: ContainerID / Host Network / ifname inside container

Use clientID as a key for the lease
2018-11-09 17:27:05 -05:00
Michael Cambria
d2ebd0a4c2 Merge branch 'master' of github.com:containernetworking/plugins into issue164 2018-10-10 12:28:43 -04:00
Michael Cambria
22b11bb367 Keep defaultSocketPath the same as before 2018-10-10 11:35:57 -04:00
Michael Cambria
73106f0ece Remove unused pidfilePath const
Moved global var's to BeforeEach()
2018-10-09 16:57:58 -04:00
Michael Cambria
75e35b6c01 Added new test cases.
Add two interfaces (e.g. eth0, eth1) to the same container.
Ensure each file now has ContainerID and ifname.
Delete one, ensure that the right file was deleted.

Add an interface using just ContainerID in the file.
Delete to verify we are still backwards compatible with any
files created using earlier verison of host-local plugin.
2018-10-09 13:13:36 -04:00
Michael Cambria
37715a0f87 Moved directory walk, compare file code to it's own function 2018-10-09 13:13:36 -04:00
Michael Cambria
a17cadda88 Handle the case of a Delete for a reservation stored with just ContainerID without the interface 2018-10-09 13:13:36 -04:00
Michael Cambria
1e8f9525a6 Obtain ifname from CmdArgs and pass to backend Add ifname to second line of file tracking the IP address used by ContainerID
Update host-local tests to use ifname along with ContainerID
in store file

Signed-off-by: Michael Cambria <mcambria@redhat.com>
2018-10-09 13:13:36 -04:00
Michael Cambria
ef913eadd5 Took out os.Remove() for socketPath and pidfilePath now that os.RemoveAll() is used 2018-10-08 16:01:31 -04:00
Michael Cambria
3d349e4645 Ensure /run/cni exists in the filesystem before running dhcp tests 2018-10-08 14:08:37 -04:00
Michael Cambria
5fd849ac6d Use tempDir in socket path for ginkgo parallelization 2018-10-08 11:31:03 -04:00
Michael Cambria
6d3215a256 Allow socket path used by dhcp plugin to be supplied via dhcp ipam configuration
Allow socket path to be supplied as flag when starting dhcp daemon
2018-10-08 11:30:01 -04:00
Dan Williams
646dbbace1
Merge pull request #165 from s1061123/dev/static-args
Support CNI_ARGS in static IPAM plugin
2018-09-24 21:00:09 -05:00
Michal Rostecki
1a3f49c7ae plugins/ipam: Add missing error check
Signed-off-by: Michal Rostecki <mrostecki@suse.de>
2018-09-20 11:05:58 +02:00
Tomofumi Hayashi
094c903932 Incorporate Dan's comments. 2018-09-13 01:46:11 +09:00
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
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
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
cc3ad26691 Incorporate Casey's comments 2018-07-27 12:47:28 +09:00
Piotr Skamruk
6dc16b9132 plugins/ipam/static: Update docstring 2018-07-19 14:35:10 +02: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
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