import netavark-1.5.0-4.module+el8.8.0+18060+3f21f2cc

This commit is contained in:
CentOS Sources 2023-03-28 12:11:38 +00:00 committed by Stepan Oksanichenko
commit 40bc0b0dd1
4 changed files with 187 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
SOURCES/1.5.0.tar.gz
SOURCES/netavark-v1.5.0-vendor.tar.gz

2
.netavark.metadata Normal file
View File

@ -0,0 +1,2 @@
beb751742ed33f7748cef4babd55fa4805314089 SOURCES/1.5.0.tar.gz
dd7b20c3e2138a665742dac7219de3365cb7ef44 SOURCES/netavark-v1.5.0-vendor.tar.gz

51
SOURCES/netavark.1 Normal file
View File

@ -0,0 +1,51 @@
.nh
.TH netavark(1)
.SH NAME
.PP
netavark - Configure a given network namespace for use by a container
.SH SYNOPSIS
.PP
\fBnetavark\fP [\fIoptions\fP] \fIcommand\fP \fInetwork namespace path\fP
.SH DESCRIPTION
.PP
Netavark configures a network namespace according to a configuration read from STDIN. The configuration is JSON formatted.
.SH GLOBAL OPTIONS
.SS \fB--file\fP, \fB-f\fP
.PP
Instead of reading from STDIN, read the configuration to be applied from the given file. \fB-f -\fP may also be used to flag reading from STDIN.
.SH COMMANDS
.SS netavark setup
.PP
The setup command configures the given network namespace with the given configuration, creating any interfaces and firewall rules necessary.
.SS netavark teardown
.PP
The teardown command is the inverse of the setup command, undoing any configuration applied. Some interfaces may not be deleted (bridge interfaces, for example, will not be removed).
.SS CONFIGURATION FORMAT
.PP
The configuration accepted is the same for both setup and teardown. It is JSON formatted.
.PP
Format is https://github.com/containers/podman/blob/cd7b48198c38c5028540e85dc72dd3406f4318f0/libpod/network/types/network.go#L164-L173 but we will also send a Networks array including all the network definitions (https://github.com/containers/podman/blob/cd7b48198c38c5028540e85dc72dd3406f4318f0/libpod/network/types/network.go#L32-L62)
TODO: Transcribe configuration into here in a nice tabular format
.SH EXAMPLE
.PP
netavark setup /run/user/1000/podman/netns/d11d1f9c499d
.PP
netavark -f /run/podman/828b0508ae64.conf teardown /run/podman/netns/828b0508ae64
.SH SEE ALSO
.PP
podman(1)
.SH HISTORY
.PP
September 2021, Originally compiled by Matt Heon mheon@redhat.com
\[la]mailto:mheon@redhat.com\[ra]

132
SPECS/netavark.spec Normal file
View File

@ -0,0 +1,132 @@
# debuginfo doesn't work yet
%global debug_package %{nil}
Epoch: 2
Name: netavark
Version: 1.5.0
Release: 4%{?dist}
License: ASL 2.0 and BSD and MIT
ExclusiveArch: %{rust_arches}
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
Source2: netavark.1
BuildRequires: cargo
Recommends: aardvark-dns >= 1.0.3
Provides: container-network-stack = 2
BuildRequires: make
BuildRequires: rust-srpm-macros
BuildRequires: git-core
BuildRequires: protobuf-compiler
BuildRequires: protobuf-c
BuildRequires: gcc
# https://github.com/containers/netavark/issues/578
ExcludeArch: i686
%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"
[net]
offline = true
[source."https://github.com/containers/netavark-dhcp-proxy"]
git = "https://github.com/containers/netavark-dhcp-proxy"
replace-with = "vendored-sources"
[source.vendored-sources]
directory = "vendor"
EOF
%build
%{__make} build
cd docs
cp %{SOURCE2} .
%install
%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install
%files
%license LICENSE
%dir %{_libexecdir}/podman
%{_libexecdir}/podman/%{name}
%{_mandir}/man1/%{name}.1*
%changelog
* Fri Feb 03 2023 Jindrich Novy <jnovy@redhat.com> - 2:1.5.0-4
- exclude i686
- Related: #2123641
* Fri Feb 03 2023 Jindrich Novy <jnovy@redhat.com> - 2:1.5.0-3
- update build parameters
- Related: #2123641
* Fri Feb 03 2023 Jindrich Novy <jnovy@redhat.com> - 2:1.5.0-2
- always stay offline during build
- Related: #2123641
* Fri Feb 03 2023 Jindrich Novy <jnovy@redhat.com> - 2:1.5.0-1
- update to https://github.com/containers/netavark/releases/tag/v1.5.0
- Related: #2123641
* Thu Dec 08 2022 Jindrich Novy <jnovy@redhat.com> - 2:1.4.0-1
- update to https://github.com/containers/netavark/releases/tag/v1.4.0
- Related: #2123641
* Mon Nov 14 2022 Jindrich Novy <jnovy@redhat.com> - 2:1.3.0-1
- update to https://github.com/containers/netavark/releases/tag/v1.3.0
- Related: #2123641
* Wed Sep 28 2022 Jindrich Novy <jnovy@redhat.com> - 2:1.2.0-1
- update to https://github.com/containers/netavark/releases/tag/v1.2.0
- Resolves: #2116481
* Tue Aug 09 2022 Jindrich Novy <jnovy@redhat.com> - 2:1.1.0-6
- bump Epoch to preserve upgrade path
- Related: #2061390
* Tue Aug 09 2022 Jindrich Novy <jnovy@redhat.com> - 1.1.0-5
- remove dependency on md2man
- Related: #2061390
* Tue Aug 09 2022 Jindrich Novy <jnovy@redhat.com> - 1.1.0-4
- fix arches
- Related: #2061390
* Tue Aug 09 2022 Jindrich Novy <jnovy@redhat.com> - 1.1.0-3
- add gating.yaml
- Related: #2061390
* Thu Aug 04 2022 Jindrich Novy <jnovy@redhat.com> - 1.1.0-2
- require /usr/bin/go-md2man directly
* Wed Aug 03 2022 Jindrich Novy <jnovy@redhat.com> - 1.1.0-1
- initial import
- Related: #2061390