Commit Graph

13124 Commits

Author SHA1 Message Date
Wei Fu
b0133882f5 bump critools into ca1571e6edd116b2c95f52e3dfa0b4779b74223a
It is to fix #7264 with kubernetes-sigs/cri-tools#1026. Currently, it
is not release tag but it can save our time to prevent from rerun CI manually.
There will be follow-up when kubernetes v1.26 releases.

REF: https://github.com/kubernetes/sig-release/tree/master/releases/release-1.26#summary

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2022-11-15 08:47:38 +08:00
Kazuyoshi Kato
1e200b149a
Merge pull request #7523 from ginglis13/symlink-device
add option to resolve symlinks in WithLinuxDevice
2022-11-14 16:32:46 -08:00
Kazuyoshi Kato
8bb5999738 Remove the outdated comment
While containerd/cgroups is only for Linux, the metrics subcommand works
on Windows.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2022-11-14 21:07:48 +00:00
Kazuyoshi Kato
dd86128e0d Convert hcsshim's stats to cgroups' stats
Since hcsshim still uses containerd/cgroups 1.x which uses
gogo/protobuf.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2022-11-14 21:07:48 +00:00
Kazuyoshi Kato
6596a70861 Use github.com/containerd/cgroups/v3 to remove gogo
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2022-11-14 21:07:48 +00:00
Kazuyoshi Kato
f1162b77a3
Merge pull request #7663 from lucacome/bump-k8s-deps
Bump k8s.io deps to v0.25.4
2022-11-14 12:09:56 -08:00
Phil Estes
af37da71e3
Merge pull request #7659 from AkihiroSuda/static-release
Release: add static binaries
2022-11-14 10:02:48 -05:00
Phil Estes
28d5f9c334
Merge pull request #7662 from lucacome/bump-otel-deps
Bump OpenTelemetry contrib to v0.36.4
2022-11-14 10:01:03 -05:00
Luca Comellini
38ad785cef
Bump k8s.io deps to v0.25.4
Signed-off-by: Luca Comellini <luca.com@gmail.com>
2022-11-11 15:13:35 -08:00
Luca Comellini
bd66f588bf
Bump OpenTelemetry contrib to v0.36.4
Signed-off-by: Luca Comellini <luca.com@gmail.com>
2022-11-11 15:10:38 -08:00
Akihiro Suda
3fca677c19
Release: add static binaries
Fix issue 7296

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2022-11-12 03:52:37 +09:00
Phil Estes
135af6d9ab
Merge pull request #7661 from liubin/fix-vec-alloc
Fix slice append error (`spec.Linux.Resources.HugepageLimits`)
2022-11-11 12:32:29 -05:00
bin liu
0c63c42f81 Fix slice append error
In golang when copy a slice, if the slice is initialized with a
desired length, then appending to it will cause the size double.

Signed-off-by: bin liu <liubin0329@gmail.com>
2022-11-12 00:22:04 +08:00
Phil Estes
0f401197c8
Merge pull request #7660 from lucacome/bump-otel-deps
Bump OpenTelemetry to v1.11.1
2022-11-11 10:22:33 -05:00
Luca Comellini
b829e6f2d3
Bump OpenTelemetry to v1.11.1
Signed-off-by: Luca Comellini <luca.com@gmail.com>
2022-11-10 22:15:10 -08:00
Fu Wei
f226fa895e
Merge pull request #5263 from pacoxu/add-metrics-scheduler
feature: add gc scheduler metrics collection count
2022-11-11 12:11:56 +08:00
Fu Wei
9fffa8c712
Merge pull request #7629 from wzshiming/feat/pprof-debug
Add `--debug` args to all subcommands of `ctr pprof`
2022-11-11 11:47:57 +08:00
Fu Wei
669230cbd6
Merge pull request #7655 from swagatbora90/tracing-refactor
Add a thin wrapper around otel Span object
2022-11-11 11:45:28 +08:00
Fu Wei
b5253df3ed
Merge pull request #7643 from lucacome/bump-grpc
Bump grpc to v1.50.1
2022-11-11 11:26:18 +08:00
Swagat Bora
7def13dde3 Add a thin wrapper around otel Span object
Signed-off-by: Swagat Bora <sbora@amazon.com>
2022-11-11 01:28:27 +00:00
Kazuyoshi Kato
02484f5e05
Merge pull request #7631 from thaJeztah/strings_cut
replace strings.Split(N) for strings.Cut() or alternatives
2022-11-10 15:28:22 -08:00
Maksym Pavlenko
1880b69759
Merge pull request #7642 from trexorobotics/oci-realtime-opts
add oci.WithCPURT
2022-11-10 09:39:57 -08:00
Maksym Pavlenko
7eeaed8137
Merge pull request #7590 from Burning1020/sc-switch
Sandbox API: Add a new mode config for sandbox controller impls
2022-11-10 09:21:47 -08:00
Luca Comellini
ab194e65f9
Bump grpc to v1.50.1
Signed-off-by: Luca Comellini <luca.com@gmail.com>
2022-11-09 18:30:31 -08:00
Samuel Karp
6948d89e56
Merge pull request #7625 from AdamKorcz/fuzz2 2022-11-09 17:45:58 -08:00
AdamKorcz
b742aa2e77 fuzzing: bump go-fuzz-headers
Signed-off-by: AdamKorcz <adam@adalogics.com>
2022-11-09 14:30:30 +00:00
Shiming Zhang
91e295d766 Add --debug args
Signed-off-by: Shiming Zhang <wzshiming@foxmail.com>
2022-11-09 17:43:53 +08:00
rongfu.leng
0f54c47401 feat add sandbox api status func
Signed-off-by: rongfu.leng <rongfu.leng@daocloud.io>
2022-11-09 14:36:46 +08:00
Zhang Tianyang
c953eecb79 Sandbox API: Add a new mode config for sandbox controller impls
Add a new config as sandbox controller mod, which can be either
"podsandbox" or "shim". If empty, set it to default "podsandbox"
when CRI plugin inits.

