Commit Graph

25 Commits

Author SHA1 Message Date
Bruce Ashfield
a40e168766 cni: update to 1.1.0
Bumping cni to version v0.8.0-102-g940e662, which comprises the following commits:

    99eac24 cnitool: address golint error
    1054f8e libcni: handle empty version when parsing version
    54f1587 Switch to ginkgo/v2
    aba8f8b add security heading to README
    4b46fe6 Maintainers: add Mike Zappa
    2f6d8b1 introduce hybridnet to thrid-party plugins
    48fac6a Update README.md
    798e63d Updated README.md to include Netlox loxilight CNI

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-06-03 09:32:13 -04:00
Bruce Ashfield
654f8d02a6 cni: fix protocol argument typo
The newly added flannel_plugin had a typo of protcol, so we add our
missing 'o' and fix the uri parameter.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-04-11 08:13:16 -04:00
Bruce Ashfield
589391db27 cni: add flannel plugin from separate repository
We have flannel users! It was noted that flannel is no longer part
of the main cni-plugins repo, but is instead hosted in a standalone
location.

We add the new repository, its SRCREV and drop it back where it
can be built and packaged in the same way as it previously was.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-04-08 13:36:28 -04:00
Bruce Ashfield
0f7a2e57d6 cni: update to v1.0.1
Bumping cni to version v0.8.0-90-g35efaab, which comprises the following commits:

    3e49ce1 Fix incorrect pointer inputs to `json.Unmarshal`
    b92c836 fix version of cni v0.8.1 does not have a directory of github.com/containernetworking/cni/pkg/types/100 refer to https://github.com/containernetworking/cni/tree/v0.8.1/pkg/types
    269bf61 Spec: Container runtime shall tear down namespaces
    48fac6a Update README.md
    798e63d Updated README.md to include Netlox loxilight CNI
    9070cb3 documentation: update Multus link in README.md to point to the k8snetworkplumbingwg repository
    21cd5f0 [exec-plugins]: support plugin lists
    c362597 skel: remove superfluous err nil check in (*dispatcher).pluginMain
    42f2474 Remove Gabe Rosenhouse as maintainer
    2e4887b skel: print out CNI versions supported in help text.
    c7f5f70 pkg/version: add VersionsFrom function
    5608690 spec: bump to 1.0.0
    30e06a8 Docs: bump spec version information
    a956246 docs: revise cnitool docs
    63a3bca wrap returned errors
    b277ec1 docs: correct the extension name of the configuration file
    34a8a46 chore: standardize documentation on IP assignment
    76bf3de types: ensure empty CNIVersion always creates/converts to 0.1.0
    4feedb9 Add breadcrumbs for CNI.go
    57cf1ce types/create: add CreateFromBytes()
    4fdc5f6 chore: support both value type and pointer type in LoadArgs
    f30a824 Remove Bryan Boreham as maintainer
    c63d850 Add debug plugin to help debugging/troubleshooting (#818)
    9546b70 spec: Some minor corrections
    3a13f68 Spec: Bring 1.0's treatment of "args" in line with 0.4.0
    c92642b upgrade kube-ovn new github site
    67ec904 Fix typo in SPEC.md
    0555966 typos correct
    8ad568b Rewrite spec.md for 1.0.0
    0016917 Adding reference to Azure CNI as 3rd party plugin in readme
    ad59be0 types/040: add testcase for <= 0.2.0 Result requirement of one or more IPs
    e32b586 remove build badges from homepage
    296290a Switch from Travis to GH Actions
    a199e6a go fmt
    c735780 Markups.
    b678c26 Log out the plugin name on ADD/DEL failure.

cni-plugins: update to 1.1,0

Bumping cni-plugins.git to version v1.1.0-6-gb8a10bb, which comprises the following commits:

    7a98979 ipam/dhcp: Fix client id in renew/release
    7aa07ef call ipam.ExceDel after clean up device in netns fix #666
    96c3af8 Add sysctl allowlist
    08d0f33 portmap: fix checkPorts result when chain does not exist
    dca23ad portmap: fix bug that new udp connection deletes all existing conntrack entries
    ba47b49 Enhanced dad set to 1
    2be2960 Add boolean to enable/disable dad
    8ede7ee Disable DAD for container side veth
    22dd6c5 firewall: support ingressPolicy=(open|same-bridge) for isolating bridges as in Docker
    90e8e1f Fix host-device gofmt
    3b2afc9 host-device: Bring interfaces up after moving into container
    9649ec1 pkg/ns: use file system magic numbers from golang.org/x/sys/unix
    0c12d8a gofmt
    152e7a4 go mod tidy
    4319bc4 build: bump to go 1.17
    7a55617 Remove arp notify setting per comment
    5d073d6 plugins: replace arping package with arp_notify
    67110e0 fix #685
    1324428 Ran go fmt so tests would pass
    fd4c335 Fixed DHCP problem that broke when fast retry was added.
    c9d0423 dhcp ipam: adjust retry mechanism
    547a516 add ipam tests for dpdk device
    3033fd2 add ipam support for dpdk device
    d5a6569 ipvlan: Send Gratuitous ARP after IPs are set
    27fdec5 dhcp ipam: fix client id
    a1051f3 dhcp ipam: rename inconsistent options among files
    c627ea8 dhcp ipam: add more options capable for sending
    4b216e9 dhcp ipam: add fast retry
    2bebd89 dhcp ipam: support customizing dhcp options
    be383cf dhcp ipam: truncate client id to 254 bytes
    6d1f71e dhcp ipam: print error correctly without format string
    24259e7 dhcp ipam: using full config to regular the code
    c16cff9 Allow setting sysctls on a particular interface
    7cb3453 dhcp: remove implemented TODO
    ceb34eb Don't redundantly filepath.Clean the output of filepath.Join
    90c0185 Use crypto/rand.Read, not crypto.Reader.Read
    081ed44 bridge: Add macspoofchk support
    ba48f8a plugins: fix bug where support for CNI version 0.4.0 or 1.0.0 was dropped
    62952ff vendor: bump to libcni v1.0.1
    8ab2336 static ipam: do not parse the CIDR twice
    2052c30 static ipam: improve error msgs when provisioning invalid CIDR
    156e59c bump go to 1.16, other misc fixes
    0818512 vendor: bump all direct dependencies
    9b1666d vendor: bump to libcni v1.0
    0e38a1d docs: Update the CI badge from Travis CI to GitHub Actions
    24b3fbc bridge: Fix typo in error message for promiscuous mode
    a49f908 ip: place veth peer in host namspace directly
    a3cde17 bridge: Add mac field to specify container iface mac
    a786b12 static ipam: decide wrong cidr error msg
    0db5882 static ipam: stop wrapping net.ParseCIDR errors
    5a40818 static ipam: show confusing error msg
    2f9917e utils, hwaddr: Remove unused package
    272f154 ip, link_linux: Remove unused SetHWAddrByIP function
    77233dd plugins: remove flannel
    4b180a9 refactor(win-bridge): netconf
    9215e60 refactor(win-bridge): hcn api processing
    93a5503 refactor(win-bridge): hns api processing
    aa8c8c1 chore(win-bridge): location related
    ec75bb8 chore(win-bridge): text related
    c4d4aa7 Remove Bryan Boreham as maintainer

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-03-21 17:31:29 -04:00
Bruce Ashfield
5b3b2599db cni: add README
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-12-15 12:55:41 -05:00
Bruce Ashfield
24b68f18af cni: don't provide kubernetes-cni by default
The kubernetes recipes can inherit cni_networking and provide their
own PN-cni packages, so we no longer need to provide this by default.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-12-13 15:59:35 -05:00
Bruce Ashfield
0a7ae8bc50 global: convert github SRC_URIs to use https protocol
github is removing git:// access, and fetches will start experiencing
interruptions in service, and eventually will fail completely.

bitbake will also begin to warn on github src_uri's that don't use
https. So we convert the meta-virt instances to use protocol=https
(done using the oe-core contrib conversion script)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-11-02 09:57:03 -04:00
Bruce Ashfield
36cdef7c5f cni: add SRCREV_FORMAT
recipes that use multiple SCMs in the SRC_URI, must supply
SRCREV_FORMAT or SRCPV triggers an expansion error. While
this isn't fatal during the build, it can cause issues with
setscene (and possibly) other tasks failing, which then
leads to no sstate re-use, etc.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-10-19 23:21:42 -04:00
Bruce Ashfield
d876cfc5bf global: overrides syntax conversion
OEcore/bitbake are moving to use the clearer ":" as an overrides
separator.

This is pass one of updating the meta-virt recipes to use that
syntax.

This has only been minimally build/runtime tested, more changes
will be required for missed overrides, or incorrect conversions

Note: A recent bitbake is required:

    commit 75fad23fc06c008a03414a1fc288a8614c6af9ca
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Sun Jul 18 12:59:15 2021 +0100

        bitbake: data_smart/parse: Allow ':' characters in variable/function names

        It is becomming increasingly clear we need to find a way to show what
        is/is not an override in our syntax. We need to do this in a way which
        is clear to users, readable and in a way we can transition to.

        The most effective way I've found to this is to use the ":" charater
        to directly replace "_" where an override is being specified. This
        includes "append", "prepend" and "remove" which are effectively special
        override directives.

        This patch simply adds the character to the parser so bitbake accepts
        the value but maps it back to "_" internally so there is no behaviour
        change.

        This change is simple enough it could potentially be backported to older
        version of bitbake meaning layers using the new syntax/markup could
        work with older releases. Even if other no other changes are accepted
        at this time and we don't backport, it does set us on a path where at
        some point in future we could
        require a more explict syntax.

        I've tested this patch by converting oe-core/meta-yocto to the new
        syntax for overrides (9000+ changes) and then seeing that builds
        continue to work with this patch.

        (Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284)

        Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-08-02 17:17:53 -04:00
Bruce Ashfield
aa2c70a3ad cni: inhibit go.mod build for main cni
The cni plugins already have mod=vendor, but we also need to ensure
that the main CNI build is not using go module based builds.

To avoid inconsistent vendoring messages, we switch all plugins to
no module builds as well.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-15 10:33:41 -04:00
Bruce Ashfield
6957b542e3 cni/plugins: update to 0.9.1
Update the cni plugins part of the recipe to the 0.9.1 release:

   c4d4aa7 Remove Bryan Boreham as maintainer
   af26bab host-local: support ip/prefix in env args and CNI args
   f72aa98 [sbr]: Use different tableID for every ipCfg        Check
   tableID not in use for every ipCfg
   40c225e Small typo improves in README.md
   76ef07e Allow multiple routes to be added for the same prefix. Enables ECMP
   d6bf1ea Update to lastest vendor/github.com/vishvananda/netlink
   bdaaa20 tuning: always update MAC in CNI result
   33a2929 vendor: bump to libcni v1.0-rc1
   820fee9 tuning: Add support of altering the allmulticast flag
   f34c600 [sbr]: Use different tableID for every ipCfg        Move default table routes which  match the ipCfg config
   8f32968 Fix nil-pointer check
   028fc2f host-local: support custom IPs allocation through runtime configuration
   7da1c84 pkg/ip: introduce a new type `IP` to support formated <ip>[/<prefix>]
   2eac102 go.mod: github.com/j-keck/arping v1.0.1
   f4d2925 go.mod: github.com/buger/jsonparser v1.1.1
   c3d0153 go.mod: github.com/alexflint/go-filemutex v1.1.0
   75b64e0 go.mod github.com/Microsoft/hcsshim v0.8.16
   bc85637 go.mod: godbus/dbus/v5 v5.0.3, coreos/go-systemd v22.2.0
   d2d89dd go.mod: github.com/mattn/go-shellwords v1.0.11
   59a6259 go.mod: github.com/sirupsen/logrus v1.8.1
   3cc1135 CI: Install linux-modules-extra for VRF module
   5b02c2a Fix broken links to online docs in plugin READMEs
   f275746 gha: update actions/setup-go@v2
   b811967 remove redundant startRange in RangeIter due to overlap check on multi ranges
   178d7c0 fix(win-bridge): panic while calling HNS api
   e09a17f portmap: use slashes in sysctl template to support interface names which separated by dots
   9b09f16 pkg/ipam: use slash as sysctl separator so interface name can have dot
   e31cd2c [macvlan] Stop setting proxy-arp on macvlan interface
   8e540bf tuning: increase test coverage to 1.0.0 and older spec versions
   d2e5b5d portmap: increase test coverage to 1.0.0 and older spec versions
   8f7fe6d flannel: increase test coverage to 1.0.0 and older spec versions
   f33eedb firewall: increase test coverage to 1.0.0 and older spec versions
   da52be3 bandwidth: increase test coverage to 1.0.0 and older spec versions
   02cdaaf host-local: increase test coverage to 1.0.0 and older spec versions
   f534133 static: increase test coverage to 1.0.0 and older spec versions
   932653f dhcp: increase test coverage to 1.0.0 and older spec versions
   dd3f606 dhcp: add -resendmax option to limit lease acquisition time for testcases
   4ddc8ba vlan: increase test coverage to 1.0.0 and older spec versions
   f56545c ptp: increase test coverage to 1.0.0 and older spec versions
   bbf7189 macvlan: increase test coverage to 1.0.0 and older spec versions
   5eae558 loopback: increase test coverage to 1.0.0 and older spec versions
   5096b53 ipvlan: increase test coverage to 1.0.0 and older spec versions
   34cee8c host-device: increase test coverage to 1.0.0 and older spec versions
   c3c286c bridge: increase test coverage to 1.0.0 and older spec versions
   c8f341d bridge: simplify version-based testcase code
   8c25db8 testutils: add test utilities for spec version features
   7d8c767 plugins: update to spec version 1.0.0
   9e2430b vendor: bump CNI to 1.0.0-pre @ 62e54113

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-04 08:43:11 -04:00
Bruce Ashfield
df313693f3 cni: add ca-certifcates dependency
Many of the CNI plugins require authenticated connections, as such
they are looking for elements of ca-certificates.

CNI isn't small, so we add this as a general rdepends. If we need to
slim things down in the future, we can split the CNI into specific
implementations and add the dependency to those packages.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-03-15 23:15:42 -04:00
Bruce Ashfield
da32b79488 cni: update to 0.8.0
The following CNI commits are part of this update:

   e32b586 remove build badges from homepage
   296290a Switch from Travis to GH Actions
   a199e6a go fmt
   ada6726 tighten up plugin-finding logic
   eec3755 Add "alias" to conventions
   867451c Fix typo in pkg/types/internal/convert.go
   679ed9d Fix typo in CONVENTIONS.md
   6d8228e maintainers: fix typo
   e781c94 types: remove SupportedVersions
   7555ca3 spec: bump to 1.0.0-pre-release and remove 'version' from Result addresses
   6823eba tests: small cleanup and removal of one useless testcase
   3805b13 types: add 1.0.0
   0050bfa types: implement convert module and make types use it
   90311ea Bump release build Go version to 1.14
   f9b5c9b Add security reporting info
   e5c65a5 Revert formatting of error codes
   65bf688 Travis: bump go versions
   a7cceb9 add go.mod
   93a7425 testhelpers: clean up how we build against old libcni targets
   c78d465 Replace 2019 conference announcement with links to the recordings
   fc1de42 Sync contact methods in README and CONTRIBUTING
   c815aca Update the SPEC, CODE-OF-CONDUCT, CONTRIBUTING, RELEASING with minor formatting changes and linting updates.
   17a6379 Update README.md
   956c943 adding OVN4NFV-K8s-Plugin as 3rd party plugin
   e2a7366 Retry exec commands on text file busy
   76b18ea Typo fixes for infiniband GUID
   44dabed invoke: capture and return stderr if plugin exits unexpectedly
   279bc6c Add DeviceID attribute to RuntimeConfig
   fdcc7b1 test: allow specific package testing with PKGS=<x> ./test.sh
   ca0082f Add Infiniband GUID to well known Capabilities
   38353fa Remove extra ',' chars which makes conflist examples invalid.
   134f603 maintainers: remove Stefan per personal request
   1435c6b Add Michael Cambria as a CNI maintainer
   6b46a03 Update link freenode.org to freenode.net
   075e303 Update roadmap for 1.0 plans
   0b1c649 Change language identifier to jsonc for json with comments
   704c56d Update tests
   f208f19 Remove Result.String
   cc6e8af pkg/utils: utility package should use black-box testing
   025e32f pkg/utils: add utils_test
   6f29b01 intercept netplugin std error
   777584f Add Kube-OVN to CNI list
   e00fa53 appending antrea to the cni list
   7815be7 Add Project Antrea in CNI list
   f2fa4a3 Add table of contents
   b36de6e DOCUMENTATION: Address incomplete instructions in CONTRIBUTING.md
   c35ac21 Adding Cisco ACI to CNI plugin list
   3eb88ac Add Bruce Ma and Piotr Skarmuk as maintainers
   6c6a315 Update README to sunset slack and call out kubecon presentations
   b89eff5 Add a note to README about where to find the binaries
   4eec648 When the CNI version isn't supplied in config, use default.
   eefc069 SPEC: update validation rules for interface name in docs and address some comments
   b5188cf spec: fix some typo in docs
   c94fcd7 Perfect annotation: Correct word spelling mistakes
   7be1ac9 add interface name validation to libcni and skel
   9f4a623 utils: add validation function for interface name
   2a82881 Bump golang
   c0f784d Update cnitool docs
   94399d5 add err handling in plugins/test/noop/
   d8dfb56 validate containerID and networkName ensure they contain only letters and numbers
   e4a11ba libcni: cache file operations require full uniqueness tuple in RuntimeConf
   a83f3cb libcni: also cache IfName, network name, and container ID
   894863c libcni: fix cache file 'result' key name
   f3654f3 skel: remove needless functions and types
   3e79703 modify some well-known errors
   1318d7c libcni: find plugin in exec
   9af40ed     libcni: add config caching
   722a488 docs: add ips and mac to well-known capabilities and fix some typo
   227c438 SPEC: add some well-known error codes
   ba034ef testcases: make testcase use suitable error code
   4b29940 skel: clean up typed Errors in skel
   50192c0 types : add NewError method
   0af0477 readme: add Alibaba Cloud CNI plugin 'Terway' to the list
   b92d83c bump linux to Bionic 18.04 in Travis and Vagrant
   a48337a add missing commas, fix syntax error
   5077b14 Add stringifyArgs and parseArgs functions to utils.go
   80ad241 libcni: add InitCNIConfigWithCacheDir() and deprecate RuntimeConfig.CacheDir
   5dbeae8 clean up : remove useless variable
   a03dc28 clean up : fix staticcheck warnings
   cbca752 Docs: Small typo fixes in main README.md

As well as the following plugin commits:

    fa48f75 ipam/dhcp: Add broadcast flag
    74a6b28 vendor: bump libcni
    8feef71 add flannel to support dual stack ip
    343d233 bandwidth: fix panic in tests
    d41acb8 host-device: Add support for DPDK device (#490)
    075c5a0 [main/vlan] Fix error handling for delegate IPAM plugin
    a8d1f5c dhcp: default dhcp clien timeout is 10s
    354def7 vlan: fix error message text by removing ptp references
    25fc741 dhcp: daemon dhcp client timeout is configurable
    3161bb5 dhcp: timeout value is set in DHCP daemon
    ebce6d0 remove unused function
    691238c deps: go mod tidy coreos/go-iptables
    23a1d90 deps: bump coreos/go-iptables
    e13bab9 tuning: revert values on delete (#540)
    680c6dd go mod tidy
    be19d78 bump to go 1.15
    8d52c42 Add ability to trigger retests via comments
    3ae85c1 pkg/ns: fix test case to tolerate pids going away.
    25704f9 Add github build & test actions
    eb31403 bridge: fix testcase to check addresses we care about
    336ba52 Remove travis.
    b47d178 vendor: bump ginkgo, gover
    108c2ae portmap plugin should flush previous udp connections
    cccf539 Updating plugin README.md files (#549)
    c41c78b update netlink dependencies
    50a3aa6 Xdhcp: fix example configuration
    98c621a VRF: extend supported version to 0.3.1 too.
    b34402a VRF CNI: Add an optional table parameter.
    5fc309a Add more tests for the vrf cni plugin.
    362f5d6 Update github.com/vishvananda/netlink to v1.1.0
    8d0d8a9 Introduce a new VRF CNI meta plugin.
    1a7f1bd Travis: run tests on arm64
    8a6e96b Replace nc with the local echo client.
    3227902 Add an echo client to be used instead of nc.
    59baaa1 Bump up the ubuntu version used in CI to bionic.
    9ce99d3 flannel: allow input ipam parameters as basis for delegate
    08ff3b6 ipvlan: make master config as optional
    1ea19f9 Remove extraneous test file in Windows plugin
    799d3cb Fix race condition in GetCurrentNS
    839d918 lo: CNI_IFNAME is no longer ignored
    c50490e cni: bump to 0.8.0
    01a8de9 Bump Go version to 1.13 and 1.14
    2b6cd54 Add contact info
    0214625 Update firewall README.md CNI-ADMIN
    813f541 firewall: fix some typos in docs
    051452c Update firewall README.md
    877602d portmap DEL noop if no portMappings present
    2bd04cb firewall: fix generate of admin chain comment
    d4775ec Fix handling of delay in acquiring lease with stp turned on
    68a80bc Update README.md
    5cb3a5e portmap: don't use unspecified address as destination
    b9560fd macvlan: set mac address from CNI_ARGS
    79192cb host-device: Bring interfaces down before moving.
    219eb9e ptp, bridge: disable accept_ra on the host-side interface
    02bfece plugins/meta/sbr: Adjusted ipv6 address mask to /128
    5e0fbd8 portmap: Apply the DNAT hairpin to the whole subnet
    a78853f Support device id in host device plugin (#471)
    2d2583e win-bridge: add support for portMappings capability
    30776ff check bridge's port state
    2a48d68 Reset the route flag before moving the rule
    486ef96 [DO NOT REVIEW] vendor upate to remove useless dependencies
    8a0e3fe build error utility package to replace juju/errors
    112288e Unlock OS thread after netns is restored
    c7e2cf7 owners: updates for maintainer changes
    53854dd flannel: remove net conf file after DEL succeed
    a9b4e04 Make host-device to work with virtio net device
    45fd949 ptp: remove some redundant lines
    2ff84a4 pkg/ip: use type cast instead of untrusty error message
    37207f0 pkg/utils: sysctl package should use black-box testing
    d1360b8 loopback: Fix ipv6 address checks

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-02-06 07:56:51 -05:00
Mark Asselstine
de94eb1572 cni: prevent go from downloading stuff in the background
While testing the cni uprev by building in a container with
network=none the following error was found:

  go: github.com/Microsoft/go-winio@v0.4.11: Get
   https://proxy.golang.org/github.com/%21microsoft/go-winio/@v/v0.4.11.mod:
   dial tcp: lookup proxy.golang.org on 128.224.144.130:53:
   dial udp 128.224.144.130:53: connect: network is unreachable

After some digging through the go documentation it was found that the
'-mod=vendor' is required for 'go build' to use shipped vendor modules
when building modules. This can be confirmed by look at the
'build_linux.sh' script which is found in the plugins repo.

By using '-mod=vendor' and also ensuring things are properly placed in
the GOPATH (ie $B) we can avoid having to create many of the links we
had been previously.

We also put all the build artifacts into $B to avoid mixing source and
build.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-03-13 21:53:26 -04:00
Mark Asselstine
e65c3761e0 cni: 1.7.0 to 1.7.1 (and plugins 0.8.2 to 0.8.5)
Both uprev's are listed as 'minor' in the upstream release
notes. Neither introduces an uprev in spec. This fixes issues we
observed while testing the forthcoming cri-o uprev.

NOTE: this commit should only be used with the follow-on commit [cni:
prevent go from downloading stuff in the background] otherwise you
will end up with files not owned by you which will prevent the recipe
being properly cleaned.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-03-13 21:53:26 -04:00
Stefan Agner
aa509c629e cni: move cni tools to /usr/libexec/cni
Use a standard location to store the cni tools and plugins. This
is more in line how other distributions package cni. Keep a symlink
to /opt/cni/bin for backward compatibility.

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-10-02 14:13:35 -04:00
Chen Qi
b538e06ba9 cni: build more plugins
Also build plugins under ipam. Other distros default to contain
these plugins.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-08-12 11:02:31 -04:00
Chen Qi
9267ddff1a cni: fix problem about cross compilation
When setting up k8s, the following error appeared, failing
to setup coredns pod.

  NetworkPlugin cni failed to set up pod "coredns-5f7fc64c95-4nnfq_kube-system" network: fork/exec /opt/cni/bin/loopback: no such file or directory

This is because the binary, /opt/cni/bin/loopback, has wrong interpreter.

So fix do_compile to use ${GO} instead of go to fix this problem.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-08-12 11:02:31 -04:00
Chen Qi
4eca42bc3b cni: remove unnecessary GO settings
These settings are either in go.bbclass or duplicate, thus
removing them.

Keep only CGO_ENABLED and GOPATH to easier manipulation while
upgrading cni.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-08-12 11:02:31 -04:00
Bruce Ashfield
95b848f219 containers/go/build: don't override global package strip flags
When the go-lang container recipes were first created there were issues
with strip and the resulting binaries. As such, strip was inhibited for
the various packages.

This variable is now set in the default classes, and tests show that
strip works on the binaries (saving up to 2M on disk for some binaries)
with no runtime issues found.

So we drop our explicit set of the inhibit and let the build proceed
by the defaults.

If issues are found, we can re-enable the setting or bbappends can
turn it back on for builds showing issues.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-07-22 14:48:07 +00:00
Bruce Ashfield
e6eb8e839b k8s: update CNI to 0.7.x
Updating the CNI and plugins to 0.7.x series.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-07-12 14:50:34 +00:00
Bruce Ashfield
3724664413 cni: update to latest plugins, and skip windows bridge build
Updating the cni plugins to match k8s and cri-o. We also filter out
the windows plugins, since they use a different build infrastructure
than the other variants .. and are not currently needed. This can
be revisted in the future as needed.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2018-11-02 21:21:27 -04:00
Bruce Ashfield
1bcc2431a5 cni: update to the latest plugins
Updating the latest plugins.

We have to make some minor build adjustments, but otherwise, this is
a simple update.

We also drop the ptest build, since it is not used and is causing
build errors.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2018-07-04 12:07:09 -04:00
Bruce Ashfield
4c0363bc9b cni: rprovide kubernetes-cni
Many distros make a 'kubernetes-cni' package available. This is no
more than a binary extracted set of 'cni' plugins. We already have
'cni' available in the build system, so we make sure it rprovides
kubernetes-cni to keep conflicts and confusion at a minimum.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2017-10-05 15:50:41 -04:00
Bruce Ashfield
176715435e containers: CNI: introduce container networking interface
Introducing the CNI framework to allow platforms such as
kubernetes + cri-o to use thm for networking configuration.

The networking plugins are installed, but are not configured
by default to create any specific networking interfaces, which
are the responsibility of the image and distribution.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2017-10-02 09:15:58 -04:00