gvproxy removed for rawhide and copr builds
Ref: (WIP) https://bugzilla.redhat.com/show_bug.cgi?id=2224434 This might cause breakage in rawhide, but can't be worse than what it already is.
This commit is contained in:
parent
f5015a026a
commit
107772583a
29
podman.spec
29
podman.spec
@ -25,6 +25,15 @@
|
||||
%define build_with_btrfs 1
|
||||
%endif
|
||||
|
||||
# gvproxy can be included as a standalone package on copr.
|
||||
# It is currently open for review on bugzilla until which fedora releases can't
|
||||
# include it. Official rawhide should be able to fetch the last active build of
|
||||
# gvproxy, the min version requirement has been removed to allow it.
|
||||
# Ref: https://bugzilla.redhat.com/show_bug.cgi?id=2224434
|
||||
%if !%{defined copr_username} && 0%{?fedora} <= 38
|
||||
%define gvproxy_subpackage 1
|
||||
%endif
|
||||
|
||||
%global container_base_path github.com/containers
|
||||
%global container_base_url https://%{container_base_path}
|
||||
|
||||
@ -71,7 +80,9 @@ URL: https://%{name}.io/
|
||||
# All SourceN files fetched from upstream
|
||||
Source0: %{git0}/archive/v%{version}.tar.gz
|
||||
Source1: %{git_plugins}/archive/%{commit_plugins}/%{repo_plugins}-%{commit_plugins}.tar.gz
|
||||
%if %{defined gvproxy_subpackage}
|
||||
Source2: %{git_gvproxy}/archive/%{commit_gvproxy}/%{repo_gvproxy}-%{commit_gvproxy}.tar.gz
|
||||
%endif
|
||||
Provides: %{name}-manpages = %{epoch}:%{version}-%{release}
|
||||
BuildRequires: %{_bindir}/envsubst
|
||||
BuildRequires: %{_bindir}/go-md2man
|
||||
@ -104,7 +115,11 @@ BuildRequires: python3
|
||||
Requires: catatonit
|
||||
Requires: conmon >= 2:2.1.7-2
|
||||
Requires: containers-common-extra
|
||||
%if %{defined gvproxy_subpackage}
|
||||
Recommends: %{name}-gvproxy = %{epoch}:%{version}-%{release}
|
||||
%else
|
||||
Recommends: %{name}-gvproxy
|
||||
%endif
|
||||
Provides: %{name}-quadlet
|
||||
Obsoletes: %{name}-quadlet <= 5:4.4.0-1
|
||||
Provides: %{name}-quadlet = %{epoch}:%{version}-%{release}
|
||||
@ -174,7 +189,11 @@ connections as well.
|
||||
%package plugins
|
||||
Summary: Plugins for %{name}
|
||||
Requires: dnsmasq
|
||||
%if %{defined gvproxy_subpackage}
|
||||
Recommends: %{name}-gvproxy = %{epoch}:%{version}-%{release}
|
||||
%else
|
||||
Recommends: %{name}-gvproxy
|
||||
%endif
|
||||
|
||||
%description plugins
|
||||
This plugin sets up the use of dnsmasq on a given CNI network so
|
||||
@ -184,6 +203,7 @@ that dnsmasq will read in. Similarly, when a pod
|
||||
is removed from the network, it will remove the entry from the hosts
|
||||
file. Each CNI network will have its own dnsmasq instance.
|
||||
|
||||
%if %{defined gvproxy_subpackage}
|
||||
%package gvproxy
|
||||
Summary: Go replacement for libslirp and VPNKit
|
||||
|
||||
@ -192,6 +212,7 @@ A replacement for libslirp and VPNKit, written in pure Go.
|
||||
It is based on the network stack of gVisor. Compared to libslirp,
|
||||
gvisor-tap-vsock brings a configurable DNS server and
|
||||
dynamic port forwarding.
|
||||
%endif
|
||||
|
||||
%package -n %{name}sh
|
||||
Summary: Confined login and user shell using %{name}
|
||||
@ -213,8 +234,10 @@ sed -i 's;@@PODMAN@@\;$(BINDIR);@@PODMAN@@\;%{_bindir};' Makefile
|
||||
# untar dnsname
|
||||
tar zxf %{SOURCE1}
|
||||
|
||||
%if %{defined gvproxy_subpackage}
|
||||
# untar %%{name}-gvproxy
|
||||
tar zxf %{SOURCE2}
|
||||
%endif
|
||||
|
||||
%build
|
||||
%set_build_flags
|
||||
@ -254,11 +277,13 @@ export BUILDTAGS="$BASEBUILDTAGS $(hack/btrfs_installed_tag.sh) $(hack/btrfs_tag
|
||||
# reset LDFLAGS for plugins and gvisor binaries
|
||||
LDFLAGS=''
|
||||
|
||||
%if %{defined gvproxy_subpackage}
|
||||
# build gvisor-tap-vsock binaries
|
||||
cd %{repo_gvproxy}-%{commit_gvproxy}
|
||||
%gobuild -o bin/gvproxy ./cmd/gvproxy
|
||||
%gobuild -o bin/gvforwarder ./cmd/vm
|
||||
cd ..
|
||||
%endif
|
||||
|
||||
%{__make} docs docker-docs
|
||||
|
||||
@ -296,12 +321,14 @@ cd %{repo_plugins}-%{commit_plugins}
|
||||
%{__make} PREFIX=%{_prefix} DESTDIR=%{buildroot} install
|
||||
cd ..
|
||||
|
||||
%if %{defined gvproxy_subpackage}
|
||||
# install gvproxy
|
||||
cd %{repo_gvproxy}-%{commit_gvproxy}
|
||||
install -dp %{buildroot}%{_libexecdir}/%{name}
|
||||
install -p -m0755 bin/gvproxy %{buildroot}%{_libexecdir}/%{name}
|
||||
install -p -m0755 bin/gvforwarder %{buildroot}%{_libexecdir}/%{name}
|
||||
cd ..
|
||||
%endif
|
||||
|
||||
# do not include docker and podman-remote man pages in main package
|
||||
for file in `find %{buildroot}%{_mandir}/man[15] -type f | sed "s,%{buildroot},," | grep -v -e remote -e docker`; do
|
||||
@ -364,12 +391,14 @@ cp -pav test/system %{buildroot}/%{_datadir}/%{name}/test/
|
||||
%dir %{_libexecdir}/cni
|
||||
%{_libexecdir}/cni/dnsname
|
||||
|
||||
%if %{defined gvproxy_subpackage}
|
||||
%files gvproxy
|
||||
%license %{repo_gvproxy}-%{commit_gvproxy}/LICENSE
|
||||
%doc %{repo_gvproxy}-%{commit_gvproxy}/README.md
|
||||
%dir %{_libexecdir}/%{name}
|
||||
%{_libexecdir}/%{name}/gvproxy
|
||||
%{_libexecdir}/%{name}/gvforwarder
|
||||
%endif
|
||||
|
||||
%files -n %{name}sh
|
||||
%license LICENSE
|
||||
|
Loading…
Reference in New Issue
Block a user