Sync from SUSE:ALP:Source:Standard:1.0 cni revision 2f7877d974ac4e17d77ef611d670faf0
This commit is contained in:
commit
e88a07bebe
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
167
0001-fix-upstream-CVE-2021-38561.patch
Normal file
167
0001-fix-upstream-CVE-2021-38561.patch
Normal file
@ -0,0 +1,167 @@
|
|||||||
|
From 383b2e75a7a4198c42f8f87833eefb772868a56f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Russ Cox <rsc@golang.org>
|
||||||
|
Date: Mon, 9 Aug 2021 15:09:12 -0400
|
||||||
|
Subject: [PATCH] language: turn parsing panics into ErrSyntax
|
||||||
|
|
||||||
|
We keep finding new panics in the language parser.
|
||||||
|
Limit the damage by reporting those inputs as syntax errors.
|
||||||
|
|
||||||
|
Change-Id: I786fe127c3df7e4c8e042d15095d3acf3c4e4a50
|
||||||
|
Reviewed-on: https://go-review.googlesource.com/c/text/+/340830
|
||||||
|
Trust: Russ Cox <rsc@golang.org>
|
||||||
|
Run-TryBot: Russ Cox <rsc@golang.org>
|
||||||
|
TryBot-Result: Go Bot <gobot@golang.org>
|
||||||
|
Reviewed-by: Roland Shoemaker <roland@golang.org>
|
||||||
|
---
|
||||||
|
internal/language/language.go | 43 +++++++++++++++++++++++++++++++----
|
||||||
|
internal/language/parse.go | 7 ++++++
|
||||||
|
language/parse.go | 22 ++++++++++++++++++
|
||||||
|
3 files changed, 68 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/internal/language/language.go b/internal/language/language.go
|
||||||
|
index f41aedcfc..6105bc7fa 100644
|
||||||
|
--- a/internal/language/language.go
|
||||||
|
+++ b/internal/language/language.go
|
||||||
|
@@ -251,6 +251,13 @@ func (t Tag) Parent() Tag {
|
||||||
|
|
||||||
|
// ParseExtension parses s as an extension and returns it on success.
|
||||||
|
func ParseExtension(s string) (ext string, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ ext = ""
|
||||||
|
+ err = ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
scan := makeScannerString(s)
|
||||||
|
var end int
|
||||||
|
if n := len(scan.token); n != 1 {
|
||||||
|
@@ -461,7 +468,14 @@ func (t Tag) findTypeForKey(key string) (start, sep, end int, hasExt bool) {
|
||||||
|
// ParseBase parses a 2- or 3-letter ISO 639 code.
|
||||||
|
// It returns a ValueError if s is a well-formed but unknown language identifier
|
||||||
|
// or another error if another error occurred.
|
||||||
|
-func ParseBase(s string) (Language, error) {
|
||||||
|
+func ParseBase(s string) (l Language, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ l = 0
|
||||||
|
+ err = ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
if n := len(s); n < 2 || 3 < n {
|
||||||
|
return 0, ErrSyntax
|
||||||
|
}
|
||||||
|
@@ -472,7 +486,14 @@ func ParseBase(s string) (Language, error) {
|
||||||
|
// ParseScript parses a 4-letter ISO 15924 code.
|
||||||
|
// It returns a ValueError if s is a well-formed but unknown script identifier
|
||||||
|
// or another error if another error occurred.
|
||||||
|
-func ParseScript(s string) (Script, error) {
|
||||||
|
+func ParseScript(s string) (scr Script, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ scr = 0
|
||||||
|
+ err = ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
if len(s) != 4 {
|
||||||
|
return 0, ErrSyntax
|
||||||
|
}
|
||||||
|
@@ -489,7 +510,14 @@ func EncodeM49(r int) (Region, error) {
|
||||||
|
// ParseRegion parses a 2- or 3-letter ISO 3166-1 or a UN M.49 code.
|
||||||
|
// It returns a ValueError if s is a well-formed but unknown region identifier
|
||||||
|
// or another error if another error occurred.
|
||||||
|
-func ParseRegion(s string) (Region, error) {
|
||||||
|
+func ParseRegion(s string) (r Region, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ r = 0
|
||||||
|
+ err = ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
if n := len(s); n < 2 || 3 < n {
|
||||||
|
return 0, ErrSyntax
|
||||||
|
}
|
||||||
|
@@ -578,7 +606,14 @@ type Variant struct {
|
||||||
|
|
||||||
|
// ParseVariant parses and returns a Variant. An error is returned if s is not
|
||||||
|
// a valid variant.
|
||||||
|
-func ParseVariant(s string) (Variant, error) {
|
||||||
|
+func ParseVariant(s string) (v Variant, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ v = Variant{}
|
||||||
|
+ err = ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
s = strings.ToLower(s)
|
||||||
|
if id, ok := variantIndex[s]; ok {
|
||||||
|
return Variant{id, s}, nil
|
||||||
|
diff --git a/internal/language/parse.go b/internal/language/parse.go
|
||||||
|
index c696fd0bd..47ee0fed1 100644
|
||||||
|
--- a/internal/language/parse.go
|
||||||
|
+++ b/internal/language/parse.go
|
||||||
|
@@ -232,6 +232,13 @@ func Parse(s string) (t Tag, err error) {
|
||||||
|
if s == "" {
|
||||||
|
return Und, ErrSyntax
|
||||||
|
}
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ t = Und
|
||||||
|
+ err = ErrSyntax
|
||||||
|
+ return
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
if len(s) <= maxAltTaglen {
|
||||||
|
b := [maxAltTaglen]byte{}
|
||||||
|
for i, c := range s {
|
||||||
|
diff --git a/language/parse.go b/language/parse.go
|
||||||
|
index 11acfd885..59b041008 100644
|
||||||
|
--- a/language/parse.go
|
||||||
|
+++ b/language/parse.go
|
||||||
|
@@ -43,6 +43,13 @@ func Parse(s string) (t Tag, err error) {
|
||||||
|
// https://www.unicode.org/reports/tr35/#Unicode_Language_and_Locale_Identifiers.
|
||||||
|
// The resulting tag is canonicalized using the canonicalization type c.
|
||||||
|
func (c CanonType) Parse(s string) (t Tag, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ t = Tag{}
|
||||||
|
+ err = language.ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
tt, err := language.Parse(s)
|
||||||
|
if err != nil {
|
||||||
|
return makeTag(tt), err
|
||||||
|
@@ -79,6 +86,13 @@ func Compose(part ...interface{}) (t Tag, err error) {
|
||||||
|
// tag is returned after canonicalizing using CanonType c. If one or more errors
|
||||||
|
// are encountered, one of the errors is returned.
|
||||||
|
func (c CanonType) Compose(part ...interface{}) (t Tag, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ t = Tag{}
|
||||||
|
+ err = language.ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
var b language.Builder
|
||||||
|
if err = update(&b, part...); err != nil {
|
||||||
|
return und, err
|
||||||
|
@@ -142,6 +156,14 @@ var errInvalidWeight = errors.New("ParseAcceptLanguage: invalid weight")
|
||||||
|
// Tags with a weight of zero will be dropped. An error will be returned if the
|
||||||
|
// input could not be parsed.
|
||||||
|
func ParseAcceptLanguage(s string) (tag []Tag, q []float32, err error) {
|
||||||
|
+ defer func() {
|
||||||
|
+ if recover() != nil {
|
||||||
|
+ tag = nil
|
||||||
|
+ q = nil
|
||||||
|
+ err = language.ErrSyntax
|
||||||
|
+ }
|
||||||
|
+ }()
|
||||||
|
+
|
||||||
|
var entry string
|
||||||
|
for s != "" {
|
||||||
|
if entry, s = split(s, ','); entry == "" {
|
4
99-loopback.conf
Normal file
4
99-loopback.conf
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"cniVersion": "0.4.0",
|
||||||
|
"type": "loopback"
|
||||||
|
}
|
20
_service
Normal file
20
_service
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<services>
|
||||||
|
<service name="tar_scm" mode="disabled">
|
||||||
|
<param name="url">https://github.com/containernetworking/cni.git</param>
|
||||||
|
<param name="scm">git</param>
|
||||||
|
<param name="filename">cni</param>
|
||||||
|
<param name="exclude">.git</param>
|
||||||
|
<param name="versionformat">@PARENT_TAG@</param>
|
||||||
|
<param name="revision">v1.1.2</param>
|
||||||
|
<param name="versionrewrite-pattern">v(.*)</param>
|
||||||
|
<param name="changesgenerate">enable</param>
|
||||||
|
</service>
|
||||||
|
<service name="recompress" mode="disabled">
|
||||||
|
<param name="file">cni-*.tar</param>
|
||||||
|
<param name="compression">gz</param>
|
||||||
|
</service>
|
||||||
|
<service name="set_version" mode="disabled">
|
||||||
|
<param name="basename">cni</param>
|
||||||
|
</service>
|
||||||
|
<service name="go_modules" mode="disabled"/>
|
||||||
|
</services>
|
4
_servicedata
Normal file
4
_servicedata
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<servicedata>
|
||||||
|
<service name="tar_scm">
|
||||||
|
<param name="url">https://github.com/containernetworking/cni.git</param>
|
||||||
|
<param name="changesrevision">3363d143688bb83ca18489ac8b9dc204c1d49c4a</param></service></servicedata>
|
BIN
cni-1.1.2.tar.gz
(Stored with Git LFS)
Normal file
BIN
cni-1.1.2.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
310
cni.changes
Normal file
310
cni.changes
Normal file
@ -0,0 +1,310 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 9 09:40:04 UTC 2023 - Dan Čermák <dcermak@suse.com>
|
||||||
|
|
||||||
|
- Bump BuildRequired golang version to >= 1.21, fixes bsc#1216006
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Dec 30 11:08:28 UTC 2022 - Andrea Manzini <andrea.manzini@suse.com>
|
||||||
|
|
||||||
|
- added patch 0001-fix-upstream-CVE-2021-38561.patch for [bsc#1206711]
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Dec 29 14:06:02 UTC 2022 - andrea.manzini@suse.com
|
||||||
|
|
||||||
|
- Update to version 1.1.2:
|
||||||
|
* Fix successfully unmarshalled nil raw result
|
||||||
|
* spec: fix format
|
||||||
|
* invoke: if Result CNIVersion is empty use netconf CNIVersion
|
||||||
|
* cnitool: address golint error
|
||||||
|
* libcni: handle empty version when parsing version
|
||||||
|
* Switch to ginkgo/v2
|
||||||
|
* add security heading to README
|
||||||
|
* Maintainers: add Mike Zappa
|
||||||
|
* introduce hybridnet to thrid-party plugins
|
||||||
|
* Fix incorrect pointer inputs to `json.Unmarshal`
|
||||||
|
* 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
|
||||||
|
* Spec: Container runtime shall tear down namespaces
|
||||||
|
* Update README.md
|
||||||
|
* Updated README.md to include Netlox loxilight CNI
|
||||||
|
* documentation: update Multus link in README.md to point to the k8snetworkplumbingwg repository
|
||||||
|
* [exec-plugins]: support plugin lists
|
||||||
|
* skel: remove superfluous err nil check in (*dispatcher).pluginMain
|
||||||
|
* Remove Gabe Rosenhouse as maintainer
|
||||||
|
* skel: print out CNI versions supported in help text.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 10 14:06:19 UTC 2022 - Andrea Manzini <andrea.manzini@suse.com>
|
||||||
|
|
||||||
|
- Update to version 1.1.2:
|
||||||
|
* spec: fix format
|
||||||
|
* libcni: handle empty version when parsing version
|
||||||
|
* [exec-plugins]: support plugin lists
|
||||||
|
|
||||||
|
This is a minor update to the CNI libraries and tooling.
|
||||||
|
This does not bump the protocol / spec version, which remains at v1.0.0
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 26 11:05:40 UTC 2022 - Enrico Belleri <idesmi@protonmail.com>
|
||||||
|
|
||||||
|
- Update to version v1.0.1:
|
||||||
|
* Rewritten spec
|
||||||
|
+ non-List configurations are removed
|
||||||
|
+ the version field in the interfaces array was redundant and
|
||||||
|
is removed
|
||||||
|
* libcni improvements
|
||||||
|
- Employ RPM macros.go where feasible
|
||||||
|
- Use vendor tarball
|
||||||
|
- Remove ./build.sh
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 31 10:38:40 UTC 2021 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||||
|
|
||||||
|
- Update to version 0.8.1:
|
||||||
|
* This is a security release that fixes a single bug: bsc#1181961 aka CVE-2021-20206
|
||||||
|
- Tighten up plugin-finding logic (#811).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Apr 24 09:19:04 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- use buildmode=pie (cnitool is installed into sbindir)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 16 05:16:27 UTC 2021 - Jeff Kowalczyk <jkowalczyk@suse.com>
|
||||||
|
|
||||||
|
- Set GO111MODULE=auto to build with go1.16+
|
||||||
|
* Default changed to GO111MODULE=on in go1.16
|
||||||
|
* Set temporarily until using upstream release with go.mod
|
||||||
|
* Drop BuildRequires: golang-packaging not currently using macros
|
||||||
|
* Add BuildRequires: golang(API) >= 1.13 recommended dependency expression
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Oct 1 12:47:37 UTC 2020 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||||
|
|
||||||
|
- Update to version 0.8.0:
|
||||||
|
* Specification and Conventions changes
|
||||||
|
+ docs: add ips and mac to well-known capabilities
|
||||||
|
+ add interface name validation
|
||||||
|
+ Add GUID to well known Capabilities
|
||||||
|
+ Add DeviceID attribute to RuntimeConfig
|
||||||
|
+ Typo fixes for infiniband GUID
|
||||||
|
+ Fix linting issues in docs, add headers to json example, update errors into table
|
||||||
|
* Documentation changes
|
||||||
|
+ Update cnitool docs
|
||||||
|
+ Remove extra ',' chars which makes conflist examples invalid.
|
||||||
|
* libcni changes
|
||||||
|
+ Remove Result.String method
|
||||||
|
+ libcni: add config caching [v2]
|
||||||
|
+ clean up : fix staticcheck warnings
|
||||||
|
+ libcni: add InitCNIConfigWithCacheDir() and deprecate RuntimeConfig.CacheDir
|
||||||
|
+ skel: clean up errors in skel and add some well-known error codes
|
||||||
|
+ libcni: find plugin in exec
|
||||||
|
+ validate containerID and networkName
|
||||||
|
+ skel: remove needless functions and types
|
||||||
|
+ libcni: also cache IfName
|
||||||
|
+ libcni: fix cache file 'result' key name
|
||||||
|
+ Bump Go version to 1.13
|
||||||
|
+ When CNI version isn't supplied in config, use default.
|
||||||
|
+ intercept netplugin std error
|
||||||
|
+ invoke: capture and return stderr if plugin exits unexpectedly
|
||||||
|
+ Retry exec commands on text file busy
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 13 10:32:53 UTC 2020 - Sascha Grunert <sgrunert@suse.com>
|
||||||
|
|
||||||
|
- Set correct CNI version for 99-loopback.conf
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jul 16 07:36:57 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||||
|
|
||||||
|
- Update to version 0.7.1 (bsc#1160460):
|
||||||
|
* Library changes:
|
||||||
|
+ invoke : ensure custom envs of CNIArgs are prepended to process envs
|
||||||
|
+ add GetNetworkListCachedResult to CNI interface
|
||||||
|
+ delegate : allow delegation funcs override CNI_COMMAND env automatically in heritance
|
||||||
|
* Documentation & Convention changes:
|
||||||
|
+ Update cnitool documentation for spec v0.4.0
|
||||||
|
+ Add cni-route-override to CNI plugin list
|
||||||
|
* Build and test changes:
|
||||||
|
+ Release: bump go to v1.12
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 17 12:26:06 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||||
|
|
||||||
|
- Update to version 0.7.0:
|
||||||
|
* Spec changes:
|
||||||
|
+ Use more RFC2119 style language in specification (must, should...)
|
||||||
|
+ add notes about ADD/DEL ordering
|
||||||
|
+ Make the container ID required and unique.
|
||||||
|
+ remove the version parameter from ADD and DEL commands.
|
||||||
|
+ Network interface name matters
|
||||||
|
+ be explicit about optional and required structure members
|
||||||
|
+ add CHECK method
|
||||||
|
+ Add a well-known error for "try again"
|
||||||
|
+ SPEC.md: clarify meaning of 'routes'
|
||||||
|
* Library changes:
|
||||||
|
+ pkg/types: Makes IPAM concrete type
|
||||||
|
+ libcni: return error if Type is empty
|
||||||
|
+ skel: VERSION shouldn't block on stdin
|
||||||
|
+ non-pointer instances of types.Route now correctly marshal to JSON
|
||||||
|
+ libcni: add ValidateNetwork and ValidateNetworkList functions
|
||||||
|
+ pkg/skel: return error if JSON config has no network name
|
||||||
|
+ skel: add support for plugin version string
|
||||||
|
+ libcni: make exec handling an interface for better downstream testing
|
||||||
|
+ libcni: api now takes a Context to allow operations to be timed out or cancelled
|
||||||
|
+ types/version: add helper to parse PrevResult
|
||||||
|
+ skel: only print about message, not errors
|
||||||
|
+ skel,invoke,libcni: implementation of CHECK method
|
||||||
|
+ cnitool: Honor interface name supplied via CNI_IFNAME environment variable.
|
||||||
|
+ cnitool: validate correct number of args
|
||||||
|
+ Don't copy gw from IP4.Gateway to Route.GW When converting from 0.2.0
|
||||||
|
+ add PrintTo method to Result interface
|
||||||
|
+ Return a better error when the plugin returns none
|
||||||
|
- Install sleep binary into CNI plugin directory
|
||||||
|
- Restore build.sh script which was removed upstream
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 5 08:21:05 UTC 2018 - dcassany@suse.com
|
||||||
|
|
||||||
|
- Refactor %license usage to a simpler form
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jun 4 11:27:31 UTC 2018 - dcassany@suse.com
|
||||||
|
|
||||||
|
- Make use of %license macro
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 4 11:32:32 UTC 2018 - jmassaguerpla@suse.com
|
||||||
|
|
||||||
|
- Remove creating subvolumes. This should be in another package (kubernetes-kubelet)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 29 11:12:16 UTC 2018 - kmacinnes@suse.com
|
||||||
|
|
||||||
|
- Use full/absolute path for mksubvolume
|
||||||
|
- Change snapper Requires to a Requires(post)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 18 14:46:16 UTC 2018 - kmacinnes@suse.com
|
||||||
|
|
||||||
|
- Add snapper as a requirement, to provide mksubvolume
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 15 16:58:15 UTC 2018 - alvaro.saurin@suse.com
|
||||||
|
|
||||||
|
- Make /var/lib/cni writable
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 19 13:04:22 UTC 2017 - alvaro.saurin@suse.com
|
||||||
|
|
||||||
|
- Remove the dependency with the cni-plugins
|
||||||
|
- Recommend the cni-plugins
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 28 15:15:11 UTC 2017 - opensuse-packaging@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 0.6.0:
|
||||||
|
* Conventions: add convention around chaining interfaces
|
||||||
|
* pkg/types: safer typecasting for TextUnmarshaler when loading args
|
||||||
|
* pkg/types: modify LoadArgs to return a named error when an unmarshalable condition is detected
|
||||||
|
* Update note about next Community Sync, 2017-06-21
|
||||||
|
* types: fix marshalling of omitted "interfaces" key in IPConfig JSON
|
||||||
|
* Update and document release process
|
||||||
|
* scripts/release.sh: Add in s390x architecture
|
||||||
|
* cnitool: add support for CNI_ARGS
|
||||||
|
* README plugins list: add Linen CNI plugin
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Apr 10 12:23:00 UTC 2017 - opensuse-packaging@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 0.5.2:
|
||||||
|
* Rename build script to avoid conflict with bazel
|
||||||
|
* Enable s390x build
|
||||||
|
* Update community sync detail
|
||||||
|
* Added entry for CNI-Genie
|
||||||
|
* travis: shift forward to Go 1.8 and 1.7
|
||||||
|
* spec/plugins: fix 'ip'->'ips' in the spec, bump to 0.3.1
|
||||||
|
* libcni: Improved error messages.
|
||||||
|
* libcni: Fixed tests that were checking error strings.
|
||||||
|
* Documentation: Added documentation for `cnitool`.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 23 10:20:35 UTC 2017 - opensuse-packaging@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 0.5.1:
|
||||||
|
* readme.md: Add link to community sync
|
||||||
|
* pkg/ip: do not leak types from vendored netlink package
|
||||||
|
* pkg/ip: SetupVeth returns net.Interface
|
||||||
|
* pkg/ip: improve docstring for SetupVeth
|
||||||
|
* Added Romana to list of CNI providers...
|
||||||
|
* plugins/meta/flannel: If net config is missing do not return err on DEL
|
||||||
|
* plugins/*: Don't error if the device doesn't exist
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 22 15:35:19 UTC 2017 - alvaro.saurin@suse.com
|
||||||
|
|
||||||
|
- Update to version 0.5.0:
|
||||||
|
* Documentation: Add conventions doc
|
||||||
|
* noop: allow specifying debug file in config JSON
|
||||||
|
* Spec/Conventions: Update to include plugin config
|
||||||
|
* spec: add network configuration list specification
|
||||||
|
* api,libcni: add network config list-based plugin chaining
|
||||||
|
* Update CONVENTIONS.md
|
||||||
|
* skel: adds PluginMainWithError which returns a *types.Error
|
||||||
|
* testutils: pass netConf in for version operations; pass raw result out for tests
|
||||||
|
* types: make Result an interface and move existing Result to separate package
|
||||||
|
* macvlan/ipvlan: use common RenameLink method
|
||||||
|
* plugins/flannel: organize test JSON alphabetically
|
||||||
|
* pkg/ipam: add testcases
|
||||||
|
* spec/plugins: return interface details and multiple IP addresses to runtime
|
||||||
|
* spec, libcni, pkg/invoke: Use OS-agnostic separator when parsing CNI_PATH
|
||||||
|
* pkg/utils/sysctl/sysctl_linux.go: fix build tag.
|
||||||
|
* pkg/utils/sysctl/sysctl_linux.go: fix typo.
|
||||||
|
* invoke: Enable plugin file names with extensions
|
||||||
|
* CONVENTIONS.md: Update details on port-mappings
|
||||||
|
* Update with feedback
|
||||||
|
* More markups
|
||||||
|
* spec: Remove `routes` from Network Configuration
|
||||||
|
* docs: consolidate host-local documentation
|
||||||
|
* pkg/ns: refactored so that builds succeed on non-linux platforms
|
||||||
|
* Fix grammar
|
||||||
|
* plugins/main/ptp: set the Sandbox property on the response
|
||||||
|
* README: List multus as 3rd party plugin
|
||||||
|
* Replace Michael Bridgen with Bryan Boreham
|
||||||
|
* pkg/ns, pkg/types: refactored non linux build fix code to
|
||||||
|
* pkg/ip: refactored so that builds succeed on non-linux platforms
|
||||||
|
* vendor: Update vishvanana/netlink dependency
|
||||||
|
* libcni: up-convert a Config to a ConfigList when no other configs are found.
|
||||||
|
* docs: CNI versioning for 0.3.0 upgrade
|
||||||
|
* docs: Edits to v0.3.0 upgrade guidance
|
||||||
|
* docs: minor improvements to 0.3.0 upgrade guidance
|
||||||
|
* docs: add small upgrade instructions
|
||||||
|
* docs: minor improvements to spec-upgrades
|
||||||
|
* docs: fill-out and correct version conversion table
|
||||||
|
* docs: table formatting is hard
|
||||||
|
* pkg/testutils: return errors after restoring stdout
|
||||||
|
* pkg/types: misc current types testcase cleanups
|
||||||
|
* Minor rewording about default config version
|
||||||
|
* spec,libcni: add support for injecting runtimeConfig into plugin stdin data
|
||||||
|
* Check n.IPAM before use it in LoadIPAMConfig function
|
||||||
|
* do not error if last_reserved_ip is missing for host local ipam
|
||||||
|
* add test for ensuring initial subnet creation does not contain an error
|
||||||
|
* fix unrelated failing tests
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 01 08:52:47 UTC 2017 - opensuse-packaging@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 0.4.0:
|
||||||
|
* plugins/noop: return a helpful message for test authors
|
||||||
|
* host-local: trim whitespace from container IDs and disk file contents
|
||||||
|
* travis: roll forward the versions of Go that we test
|
||||||
|
* MAINTAINERS: hi CaseyC!
|
||||||
|
* ipam/host-local: Move allocator and config to backend
|
||||||
|
* ipam/host-local: add ResolvConf argument for DNS configuration
|
||||||
|
* spec: notice of version
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Feb 23 12:17:48 UTC 2017 - alvaro.saurin@suse.com
|
||||||
|
|
||||||
|
- Initial version
|
||||||
|
|
||||||
|
|
102
cni.spec
Normal file
102
cni.spec
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
#
|
||||||
|
# spec file for package cni
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%global provider_prefix github.com/containernetworking/cni
|
||||||
|
%global import_path %{provider_prefix}
|
||||||
|
%define cni_etc_dir %{_sysconfdir}/cni
|
||||||
|
%define cni_bin_dir %{_libexecdir}/cni
|
||||||
|
%define cni_doc_dir %{_docdir}/cni
|
||||||
|
Name: cni
|
||||||
|
Version: 1.1.2
|
||||||
|
Release: 0
|
||||||
|
Summary: Container Network Interface - networking for Linux containers
|
||||||
|
License: Apache-2.0
|
||||||
|
Group: System/Management
|
||||||
|
URL: https://github.com/containernetworking/cni
|
||||||
|
Source0: %{name}-%{version}.tar.gz
|
||||||
|
Source1: 99-loopback.conf
|
||||||
|
Source2: vendor.tar.gz
|
||||||
|
# PATCH-FIX-UPSTREAM bsc#1206711
|
||||||
|
Patch0: 0001-fix-upstream-CVE-2021-38561.patch
|
||||||
|
BuildRequires: golang-packaging
|
||||||
|
BuildRequires: shadow
|
||||||
|
BuildRequires: systemd-rpm-macros
|
||||||
|
BuildRequires: golang(API) >= 1.21
|
||||||
|
Requires(post): %fillup_prereq
|
||||||
|
Recommends: cni-plugins
|
||||||
|
%{?systemd_requires}
|
||||||
|
|
||||||
|
%description
|
||||||
|
The CNI (Container Network Interface) project consists of a
|
||||||
|
specification and libraries for writing plugins to configure
|
||||||
|
network interfaces in Linux containers, along with a number of
|
||||||
|
supported plugins. CNI concerns itself only with network
|
||||||
|
connectivity of containers and removing allocated resources when
|
||||||
|
the container is deleted. Because of this focus, CNI has a wide
|
||||||
|
range of support and the specification is simple to implement.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -a2 -N
|
||||||
|
pushd vendor/golang.org/x/text
|
||||||
|
%autopatch -p1
|
||||||
|
popd
|
||||||
|
|
||||||
|
%build
|
||||||
|
export GOFLAGS=-mod=vendor
|
||||||
|
%goprep %{import_path}
|
||||||
|
%gobuild libcni
|
||||||
|
%gobuild cnitool
|
||||||
|
for d in plugins/test/*; do
|
||||||
|
if [ -d $d ]; then
|
||||||
|
%gobuild $d
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
%install
|
||||||
|
# install the plugins
|
||||||
|
install -m 755 -d %{buildroot}%{cni_bin_dir}
|
||||||
|
install -D %{_builddir}/go/bin/noop %{buildroot}%{cni_bin_dir}/
|
||||||
|
install -D %{_builddir}/go/bin/sleep %{buildroot}%{cni_bin_dir}/
|
||||||
|
|
||||||
|
# undo a copy: cnitool must go to sbin/
|
||||||
|
install -m 755 -d %{buildroot}%{_sbindir}
|
||||||
|
install -D %{_builddir}/go/bin/cnitool %{buildroot}%{_sbindir}/
|
||||||
|
|
||||||
|
# config
|
||||||
|
install -m 755 -d %{buildroot}%{cni_etc_dir}
|
||||||
|
install -m 755 -d %{buildroot}%{cni_etc_dir}/net.d
|
||||||
|
install -D -p -m 0644 %{SOURCE1} %{buildroot}%{cni_etc_dir}/net.d/99-loopback.conf.sample
|
||||||
|
|
||||||
|
# documentation
|
||||||
|
install -m 755 -d "%{buildroot}%{cni_doc_dir}"
|
||||||
|
|
||||||
|
%post
|
||||||
|
%{fillup_only -n %{name}}
|
||||||
|
|
||||||
|
%files
|
||||||
|
%doc CONTRIBUTING.md README.md DCO
|
||||||
|
%license LICENSE
|
||||||
|
%dir %{cni_etc_dir}
|
||||||
|
%dir %{cni_etc_dir}/net.d
|
||||||
|
%config %{cni_etc_dir}/net.d/*
|
||||||
|
%dir %{cni_bin_dir}
|
||||||
|
%dir %{cni_doc_dir}
|
||||||
|
%{cni_bin_dir}/{noop,sleep}
|
||||||
|
%{_sbindir}/cnitool
|
||||||
|
|
||||||
|
%changelog
|
BIN
vendor.tar.gz
(Stored with Git LFS)
Normal file
BIN
vendor.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user