From 713e6a93ec0cdce94ee4fe27d5a4aac67dff2b23 Mon Sep 17 00:00:00 2001 From: Jindrich Novy Date: Thu, 17 Feb 2022 17:50:13 +0100 Subject: [PATCH] containers-common-1-23.el9 - package aarvark-dns and netavark as part of the containers-common - Related: #2000051 Signed-off-by: Jindrich Novy --- .gitignore | 1 + containers-common.spec | 106 +++++++++++++++++++++++++++++++++++++++-- sources | 2 + 3 files changed, 106 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index e69de29..f6a3a77 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/*.tar.gz diff --git a/containers-common.spec b/containers-common.spec index 305d2f8..d3a37c9 100644 --- a/containers-common.spec +++ b/containers-common.spec @@ -12,11 +12,10 @@ Epoch: 2 Name: containers-common Version: 1 -Release: 22%{?dist} +Release: 23%{?dist} Summary: Common configuration and documentation for containers License: ASL 2.0 -BuildArch: noarch -BuildRequires: go-md2man +BuildRequires: /usr/bin/go-md2man Provides: skopeo-containers = %{epoch}:%{version}-%{release} Requires: (container-selinux >= 2:2.162.1 if selinux-policy) Requires: oci-runtime @@ -60,6 +59,16 @@ Source100: update.sh Source101: update-vendored.sh Source102: pyxis.sh +%global aardvark_dns_version v1.0.0-rc2 +%global aardvark_dns_commit0 2349cfc97e2cfc0ef2ef0b0c1fb4cc2fc83098e7 +%global aardvark_dns_shortcommit0 %(c=%{aardvark_dns_commit0}; echo ${c:0:7}) +Source200: https://github.com/containers/aardvark-dns/archive/%{aardvark_dns_commit0}/aardvark-dns-%{aardvark_dns_version}-%{aardvark_dns_shortcommit0}.tar.gz + +%global netavark_version v1.0.0-rc2 +%global netavark_commit0 a65fa83ada7c82c3be1ea553a5fea9a39705dc47 +%global netavark_shortcommit0 %(c=%{netavark_commit0}; echo ${c:0:7}) +Source300: https://github.com/containers/netavark/archive/%{netavark_commit0}/netavark-%{netavark_version}-%{netavark_shortcommit0}.tar.gz + %description This package contains common configuration files and documentation for container tools ecosystem, such as Podman, Buildah and Skopeo. @@ -68,11 +77,87 @@ It is required because the most of configuration files and docs come from projec which are vendored into Podman, Buildah, Skopeo, etc. but they are not packaged separately. +%package -n aardvark-dns +Version: 1.0.0 +Release: 0.2rc2%{?dist} +URL: https://github.com/containers/aardvark-dns +Summary: Authoritative DNS server for A/AAAA container records +License: ASL 2.0 and BSD and MIT +BuildRequires: cargo +BuildRequires: git-core +BuildRequires: make +BuildRequires: rust-srpm-macros +ExclusiveArch: %{rust_arches} + +%description -n aardvark-dns +%{summary} + +Forwards other request to configured resolvers. +Read more about configuration in `src/backend/mod.rs`. + +%package -n netavark +Version: 1.0.0 +Release: 0.2rc2%{?dist} +URL: https://github.com/containers/netavark +Summary: OCI network stack +License: ASL 2.0 and BSD and MIT +BuildRequires: cargo +BuildRequires: make +BuildRequires: rust-srpm-macros +BuildRequires: git-core +BuildRequires: /usr/bin/go-md2man +Recommends: aardvark-dns +Provides: container-network-stack = 2 +ExclusiveArch: %{rust_arches} + +%description -n netavark +%{summary} + +Netavark is a rust based network stack for containers. It is being +designed to work with Podman but is also applicable for other OCI +container management applications. + +Netavark is a tool for configuring networking for Linux containers. +Its features include: +* Configuration of container networks via JSON configuration file +* Creation and management of required network interfaces, + including MACVLAN networks +* All required firewall configuration to perform NAT and port + forwarding as required for containers +* Support for iptables and firewalld at present, with support + for nftables planned in a future release +* Support for rootless containers +* Support for IPv4 and IPv6 +* Support for container DNS resolution via aardvark-dns. + %prep +tar fx %{SOURCE200} +tar fx %{SOURCE300} %build +pushd aardvark-dns-%{aardvark_dns_commit0} +%__scm_setup_git -q +%{__make} build +popd + +pushd netavark-%{netavark_commit0} +%__scm_setup_git -q +%{__make} build +pushd docs +go-md2man -in netavark.1.md -out netavark.1 +popd +%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install +popd %install +pushd aardvark-dns-%{aardvark_dns_commit0} +%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install +popd + +pushd netavark-%{netavark_commit0} +%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install +popd + install -dp %{buildroot}%{_sysconfdir}/containers/{certs.d,oci/hooks.d,registries.d,registries.conf.d} install -m0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/containers/storage.conf install -m0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/containers/registries.conf @@ -159,7 +244,22 @@ EOF %dir %{_datadir}/rhel/secrets %{_datadir}/rhel/secrets/* +%files -n aardvark-dns +%license aardvark-dns-%{aardvark_dns_commit0}/LICENSE +%dir %{_libexecdir}/podman +%{_libexecdir}/podman/aardvark-dns + +%files -n netavark +%license netavark-%{netavark_commit0}/LICENSE +%dir %{_libexecdir}/podman +%{_libexecdir}/podman/netavark +%{_mandir}/man1/netavark.1* + %changelog +* Thu Feb 17 2022 Jindrich Novy - 2:1-23 +- package aarvark-dns and netavark as part of the containers-common +- Related: #2000051 + * Thu Feb 17 2022 Jindrich Novy - 2:1-22 - update shortnames and vendored components - Related: #2000051 diff --git a/sources b/sources index e69de29..5c6558c 100644 --- a/sources +++ b/sources @@ -0,0 +1,2 @@ +SHA512 (aardvark-dns-v1.0.0-rc2-2349cfc.tar.gz) = 3d2992af463afaee3ef66bab4973a5a16796bca665323d46e2aec39843c986c17de444c1e90e8601c1bb8fd5d44093d30b3c7d7943dc4cb7b6d62a58f4ae21b5 +SHA512 (netavark-v1.0.0-rc2-a65fa83.tar.gz) = 82b8d230ff90e3694e1be503cbb8edc9551921b97f294a26e697fad1d4a01e08cb7b0de4b51fe6dc278df1bc4146c438728f841001c7b1ffe6e73cf31d152289