N
Портал сборок NiceOS
Корпоративный портал наблюдаемости для опубликованных сборок пакетов NiceOS.

input/containerd.spec

raw · 5.4 KiB

%define debug_package      %{nil}
%define __os_install_post  %{nil}
%define gopath_comp        github.com/%{name}/%{name}

Name:           containerd
Version:        2.3.2
Release:        1%{?dist}
Summary:        Container runtime for Kubernetes and other orchestrators
Summary(ru):    Управление контейнерами для Kubernetes и других оркестраторов
License:        Apache-2.0
URL:            https://containerd.io/docs

Source0:        https://github.com/containerd/containerd/archive/refs/tags/v%{version}.tar.gz
Source1:        %{name}-config.toml
Source2:        disable-%{name}-by-default.preset
Source3:        %{name}-%{version}-vendor.tar.xz

Patch0:         %{name}-service.patch

Packager:       NICE SOFT GROUP LLC (ООО "НАЙС СОФТ ГРУПП") 5024245440 <niceos@ncsgp.ru>
Vendor:         NiceSOFT
Distribution:   NiceOS.Core
BugURL:         https://bugs.niceos.ru/
VCS:            https://specs.niceos.ru/rpms/%{name}

# Must be in sync with package version
%define CONTAINERD_GITCOMMIT 75cb2b7193e4e490e9fbdc236c0e811ccaba3376

BuildRequires:  btrfs-progs
BuildRequires:  btrfs-progs-devel
BuildRequires:  go1.26 >= 1.26.3
BuildRequires:  go-md2man
BuildRequires:  libseccomp
BuildRequires:  libseccomp-devel
BuildRequires:  systemd-devel

Requires:       libseccomp
Requires:       runc
Requires:       systemd

%description
containerd is an industry-standard container runtime that manages the complete
container lifecycle on a host system. It provides features to run, stop, and
remove containers, as well as manage images and networking. containerd integrates
with orchestration systems such as Kubernetes and implements OCI standards.

%description -l ru
containerd — это индустриальный стандартный runtime для контейнеров, который
управляет жизненным циклом контейнеров на хосте. Он обеспечивает запуск,
остановку и удаление контейнеров, а также управление образами и сетями.
containerd интегрируется с оркестраторами (например, Kubernetes) и поддерживает
стандарты OCI (Open Container Initiative).

%package        extras
Summary:        Extra tools and utilities for containerd
Summary(ru):    Дополнительные инструменты и утилиты для containerd
Requires:       %{name} = %{version}-%{release}

%description -n %{name}-extras
This subpackage provides additional helper binaries for containerd.

%description -l ru -n %{name}-extras
Подпакет содержит дополнительные вспомогательные утилиты для containerd.

%package        doc
Summary:        Documentation for containerd
Summary(ru):    Документация для containerd
Requires:       %{name} = %{version}-%{release}

%description -n %{name}-doc
This subpackage is reserved for containerd documentation (manual pages and
reference materials) when installed by the build.

%description -l ru -n %{name}-doc
Подпакет зарезервирован для документации containerd (man-страницы и справочные
материалы) в случае их установки при сборке.

%prep
%setup -q -c
mkdir -p "$(dirname "src/%{gopath_comp}")"
cd %{name}-%{version}
%autopatch -p1
cd ..
mv %{name}-%{version} src/%{gopath_comp}

cd src/%{gopath_comp}
# Unpack regenerated Go vendor dependencies.
tar -xJf %{SOURCE3} --strip-components=1

%build
export GOPATH="${PWD}"
export GOFLAGS="-mod=vendor"
export GOTOOLCHAIN=local
unset GO111MODULE

cd src/%{gopath_comp}
make %{?_smp_mflags} \
    VERSION=%{version} \
    REVISION=%{CONTAINERD_GITCOMMIT} \
    BUILDTAGS='seccomp selinux apparmor' \
    GO_BUILD_FLAGS="-gcflags=-trimpath=${GOPATH}/src" \
    EXTRA_FLAGS="" \
    binaries man

%install
cd src/%{gopath_comp}

install -v -m 0644 -D -t %{buildroot}%{_datadir}/licenses/%{name} LICENSE
install -v -m 0644 -D -t %{buildroot}%{_unitdir} %{name}.service
install -v -m 0644 -D %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/config.toml
install -v -m 0644 -D %{SOURCE2} %{buildroot}%{_presetdir}/50-%{name}.preset

make %{?_smp_mflags} DESTDIR=%{buildroot} PREFIX=%{_prefix} install
make %{?_smp_mflags} DESTDIR=%{buildroot} PREFIX=%{_prefix} install-man

%post
%systemd_post %{name}.service

%preun
%systemd_preun %{name}.service

%postun
%systemd_postun_with_restart %{name}.service

%files
%defattr(-,root,root)
%license %{_datadir}/licenses/%{name}/LICENSE
%config(noreplace) %{_sysconfdir}/%{name}/config.toml
%{_bindir}/ctr
%{_bindir}/%{name}
%{_unitdir}/%{name}.service
%{_presetdir}/50-%{name}.preset

%files -n %{name}-extras
%defattr(-,root,root)
%{_bindir}/%{name}-shim-runc-v2
%{_bindir}/%{name}-stress

%files -n %{name}-doc
%defattr(-,root,root)
%ghost %{_docdir}/%{name}-doc.placeholder
%{_mandir}/man5/*
%{_mandir}/man8/*

%changelog
* Tue Jul 07 2026 NiceOS Team <support@niceos.ru> - 2.3.2-1
- EN: Update to upstream version 2.3.2. Security references: CVE-2026-47262, CVE-2026-50195, CVE-2026-53488, CVE-2026-53489, CVE-2026-53492.
- RU: Обновление до upstream-версии 2.3.2. Упоминания безопасности: CVE-2026-47262, CVE-2026-50195, CVE-2026-53488, CVE-2026-53489, CVE-2026-53492.


* Sat Jan 10 2026 NiceOS Team <niceos@ncsgp.ru> - 2.1.4-1
- Initial build for NiceOS (Первая сборка для НАЙС.ОС)