diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b34ec1b --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +SOURCES/1.1.0.tar.gz +SOURCES/netavark-v1.1.0-vendor.tar.gz diff --git a/.netavark.metadata b/.netavark.metadata new file mode 100644 index 0000000..6c6f2d7 --- /dev/null +++ b/.netavark.metadata @@ -0,0 +1,2 @@ +5f22fd74fc25d71335f8ca5cd5aa74c383d30576 SOURCES/1.1.0.tar.gz +63dcfdcb2b5917a213f89469aa4e643f92230410 SOURCES/netavark-v1.1.0-vendor.tar.gz diff --git a/SPECS/netavark.spec b/SPECS/netavark.spec new file mode 100644 index 0000000..85a425c --- /dev/null +++ b/SPECS/netavark.spec @@ -0,0 +1,97 @@ +# debuginfo doesn't work yet +%global debug_package %{nil} + +Epoch: 2 +Name: netavark +Version: 1.1.0 +Release: 6%{?dist} +License: ASL 2.0 and BSD and MIT +ExclusiveArch: %{rust_arches} +# this is needed for go-md2man +# https://fedoraproject.org/wiki/PackagingDrafts/Go#Go_Language_Architectures +ExclusiveArch: %{go_arches} +ExcludeArch: i686 +Summary: OCI network stack +URL: https://github.com/containers/%{name} +Source0: %{url}/archive/v%{version}/%{version}.tar.gz +Source1: %{url}/releases/download/v%{version}/%{name}-v%{version}-vendor.tar.gz +BuildRequires: cargo +BuildRequires: /usr/bin/go-md2man +Recommends: aardvark-dns >= 1.0.3 +Provides: container-network-stack = 2 +BuildRequires: make +BuildRequires: rust-srpm-macros +BuildRequires: git-core + +%description +%{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 +%autosetup -Sgit +tar fx %{SOURCE1} +mkdir -p .cargo + +cat >.cargo/config << EOF +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" +EOF + +%build +%{__make} build + +cd docs +go-md2man -in %{name}.1.md -out %{name}.1 + +%install +%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install + +%files +%license LICENSE +%dir %{_libexecdir}/podman +%{_libexecdir}/podman/%{name} +%{_mandir}/man1/%{name}.1* + +%changelog +* Fri Aug 05 2022 Jindrich Novy - 2:1.1.0-6 +- add gating.yaml +- Related: #2061316 + +* Fri Aug 05 2022 Jindrich Novy - 2:1.1.0-5 +- properly disable i686 +- Related: #2061316 + +* Thu Aug 04 2022 Jindrich Novy - 2:1.1.0-4 +- manually exclude i686 as build still fails +- Related: #2061316 + +* Thu Aug 04 2022 Jindrich Novy - 2:1.1.0-3 +- set Epoch to preserve update path and build for go arches only +- Related: #2061316 + +* Thu Aug 04 2022 Jindrich Novy - 1.1.0-2 +- fix deps to go-md2man +- Related: #2061316 + +* Wed Aug 03 2022 Jindrich Novy - 1.1.0-1 +- initial import +- Related: #2061316