blob: 99d36f6055647cb7f27f16365a99656bcdc84cf2 [file] [log] [blame]
// Copyright 2020 The Monogon Project Authors.
//
// SPDX-License-Identifier: Apache-2.0
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package main
func depsContainerd(p *planner) {
p.collectOverride(
"github.com/containerd/containerd", "v1.4.3",
buildTags("no_zfs", "no_aufs", "no_devicemapper", "no_btrfs"),
disabledProtoBuild,
).use(
"github.com/BurntSushi/toml",
"github.com/Microsoft/go-winio",
"github.com/beorn7/perks",
"github.com/cespare/xxhash/v2",
"github.com/cilium/ebpf",
"github.com/containerd/btrfs",
"github.com/containerd/console",
"github.com/containerd/continuity",
"github.com/containerd/fifo",
"github.com/containerd/go-cni",
"github.com/containerd/go-runc",
"github.com/containerd/imgcrypt",
"github.com/containers/ocicrypt",
"github.com/containerd/typeurl",
"github.com/coreos/go-systemd/v22",
"github.com/cpuguy83/go-md2man/v2",
"github.com/davecgh/go-spew",
"github.com/docker/docker",
"github.com/docker/go-events",
"github.com/docker/go-metrics",
"github.com/docker/go-units",
"github.com/docker/spdystream",
"github.com/emicklei/go-restful",
"github.com/fullsailor/pkcs7",
"github.com/godbus/dbus/v5",
"github.com/gogo/protobuf",
"github.com/go-logr/logr",
"github.com/google/gofuzz",
"github.com/google/uuid",
"github.com/hashicorp/errwrap",
"github.com/hashicorp/go-multierror",
"github.com/hashicorp/golang-lru",
"github.com/imdario/mergo",
"github.com/json-iterator/go",
"github.com/konsorten/go-windows-terminal-sequences",
"github.com/matttproud/golang_protobuf_extensions",
"github.com/modern-go/concurrent",
"github.com/modern-go/reflect2",
"github.com/opencontainers/go-digest",
"github.com/opencontainers/image-spec",
"github.com/opencontainers/runc",
"github.com/opencontainers/runtime-spec",
"github.com/pkg/errors",
"github.com/prometheus/client_golang",
"github.com/prometheus/client_model",
"github.com/prometheus/common",
"github.com/prometheus/procfs",
"github.com/russross/blackfriday/v2",
"github.com/shurcooL/sanitized_anchor_name",
"github.com/sirupsen/logrus",
"github.com/syndtr/gocapability",
"github.com/tchap/go-patricia",
"github.com/urfave/cli",
"go.etcd.io/bbolt",
"go.opencensus.io",
"golang.org/x/crypto",
"golang.org/x/oauth2",
"golang.org/x/sync",
"google.golang.org/genproto",
"gopkg.in/inf.v0",
"gopkg.in/yaml.v2",
"k8s.io/klog/v2",
"sigs.k8s.io/yaml",
).with(disabledProtoBuild, patches("containerd-netns-statedir.patch")).use(
"github.com/containerd/cri",
).with(disabledProtoBuild).use(
"github.com/Microsoft/hcsshim",
"github.com/containerd/cgroups",
"github.com/gogo/googleapis",
).with(buildTags("selinux")).use(
"github.com/opencontainers/selinux",
"github.com/willf/bitset",
).with(patches(
"ttrpc-hacks.patch",
)).use(
"github.com/containerd/ttrpc",
).with(patches(
"cni-fix-cachepath.patch",
)).use("github.com/containernetworking/cni").replace(
// ttrpc is broken by go protobuf v2, this is a tentative PR that's
// not yet merged by upstream.
// See: https://github.com/containerd/ttrpc/pull/67
//
// It also contains our own fix that builds up on the above and allows services to
// return the original status error library values. This is required for ttrpc to
// actually work from runsc and for results to be correctly interpreted by
// containerd. See:
// https://github.com/monogon-dev/ttrpc/commit/222b428f008e3ecb11cfff12e3fd92e3143a2f01
//
// Note: this is not a good fix, and has known issues, like not being
// able to return Details in gRPC status errors. However, with the
// limited usage within gvisor/containerd it works. In the future
// upstream will have to resolve this properly, eg. port ttrpc away
// from gogo, or fix gogo to work with the new protobuf APU.
"github.com/containerd/ttrpc",
"github.com/monogon-dev/ttrpc", "222b428f008e3ecb11cfff12e3fd92e3143a2f01",
)
// This is depended on by github.com/containerd/containerd, but not mentioned in
// their vendor.conf. They seem to be moving off of vendoring to gomod, so this
// should be reverted on the next containerd bump (when fietsje will panic about
// vendor.conf missing).
p.collectOverride(
"github.com/checkpoint-restore/go-criu/v4", "v4.1.0",
)
// containernetworking/plugins
p.collectOverride(
"github.com/containernetworking/plugins", "v0.8.2",
).use(
"github.com/alexflint/go-filemutex",
"github.com/coreos/go-iptables",
"github.com/j-keck/arping",
"github.com/safchain/ethtool",
)
}