Signed-off-by: Zhang Tianyang <burning9699@gmail.com>
2022-11-09 12:12:39 +08:00
Kazuyoshi Kato
d4b3b54540
Merge pull request #7637 from lucacome/bump-k8s-deps
Bump k8s.io deps to v0.25.3
2022-11-08 10:13:53 -08:00
Kazuyoshi Kato
3fd52c852f
Merge pull request #7641 from thaJeztah/fix_usage_of_deprecated_funcs
Remove uses of deprecated go-digest.NewDigestFromHex, go-digest.Digest.Hex
2022-11-08 10:13:13 -08:00
Phil Estes
b850554be2
Merge pull request #7640 from nikitar/main
Extra documentation for content interfaces
2022-11-08 11:50:22 -05:00
Maksym Pavlenko
530c675841
Merge pull request #7638 from mxpv/perm
Fix shim socket permissions on Darwin
2022-11-08 07:34:02 -08:00
Merlin Ran
99ac7a7714
add oci.WithCPURT
to set realtime scheduling options.

Signed-off-by: Merlin Ran <merlinran@gmail.com>
2022-11-08 09:39:27 -05:00
Sebastiaan van Stijn
717aa5929d
Remove uses of deprecated go-digest.NewDigestFromHex, go-digest.Digest.Hex
Both of these were deprecated in 55f675811a,
but the format of the GoDoc comments didn't follow the correct format, which
caused them not being picked up by tools as "deprecated".

This patch updates uses in the codebase to use the alternatives.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-08 14:47:05 +01:00
Maksym Pavlenko
3a9044f240 Rename darwin-kubelet to containerd
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-11-07 22:58:25 -08:00
Nikita Rybak
5f48e00af1 Extra documentation for content interfaces.
Fixes: #7305

Signed-off-by: Nikita Rybak <nikita.rybak@gmail.com>
2022-11-08 15:55:39 +11:00
Luca Comellini
202abf8fc1
Bump k8s.io deps to v0.25.3
Signed-off-by: Luca Comellini <luca.com@gmail.com>
2022-11-07 15:30:06 -08:00
Derek McGowan
d1564fec5b
Merge pull request #7614 from huoqifeng/s390x
s390x: build and package s390x bin in release assets
2022-11-07 12:08:43 -08:00
Derek McGowan
816f7086bd
Merge pull request #7513 from cpuguy83/nix_mount_fork
Replace mount fork hack with CLONE_FS
2022-11-07 09:35:40 -08:00
Sebastiaan van Stijn
eaedadbed0
replace strings.Split(N) for strings.Cut() or alternatives
Go 1.18 and up now provides a strings.Cut() which is better suited for
splitting key/value pairs (and similar constructs), and performs better:

