|
|
4f32297 |
# Generated by go2rpm
|
|
|
4f32297 |
# arm support not fully implemented: not implemented
|
|
|
84b4767 |
%ifnarch %{arm}
|
|
|
4f32297 |
%bcond_without check
|
|
|
6aec4fc |
%endif
|
|
|
6d6c07f |
%bcond_with bootstrap
|
|
|
4f32297 |
|
|
|
4f32297 |
# https://github.com/containerd/containerd
|
|
|
4f32297 |
%global goipath github.com/containerd/containerd
|
|
|
95f7464 |
Version: 1.6.23
|
|
|
78865e2 |
|
|
|
4f32297 |
%gometa
|
|
|
78865e2 |
|
|
|
4f32297 |
%global goname containerd
|
|
|
4f32297 |
%global godevelname containerd-devel
|
|
|
4f32297 |
|
|
|
4f32297 |
%global common_description %{expand:
|
|
|
4f32297 |
Containerd is an industry-standard container runtime with an emphasis on
|
|
|
4f32297 |
simplicity, robustness and portability. It is available as a daemon for Linux
|
|
|
4f32297 |
and Windows, which can manage the complete container lifecycle of its host
|
|
|
4f32297 |
system: image transfer and storage, container execution and supervision,
|
|
|
4f32297 |
low-level storage and network attachments, etc.}
|
|
|
4f32297 |
|
|
|
4f32297 |
%global golicenses LICENSE NOTICE
|
|
|
5a9aaef |
%global godocs docs ROADMAP.md SCOPE.md code-of-conduct.md\\\
|
|
|
5a9aaef |
BUILDING.md README.md RELEASES.md
|
|
|
4f32297 |
|
|
|
4f32297 |
Name: %{goname}
|
|
|
ee9b079 |
Release: %autorelease
|
|
|
4f32297 |
Summary: Open and reliable container runtime
|
|
|
4f32297 |
|
|
|
527f298 |
License: Apache-2.0
|
|
|
4f32297 |
URL: %{gourl}
|
|
|
56f6890 |
Source0: %{gosource}
|
|
|
1a26ec8 |
Source2: containerd.toml
|
|
|
6d6c07f |
# Carve out code requiring github.com/Microsoft/hcsshim
|
|
|
6d6c07f |
Patch0: 0001-Revert-commit-for-Windows-metrics.patch
|
|
|
80bd17c |
Patch1: 0002-Remove-windows-only-dep.patch
|
|
|
a7673f8 |
# Backport for github.com/containerd/typeurl update
|
|
|
a7673f8 |
Patch2: 0001-Use-typeurl.Any-instead-of-github.com-gogo-protobuf-.patch
|
|
|
87f8204 |
# To use with latest go-runc
|
|
|
87f8204 |
Patch3: 0001-Add-reaper-StartLocked.patch
|
|
|
95f7464 |
# To use with latest opencontainers/image-spec
|
|
|
95f7464 |
Patch4: 0001-opencontainers-image-spec-v1.1.0-rc3.patch
|
|
|
cd27dee |
|
|
|
cd27dee |
BuildRequires: btrfs-progs-devel
|
|
|
cd27dee |
BuildRequires: go-md2man
|
|
|
4f32297 |
BuildRequires: systemd-rpm-macros
|
|
|
4f32297 |
%if %{without bootstrap}
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/aufs/plugin)
|
|
|
4f32297 |
%endif
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/btrfs)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/cgroups)
|
|
|
5ba4fb2 |
BuildRequires: golang(github.com/containerd/cgroups/stats/v1)
|
|
|
5ba4fb2 |
BuildRequires: golang(github.com/containerd/cgroups/v2)
|
|
|
5ba4fb2 |
BuildRequires: golang(github.com/containerd/cgroups/v2/stats)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/console)
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/continuity)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/continuity/fs)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/continuity/fs/fstest)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/continuity/sysx)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/fifo)
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/go-cni)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/go-runc)
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/imgcrypt)
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/imgcrypt/images/encryption)
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/nri)
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/nri/types/v1)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/ttrpc)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/ttrpc/plugin)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/typeurl)
|
|
|
4f32297 |
%if %{without bootstrap}
|
|
|
80bd17c |
BuildRequires: golang(github.com/containerd/zfs/plugin)
|
|
|
4f32297 |
%endif
|
|
|
80bd17c |
BuildRequires: golang(github.com/containernetworking/plugins/pkg/ns)
|
|
|
5ba4fb2 |
BuildRequires: golang(github.com/coreos/go-systemd/v22/daemon)
|
|
|
80bd17c |
BuildRequires: golang(github.com/davecgh/go-spew/spew)
|
|
|
4f32297 |
BuildRequires: golang(github.com/docker/go-events)
|
|
|
4f32297 |
BuildRequires: golang(github.com/docker/go-metrics)
|
|
|
4f32297 |
BuildRequires: golang(github.com/docker/go-units)
|
|
|
80bd17c |
BuildRequires: golang(github.com/emicklei/go-restful)
|
|
|
80bd17c |
BuildRequires: golang(github.com/fsnotify/fsnotify)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/googleapis/google/rpc)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/gogoproto)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/proto)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/protoc-gen-gogo/descriptor)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/protoc-gen-gogo/generator)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/sortkeys)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/types)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/vanity)
|
|
|
4f32297 |
BuildRequires: golang(github.com/gogo/protobuf/vanity/command)
|
|
|
650fafe |
BuildRequires: golang(github.com/google/uuid)
|
|
|
41c62d2 |
BuildRequires: golang(github.com/grpc-ecosystem/go-grpc-middleware)
|
|
|
4f32297 |
BuildRequires: golang(github.com/grpc-ecosystem/go-grpc-prometheus)
|
|
|
650fafe |
BuildRequires: golang(github.com/hashicorp/go-multierror)
|
|
|
650fafe |
BuildRequires: golang(github.com/imdario/mergo)
|
|
|
41c62d2 |
BuildRequires: golang(github.com/intel/goresctrl/pkg/rdt)
|
|
|
80bd17c |
BuildRequires: golang(github.com/klauspost/compress/zstd)
|
|
|
80bd17c |
# BuildRequires: golang(github.com/Microsoft/hcsshim/cmd/containerd-shim-runhcs-v1/options)
|
|
|
5ba4fb2 |
# BuildRequires: golang(github.com/Microsoft/hcsshim/cmd/containerd-shim-runhcs-v1/stats)
|
|
|
2ce27fb |
BuildRequires: golang(github.com/moby/locker)
|
|
|
80bd17c |
BuildRequires: golang(github.com/moby/sys/mountinfo)
|
|
|
41c62d2 |
BuildRequires: golang(github.com/moby/sys/signal)
|
|
|
80bd17c |
BuildRequires: golang(github.com/moby/sys/symlink)
|
|
|
4f32297 |
BuildRequires: golang(github.com/opencontainers/go-digest)
|
|
|
80bd17c |
BuildRequires: golang(github.com/opencontainers/go-digest/digestset)
|
|
|
4f32297 |
BuildRequires: golang(github.com/opencontainers/image-spec/identity)
|
|
|
4f32297 |
BuildRequires: golang(github.com/opencontainers/image-spec/specs-go)
|
|
|
4f32297 |
BuildRequires: golang(github.com/opencontainers/image-spec/specs-go/v1)
|
|
|
4f32297 |
BuildRequires: golang(github.com/opencontainers/runc/libcontainer/user)
|
|
|
4f32297 |
BuildRequires: golang(github.com/opencontainers/runtime-spec/specs-go)
|
|
|
80bd17c |
BuildRequires: golang(github.com/opencontainers/selinux/go-selinux)
|
|
|
5ba4fb2 |
BuildRequires: golang(github.com/opencontainers/selinux/go-selinux/label)
|
|
|
7bc88b8 |
BuildRequires: golang(github.com/pelletier/go-toml)
|
|
|
4f32297 |
BuildRequires: golang(github.com/prometheus/client_golang/prometheus)
|
|
|
4f32297 |
BuildRequires: golang(github.com/sirupsen/logrus)
|
|
|
41c62d2 |
BuildRequires: golang(github.com/stretchr/testify/require)
|
|
|
80bd17c |
BuildRequires: golang(github.com/tchap/go-patricia/patricia)
|
|
|
4f32297 |
BuildRequires: golang(github.com/urfave/cli)
|
|
|
41c62d2 |
BuildRequires: golang(github.com/vishvananda/netlink)
|
|
|
4f32297 |
BuildRequires: golang(go.etcd.io/bbolt)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/attribute)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/propagation)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/sdk/resource)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/sdk/trace)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/semconv/v1.4.0)
|
|
|
41c62d2 |
BuildRequires: golang(go.opentelemetry.io/otel/trace)
|
|
|
80bd17c |
BuildRequires: golang(golang.org/x/net/context)
|
|
|
4f32297 |
BuildRequires: golang(golang.org/x/net/context/ctxhttp)
|
|
|
4f32297 |
BuildRequires: golang(golang.org/x/sync/errgroup)
|
|
|
650fafe |
BuildRequires: golang(golang.org/x/sync/semaphore)
|
|
|
41c62d2 |
BuildRequires: golang(golang.org/x/sys/execabs)
|
|
|
4f32297 |
BuildRequires: golang(golang.org/x/sys/unix)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc)
|
|
|
5ba4fb2 |
BuildRequires: golang(google.golang.org/grpc/backoff)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc/codes)
|
|
|
650fafe |
BuildRequires: golang(google.golang.org/grpc/credentials)
|
|
|
41c62d2 |
BuildRequires: golang(google.golang.org/grpc/credentials/insecure)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc/grpclog)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc/health)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc/health/grpc_health_v1)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc/metadata)
|
|
|
4f32297 |
BuildRequires: golang(google.golang.org/grpc/status)
|
|
|
5ba4fb2 |
BuildRequires: golang(gotest.tools/v3/assert)
|
|
|
5ba4fb2 |
BuildRequires: golang(gotest.tools/v3/assert/cmp)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/api/core/v1)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/api/errors)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/api/resource)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/apis/meta/v1)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/types)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/util/httpstream)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/util/httpstream/spdy)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/util/net)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/util/remotecommand)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/util/runtime)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apimachinery/pkg/util/sets)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apiserver/pkg/server/httplog)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/apiserver/pkg/util/wsstream)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/client-go/tools/remotecommand)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/client-go/util/cert)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/component-base/logs/logreduction)
|
|
|
41c62d2 |
BuildRequires: golang(k8s.io/cri-api/pkg/apis/runtime/v1)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/cri-api/pkg/apis/runtime/v1alpha2)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/klog/v2)
|
|
|
41c62d2 |
BuildRequires: golang(k8s.io/utils/clock)
|
|
|
80bd17c |
BuildRequires: golang(k8s.io/utils/exec)
|
|
|
4f32297 |
|
|
|
4f32297 |
%if %{with check}
|
|
|
4f32297 |
# Tests
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/continuity/testutil)
|
|
|
4f32297 |
BuildRequires: golang(github.com/containerd/continuity/testutil/loopback)
|
|
|
4f32297 |
BuildRequires: golang(github.com/google/go-cmp/cmp)
|
|
|
4f32297 |
BuildRequires: golang(github.com/google/go-cmp/cmp/cmpopts)
|
|
|
80bd17c |
BuildRequires: golang(github.com/stretchr/testify/assert)
|
|
|
41c62d2 |
BuildRequires: golang(google.golang.org/protobuf/proto)
|
|
|
41c62d2 |
BuildRequires: golang(k8s.io/utils/clock/testing)
|
|
|
4f32297 |
%endif
|
|
|
78865e2 |
|
|
|
4f32297 |
Requires: runc
|
|
|
78865e2 |
|
|
|
78865e2 |
%description
|
|
|
4f32297 |
%{common_description}
|
|
|
78865e2 |
|
|
|
4f32297 |
%gopkg
|
|
|
78865e2 |
|
|
|
78865e2 |
%prep
|
|
|
9fc9261 |
%goprep
|
|
|
80bd17c |
%autopatch -p1
|
|
|
650fafe |
# Used only for generation:
|
|
|
650fafe |
rm -rf cmd/protoc-gen-gogoctrd
|
|
|
41c62d2 |
# Replace default bin directory
|
|
|
41c62d2 |
sed -i "s|/usr/local/bin/containerd|/usr/bin/containerd|" containerd.service
|
|
|
78865e2 |
|
|
|
4f32297 |
%if %{without bootstrap}
|
|
|
78865e2 |
%build
|
|
|
4f32297 |
export LDFLAGS="-X %{goipath}/version.Version=%{version} "
|
|
|
4f32297 |
for cmd in cmd/* ; do
|
|
|
4f32297 |
%gobuild -o %{gobuilddir}/bin/$(basename $cmd) %{goipath}/$cmd
|
|
|
4f32297 |
done
|
|
|
56f6890 |
mkdir _man
|
|
|
5ba4fb2 |
go-md2man -in docs/man/containerd-config.8.md -out _man/containerd-config.8
|
|
|
56f6890 |
go-md2man -in docs/man/containerd-config.toml.5.md -out _man/containerd-config.toml.5
|
|
|
6d6c07f |
%{gobuilddir}/bin/gen-manpages containerd.8 _man
|
|
|
5ba4fb2 |
%{gobuilddir}/bin/gen-manpages ctr.8 _man
|
|
|
650fafe |
rm %{gobuilddir}/bin/gen-manpages
|
|
|
4f32297 |
%else
|
|
|
4f32297 |
rm -rf cmd
|
|
|
4f32297 |
%endif
|
|
|
78865e2 |
|
|
|
78865e2 |
%install
|
|
|
4f32297 |
%gopkginstall
|
|
|
4f32297 |
%if %{without bootstrap}
|
|
|
4f32297 |
install -m 0755 -vd %{buildroot}%{_bindir}
|
|
|
4f32297 |
install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/
|
|
|
ccfa609 |
install -D -p -m 0644 _man/containerd.8 %{buildroot}%{_mandir}/man8/containerd.8
|
|
|
ccfa609 |
install -D -p -m 0644 _man/containerd-config.8 %{buildroot}%{_mandir}/man8/containerd-config.8
|
|
|
ccfa609 |
install -D -p -m 0644 _man/ctr.8 %{buildroot}%{_mandir}/man8/ctr.8
|
|
|
56f6890 |
install -D -p -m 0644 _man/containerd-config.toml.5 %{buildroot}%{_mandir}/man5/containerd-config.toml.5
|
|
|
41c62d2 |
install -D -p -m 0644 containerd.service %{buildroot}%{_unitdir}/containerd.service
|
|
|
de1fd6f |
install -D -p -m 0644 %{S:2} %{buildroot}%{_sysconfdir}/containerd/config.toml
|
|
|
41c62d2 |
mkdir -p %{buildroot}%{_sharedstatedir}/containerd/opt
|
|
|
160facb |
%endif
|
|
|
160facb |
|
|
|
78865e2 |
%post
|
|
|
78865e2 |
%systemd_post containerd.service
|
|
|
78865e2 |
|
|
|
78865e2 |
%preun
|
|
|
78865e2 |
%systemd_preun containerd.service
|
|
|
78865e2 |
|
|
|
78865e2 |
%postun
|
|
|
78865e2 |
%systemd_postun_with_restart containerd.service
|
|
|
78865e2 |
|
|
|
4f32297 |
%if %{with check}
|
|
|
4f32297 |
%check
|
|
|
0d25305 |
%gocheck -d pkg/cri/server -t integration -d platforms
|
|
|
4f32297 |
%endif
|
|
|
78865e2 |
|
|
|
4f32297 |
%if %{without bootstrap}
|
|
|
78865e2 |
%files
|
|
|
4f32297 |
%license LICENSE NOTICE
|
|
|
5a9aaef |
%doc docs ROADMAP.md SCOPE.md code-of-conduct.md BUILDING.md
|
|
|
4f32297 |
%doc README.md RELEASES.md
|
|
|
4f32297 |
%{_bindir}/*
|
|
|
ccfa609 |
%{_mandir}/man8/containerd.8*
|
|
|
ccfa609 |
%{_mandir}/man8/containerd-config.8*
|
|
|
ccfa609 |
%{_mandir}/man8/ctr.8*
|
|
|
bd2c7d3 |
%{_mandir}/man5/containerd-config.toml.5*
|
|
|
cd27dee |
%{_unitdir}/containerd.service
|
|
|
5c60c14 |
%dir %{_sysconfdir}/containerd
|
|
|
78865e2 |
%config(noreplace) %{_sysconfdir}/containerd/config.toml
|
|
|
41c62d2 |
%dir %{_sharedstatedir}/containerd
|
|
|
41c62d2 |
%dir %{_sharedstatedir}/containerd/opt
|
|
|
4f32297 |
%endif
|
|
|
78865e2 |
|
|
|
4f32297 |
%gopkgfiles
|
|
|
78865e2 |
|
|
|
78865e2 |
%changelog
|
|
|
ee9b079 |
%autochangelog
|