Skip to content

@dcbw dcbw released this Jun 11, 2019 · 4 commits to master since this release

The 0.7.1 CNI release includes minor bug fixes to v0.7.0.

libcni changes

Library changes:
#662 invoke : ensure custom envs of CNIArgs are prepended to process envs
#669 add GetNetworkListCachedResult to CNI interface
#663 delegate : allow delegation funcs override CNI_COMMAND env automatically in heritance

Documentation & Convention changes:
#659 Update cnitool documentation for spec v0.4.0
#666 Add cni-route-override to CNI plugin list

Build and test changes:
#672 Release: bump go to v1.12

Full list of changes here. Many thanks to the 7 contributors who helped make this release possible.

Assets 2

@bboreham bboreham released this Apr 26, 2019 · 18 commits to master since this release

The 0.7.0 CNI release includes spec version 0.4.0, plus some minor bugfixes and improvements to the Go implementation.

CNI Spec v0.4.0

The big change in the spec is a new method CHECK, which runtimes can call to find out whether one network interface is still set up as they expect (#579).

libcni changes

The libcni API has changed with the addition of a Context to enable timeouts and cancellation (#568)

Spec changes:
#500 Use more RFC2119 style language in specification (must, should...)
#505 add notes about ADD/DEL ordering
#510 Make the container ID required and unique.
#543 remove the version parameter from ADD and DEL commands.
#557 Network interface name matters
#565 be explicit about optional and required structure members
#579 add CHECK method
#591 Add a well-known error for "try again"
#641 SPEC.md: clarify meaning of 'routes'

Library changes:
#96 pkg/types: Makes IPAM concrete type
#494 libcni: return error if Type is empty
#502 skel: VERSION shouldn't block on stdin
#521 non-pointer instances of types.Route now correctly marshal to JSON
#524 libcni: add ValidateNetwork and ValidateNetworkList functions
#536 pkg/skel: return error if JSON config has no network name
#554 skel: add support for plugin version string
#558 libcni: make exec handling an interface for better downstream testing
#568 libcni: api now takes a Context to allow operations to be timed out or cancelled
#570 types/version: add helper to parse PrevResult
#572 skel: only print about message, not errors
#584 skel,invoke,libcni: implementation of CHECK method
#587 cnitool: Honor interface name supplied via CNI_IFNAME environment variable.
#600 cnitool: validate correct number of args
#617 Don't copy gw from IP4.Gateway to Route.GW When converting from 0.2.0
#636 add PrintTo method to Result interface
#655 Return a better error when the plugin returns none

Documentation & Convention changes:
#492 roadmap: add 1.0 items and clean things up
#493 docs: add Governance procedure documentation
#495 Spec lists git tags pointing to old spec versions
#497 add the "ips" arg
#504 governance: add notes about public voting
#525 add new ipRanges capability.
#556 Conventions: add bandwidth limits
#639 Update conventions.md to include dns capability
#597 CONVENTIONS: add support for IP prefixes

Build and test changes:
#489 Release: clean the builddir when building.
#499,#538,#592 Golang versions: add 1.10, 1.11, drop 1.7 and 1.8
#501 Test all non-vendored packages
#508 cnitool: generate container id from the netns path
#514 Remove vendor directory
#515 Add CI for Windows
#535 tests: remove netns handling

Plus many more changes to fix typos, add 3rd-party plugins, etc. Full list of changes here.
Many thanks to the 50 contributors who helped make this release possible.

Assets 2
Apr 26, 2019
Spec version 0.4.0
Pre-release

@bboreham bboreham released this Apr 17, 2019 · 32 commits to master since this release

This is a Release Candidate for the 0.7.0 CNI release, which includes spec version 0.4.0, plus some minor bugfixes and improvements to the Go implementation.

CNI Spec v0.4.0

The big change in the spec is a new method CHECK, which runtimes can call to find out whether one network interface is still set up as they expect (#579).

libcni changes

The libcni API has changed with the addition of a Context to enable timeouts and cancellation (#568)

Spec changes:
#500 Use more RFC2119 style language in specification (must, should...)
#505 add notes about ADD/DEL ordering
#510 Make the container ID required and unique.
#543 remove the version parameter from ADD and DEL commands.
#557 Network interface name matters
#565 be explicit about optional and required structure members
#579 add CHECK method
#591 Add a well-known error for "try again"
#641 SPEC.md: clarify meaning of 'routes'

Library changes:
#96 pkg/types: Makes IPAM concrete type
#494 libcni: return error if Type is empty
#502 skel: VERSION shouldn't block on stdin
#521 non-pointer instances of types.Route now correctly marshal to JSON
#524 libcni: add ValidateNetwork and ValidateNetworkList functions
#536 pkg/skel: return error if JSON config has no network name
#554 skel: add support for plugin version string
#558 libcni: make exec handling an interface for better downstream testing
#568 libcni: api now takes a Context to allow operations to be timed out or cancelled
#570 types/version: add helper to parse PrevResult
#572 skel: only print about message, not errors
#584 skel,invoke,libcni: implementation of CHECK method
#587 cnitool: Honor interface name supplied via CNI_IFNAME environment variable.
#600 cnitool: validate correct number of args
#617 Don't copy gw from IP4.Gateway to Route.GW When converting from 0.2.0
#636 add PrintTo method to Result interface

Documentation & Convention changes:
#492 roadmap: add 1.0 items and clean things up
#493 docs: add Governance procedure documentation
#495 Spec lists git tags pointing to old spec versions
#497 add the "ips" arg
#504 governance: add notes about public voting
#525 add new ipRanges capability.
#556 Conventions: add bandwidth limits
#639 Update conventions.md to include dns capability
#597 CONVENTIONS: add support for IP prefixes

Build and test changes:
#489 Release: clean the builddir when building.
#499,#538,#592 Golang versions: add 1.10, 1.11, drop 1.7 and 1.8
#501 Test all non-vendored packages
#508 cnitool: generate container id from the netns path
#514 Remove vendor directory
#515 Add CI for Windows
#535 tests: remove netns handling

Plus many more changes to fix typos, add 3rd-party plugins, etc. Full list of changes here.
Many thanks to the 50 contributors who helped make this release possible.

Assets 2
Mar 13, 2019
Merge pull request #626 from opensvc/arnaudveron-opensvc-addon
Add OpenSVC to the list of container runtimes
Jun 13, 2018
Merge pull request #558 from dcbw/libcni-exec-interface
libcni: make exec handling an interface for better downstream testing
May 31, 2018
Merge pull request #557 from containernetworking/if-name-matters
Network interface name matters, updated

@squeed squeed released this Aug 17, 2017 · 225 commits to master since this release

The 0.6.0 CNI release is a major packaging release, with some minor bugfixes and improvements to the Go implementation.

Important: the plugins have been separated to a separate repository. You should update any build scripts accordingly. This repository contains only the golang implementation of the spec, for use in plugins and runtimes.

This release does not change the spec, which remains at v0.3.1.

Many thanks to the 20 contributors who helped make this release possible.

Documentation & Convention changes:
#427 Conventions: add convention around chaining interfaces
#487 README plugins list: add Linen CNI plugin
#473 Update and document release process
#472 Add CNCF reference in README
#465 Add Code of Conduct
#430 Update main title from "Proposal" to "Specification"

Other changes of note:
#482 cnitool: add support for CNI_ARGS
#481 scripts/release.sh: Add in s390x architecture
#460 pkg/types: return error instead of crashing when code supplies an incompatible type to types.LoadArgs()
#477 types: fix marshalling of omitted "interfaces" key in IPConfig JSON
#475 pkg/invoke: backfill tests of delegate add & del
#406 Return cni.type.Error instead of plain error
#470 Vagrantfile updates
#464 pkg: move packages from cni to plugins
#461 pkg/invoke: ensure that custom env vars are prepended to the env
#465 Add Code of Conduct
#457 plugins: moved to containernetworking/plugins
#450 cniVersion and config structure mismatch
#445 Add cniVersion to Result
#433 scripts: cleanup() should rm net container in docker-run.sh
#440 cnitool: support capablity args

Assets 26
Pre-release
Pre-release

@rosenhouse rosenhouse released this Aug 12, 2017 · 225 commits to master since this release

We're pleased to make available the v0.6.0-rc2 release of the CNI libraries and tools.

This release does not update the spec, it remains at version 0.3.1.

The main change in this release is the removal of the plugins. They are now hosted in (and released from) https://github.com/containernetworking/plugins

If you hit any problems please raise issues on Github or use the following channels for support.

PRs merged since last release (v0.5.2...v0.6.0-rc2)

New with v0.6.0-rc2
#487 README plugins list: add Linen CNI plugin
#482 cnitool: add support for CNI_ARGS
#481 scripts/release.sh: Add in s390x architecture

New with v0.6.0-rc1
#427 Conventions: add convention around chaining interfaces
#460 pkg/types: return error instead of crashing when code supplies an incompatible type to types.LoadArgs()
#473 Update and document release process
#477 types: fix marshalling of omitted "interfaces" key in IPConfig JSON
#478 Update note about next Community Sync, 2017-06-21
#474 readme updates
#475 pkg/invoke: backfill tests of delegate add & del
#406 Return cni.type.Error instead of plain error
#472 Add CNCF reference in README
#471 Clean up vendor
#470 Vagrantfile updates
#467 Clarify first released spec with 'args' was 0.2.0
#464 pkg: move packages from cni to plugins
#469 Documentation: Update README.md to reflect plugin split
#461 pkg/invoke: ensure that custom env vars are prepended to the env
#465 Add Code of Conduct
#463 readme plugins list: add Silk CNI plugin
#462 Readme: add link to nuage plugin.
#457 plugins: moved to containernetworking/plugins
#455 Add OpenShift to the list of container runtimes that support CNI
#452 Add CNI Logo to README
#425 scripts/release-with-rkt.sh Minor improvements
#450 cniVersion and config structure mismatch
#445 Add cniVersion to Result
#447 Fix invalid json
#433 scripts: cleanup() should rm net container in docker-run.sh
#440 cnitool: support capablity args
#439 vendor: Update vishvanana/netlink dependency.
#391 Validate rangeStart and rangeEnd specified in conf
#435 Fixed table formatting
#432 README: build the plugins using ./build.sh, not ./build
#430 Wondering if this is still a proposal?

Assets 2
Pre-release

@tomdee tomdee released this Jul 5, 2017 · 231 commits to master since this release

We're pleased to make available the v0.6.0-rc1 release of the CNI libraries and tools.

This release does not update the spec, it remains at version 0.3.1.

The main change in this release is the removal of the plugins. They are now hosted in (and released from) https://github.com/containernetworking/plugins

If you hit any problems please raise issues on Github or use the following channels for support.

PRs merged since last release (v0.5.2...v0.6.0-rc1)
#427 Conventions: add convention around chaining interfaces
#460 pkg/types: return error instead of crashing when code supplies an incompatible type to types.LoadArgs()
#473 Update and document release process
#477 types: fix marshalling of omitted "interfaces" key in IPConfig JSON
#478 Update note about next Community Sync, 2017-06-21
#474 readme updates
#475 pkg/invoke: backfill tests of delegate add & del
#406 Return cni.type.Error instead of plain error
#472 Add CNCF reference in README
#471 Clean up vendor
#470 Vagrantfile updates
#467 Clarify first released spec with 'args' was 0.2.0
#464 pkg: move packages from cni to plugins
#469 Documentation: Update README.md to reflect plugin split
#461 pkg/invoke: ensure that custom env vars are prepended to the env
#465 Add Code of Conduct
#463 readme plugins list: add Silk CNI plugin
#462 Readme: add link to nuage plugin.
#457 plugins: moved to containernetworking/plugins
#455 Add OpenShift to the list of container runtimes that support CNI
#452 Add CNI Logo to README
#425 scripts/release-with-rkt.sh Minor improvements
#450 cniVersion and config structure mismatch
#445 Add cniVersion to Result
#447 Fix invalid json
#433 scripts: cleanup() should rm net container in docker-run.sh
#440 cnitool: support capablity args
#439 vendor: Update vishvanana/netlink dependency.
#391 Validate rangeStart and rangeEnd specified in conf
#435 Fixed table formatting
#432 README: build the plugins using ./build.sh, not ./build
#430 Wondering if this is still a proposal?

Assets 26
You can’t perform that action at this time.