```go
func BenchmarkSplit(b *testing.B) {
        b.ReportAllocs()
        data := []string{"12hello=world", "12hello=", "12=hello", "12hello"}
        for i := 0; i < b.N; i++ {
                for _, s := range data {
                        _ = strings.SplitN(s, "=", 2)[0]
                }
        }
}

func BenchmarkCut(b *testing.B) {
        b.ReportAllocs()
        data := []string{"12hello=world", "12hello=", "12=hello", "12hello"}
        for i := 0; i < b.N; i++ {
                for _, s := range data {
                        _, _, _ = strings.Cut(s, "=")
                }
        }
}
```

    BenchmarkSplit
    BenchmarkSplit-10            8244206               128.0 ns/op           128 B/op          4 allocs/op
    BenchmarkCut
    BenchmarkCut-10             54411998                21.80 ns/op            0 B/op          0 allocs/op

While looking at occurrences of `strings.Split()`, I also updated some for alternatives,
or added some constraints; for cases where an specific number of items is expected, I used `strings.SplitN()`
with a suitable limit. This prevents (theoretical) unlimited splits.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 10:02:25 +01:00
Sebastiaan van Stijn
f90219d472
services/server/config: TestMergeConfigs(): use correctly formatted values
This updates the test to:

- Use correctly formatted values for RequiredPlugins and DisabledPlugins (values
  are expected to have a `io.containerd.` prefix). While not needed for the test
  to pass (no validation is performed), it's good to have these values in the
  correct format (in case we want to add validation at this stage).
- Set a `Version` for both (as version 1 / no version was deprecated)

The `Version` field in this test was used to verify the "integer override"
behavior; setting "Version: 2" for both would no longer cover that case. As there
are only 2 integer fields in the config (Version and OOMScore) and OOMScore was
already used in the test, I added separate test-cases for that.

Looking at the test, we should consider what we want the behaviour to be if the
override file does not specify a version (implicitly: version 1), or if the version
is different from the original one; do we want mergeConfig() to produce an error
when merging a v2 config with a v1 config (or v3 with v2)?

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 10:01:28 +01:00
Antonio Ojea
4866d8ba43
registry: support ipv6 addresses
Current registry reference use a subset of dns and IPv4 addresses to
represent a registry domain.

Since registries are mostly compatible with rfc3986, that defines the
URI generic syntax, this adds support for IPv6 enclosed in squared
brackets based on the mentioned rfc.

The regexp is only expanded to match on IPv6 addreses enclosed between
square brackets, considering only regular IPv6 addresses represented
as compressed or uncompressed, excluding special IPv6 address
representations.

Signed-off-by: Antonio Ojea <antonio.ojea.garcia@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:39:01 +01:00
Paul Cacheux
8bec2b6529
Replace references to re with regexp.MustCompile
Signed-off-by: Paul Cacheux <paul.cacheux@datadoghq.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:38:54 +01:00
Paul Cacheux
5c510e47a2
Improve how reference regexps are built
Previous implementation was doing a lot of string -> regexp -> string
conversions

Signed-off-by: Paul Cacheux <paul.cacheux@datadoghq.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:38:46 +01:00
Dave
98ff272654
Clarify repo name regex intention
Add context to comment to explain the repo name regex in addition to describing it.

Signed-off-by: David Warshaw <david.warshaw@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:38:39 +01:00
Sebastiaan van Stijn
2a8a53178c
go.mod: change imports to github.com/distribution/distribution/v3
Go 1.13 and up enforce import paths to be versioned if a project
contains a go.mod and has released v2 or up.

The current v2.x branches (and releases) do not yet have a go.mod,
and therefore are still allowed to be imported with a non-versioned
import path (go modules add a `+incompatible` annotation in that case).

However, now that this project has a `go.mod` file, incompatible
import paths will not be accepted by go modules, and attempting
to use code from this repository will fail.

This patch uses `v3` for the import-paths (not `v2`), because changing
import paths itself is a breaking change, which means that  the
next release should increment the "major" version to comply with
SemVer (as go modules dictate).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:38:37 +01:00
Chuanying Du
a97eb69556
Update repo normalize error message to include the name of the repo.
Signed-off-by: Chuanying Du <cydu@google.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:38:32 +01:00
Aviral Takkar
b979f00692
Fix bug in parsing domain from repository reference
Signed-off-by: Aviral Takkar <aviral26@users.noreply.github.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:38:24 +01:00
Sebastiaan van Stijn
f966602867
reference/docker: add unit-tests from upstream distribution/distribution
This copies the unit-tests from the distribution repository from the time when
the package was forked. The tests are copied from this commit:
0d3efadf01

Tests for ParseAnyReferenceWithSet() have been removed, as that function has not
been included in the containerd fork.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-11-07 00:17:31 +01:00