Accepting request 868230 from home:cyphar:docker

- Install the containerd-shim* binaries and stop creating
  docker-containerd-shim because that isn't used by Docker anymore.

OBS-URL: https://build.opensuse.org/request/show/868230
OBS-URL: https://build.opensuse.org/package/show/Virtualization:containers/containerd?expand=0&rev=110
This commit is contained in:
Aleksa Sarai 2021-02-01 01:07:51 +00:00 committed by Git OBS Bridge
parent ba4bf23e34
commit 3f240ab735
2 changed files with 24 additions and 17 deletions

View File

@ -3,6 +3,8 @@ Fri Jan 29 23:24:30 UTC 2021 - Aleksa Sarai <asarai@suse.com>
- Update to containerd v1.4.3, which is needed for Docker v20.10.2-ce.
bsc#1181594
- Install the containerd-shim* binaries and stop creating
docker-containerd-shim because that isn't used by Docker anymore.
-------------------------------------------------------------------
Mon Dec 21 06:53:15 UTC 2020 - Aleksa Sarai <asarai@suse.com>

View File

@ -113,6 +113,9 @@ separately from Docker.
%patch1 -p1
%build
# NOTE: containerd will switch to go.mod in 1.5.x so this can be removed after
# we update to that version.
# Do not use symlinks. If you want to run the unit tests for this package at
# some point during the build and you need to directly use go list directly it
# will get confused by symlinks.
@ -123,16 +126,14 @@ rm -rf $PROJECT/*
cp -ar * $PROJECT
BUILDTAGS="apparmor selinux seccomp"
make -C $PROJECT \
make -C "$PROJECT"\
BUILDTAGS="$BUILDTAGS" \
VERSION="v%{version}" \
REVISION="%{git_version}"
# TODO: Fix man-page generation.
#make man
cp $PROJECT/bin/ctr ctr-%{version}
cp $PROJECT/bin/containerd containerd-%{version}
cp $PROJECT/bin/containerd-shim containerd-shim-%{version}
cp -r "$PROJECT/bin" bin
%check
# We used to run 'go test' here, however we found that this actually didn't
@ -143,15 +144,20 @@ cp $PROJECT/bin/containerd-shim containerd-shim-%{version}
%install
# Install binaries.
install -D -m755 containerd-%{version} %{buildroot}/%{_sbindir}/%{realname}
install -D -m755 containerd-shim-%{version} %{buildroot}/%{_sbindir}/%{realname}-shim
install -D -m755 ctr-%{version} %{buildroot}/%{_sbindir}/%{realname}-ctr
pushd bin/
for bin in containerd{,-shim*}
do
install -D -m755 "$bin" "%{buildroot}/%{_sbindir}/$bin"
done
# "ctr" is a bit too generic.
install -D -m755 ctr %{buildroot}/%{_sbindir}/%{realname}-ctr
popd
# Install docker-* symlinks to said binaries, since in order to use the
# upstream setup, Docker needs to spawn containerd and needs to have the
# binaries have specific names.
ln -s %{_sbindir}/%{realname} %{buildroot}/%{_sbindir}/docker-%{realname}
ln -s %{_sbindir}/%{realname}-shim %{buildroot}/%{_sbindir}/docker-%{realname}-shim
# Install docker-containerd symlink so Docker can find the containerd binary.
# FIXME: This is no longer necessary since Docker has adopted the upstream
# binary pathnames, but we need to resolve the docker-runc/runc split
# before we can clean up containerd as well.
ln -s %{_sbindir}/containerd %{buildroot}/%{_sbindir}/docker-containerd
# Set up dummy configuration.
install -d -m755 %{buildroot}/%{_sysconfdir}/%{realname}
@ -174,16 +180,15 @@ echo "# See containerd-config.toml(5) for documentation." >%{buildroot}/%{_sysco
%license LICENSE
%dir %{_sysconfdir}/%{realname}
%config %{_sysconfdir}/%{realname}/config.toml
%{_sbindir}/%{realname}
%{_sbindir}/docker-%{realname}
%{_sbindir}/%{realname}-shim
%{_sbindir}/docker-%{realname}-shim
%{_sbindir}/containerd
%{_sbindir}/containerd-shim*
%{_sbindir}/docker-containerd
# TODO: Fix man page generation.
#%{_mandir}/man*/%{realname}*
#%exclude %{_mandir}/man1/*ctr.1*
%files ctr
%{_sbindir}/%{realname}-ctr
%{_sbindir}/containerd-ctr
# TODO: Fix man page generation.
#%{_mandir}/man1/*ctr.1*