From 53a0a246ade0eeb0dda19b365600bfe1b9aebfe4 Mon Sep 17 00:00:00 2001 From: Lokesh Mandvekar Date: Mon, 16 Aug 2021 08:52:47 -0400 Subject: [PATCH] podman-3:3.3.0-0.27.rc2 - Bump to v3.3.0-rc2 - Include podman-gvproxy subpackage which provides /usr/libexecdir/podman/podman-gvproxy Signed-off-by: Lokesh Mandvekar --- .gitignore | 3 +++ podman.spec | 68 ++++++++++++++++++++++++++++++++++++++++++++++------- sources | 5 ++-- 3 files changed, 65 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 30e4a52..df9bbc8 100644 --- a/.gitignore +++ b/.gitignore @@ -1776,3 +1776,6 @@ /podman-599b7d7.tar.gz /podman-d32e566.tar.gz /v3.3.0-rc1.tar.gz +/dnsname-dc59f28.tar.gz +/gvisor-tap-vsock-27590a0.tar.gz +/v3.3.0-rc2.tar.gz diff --git a/podman.spec b/podman.spec index 77c1ce0..7d8d0cf 100644 --- a/podman.spec +++ b/podman.spec @@ -34,7 +34,7 @@ # https://github.com/containers/dnsname %global import_path_plugins %{provider}.%{provider_tld}/%{project}/%{repo_plugins} %global git_plugins https://%{import_path_plugins} -%global commit_plugins c654c95366ac5f309ca3e5727c9b858864247328 +%global commit_plugins dc59f285546a0b0d8b8f20033e1637ea82587840 %global shortcommit_plugins %(c=%{commit_plugins}; echo ${c:0:7}) # podman-machine-cni @@ -45,7 +45,15 @@ %global commit_mcni afab2d8047bc0bd963d570686770eeb0c2e5a396 %global shortcommit_mcni %(c=%{commit_mcni}; echo ${c:0:7}) -%global built_tag v3.3.0-rc1 +# gvproxy +%global repo_gvproxy gvisor-tap-vsock +# https://github.com/containers/gvisor-tap-vsock +%global import_path_gvproxy %%{provider}.%{provider_tld}/%{project}/%{repo_gvproxy} +%global git_gvproxy https://%{import_path_gvproxy} +%global commit_gvproxy 27590a075d79b4ac0554749f2be31a22a4baa27a +%global shortcommit_gvproxy %(c=%{commit_gvproxy}; echo ${c:0:7}) + +%global built_tag v3.3.0-rc2 %global built_tag_strip %(b=%{built_tag}; echo ${b:1}) Name: podman @@ -59,13 +67,14 @@ Version: 3.3.0 # N.foo if released, 0.N.foo if unreleased # Rawhide almost always ships unreleased builds, # so release tag should be of the form 0.N.foo -Release: 0.26.rc1%{?dist} +Release: 0.27.rc2%{?dist} Summary: Manage Pods, Containers and Container Images License: ASL 2.0 URL: https://%{name}.io/ Source0: %{git0}/archive/%{built_tag}.tar.gz Source1: %{git_plugins}/archive/%{commit_plugins}/%{repo_plugins}-%{shortcommit_plugins}.tar.gz Source2: %{git_mcni}/archive/%{commit_mcni}/%{repo_mcni}-%{shortcommit_mcni}.tar.gz +Source3: %{git_gvproxy}/archive/%{commit_gvproxy}/%{repo_gvproxy}-%{shortcommit_gvproxy}.tar.gz Provides: %{name}-manpages = %{epoch}:%{version}-%{release} # If go_compiler is not set to 1, there is no virtual provide. Use golang instead. %if 0%{?fedora} && ! 0%{?rhel} @@ -388,6 +397,7 @@ connections as well. %package plugins Summary: Plugins for %{name} Requires: dnsmasq +Recommends: %{name}-gvproxy = %{epoch}:%{version}-%{release} %description plugins This plugin sets up the use of dnsmasq on a given CNI network so @@ -397,6 +407,15 @@ 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. +%package gvproxy +Summary: Go replacement for libslirp and VPNKit + +%description gvproxy +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. + %prep %autosetup -Sgit -n %{name}-%{built_tag_strip} @@ -406,6 +425,9 @@ tar zxf %{SOURCE1} # untar %%{name}-machine-cni tar zxf %{SOURCE2} +# untar %%{name}-gvproxy +tar zxf %{SOURCE3} + %build export GO111MODULE=off export GOPATH=$(pwd)/_build:$(pwd) @@ -438,7 +460,7 @@ LDFLAGS="-X %{import_path}/libpod/define.buildInfo=$(date +%s)" export BUILDTAGS+=" exclude_graphdriver_btrfs btrfs_noversion remote" %gobuild -o bin/%{name}-remote %{import_path}/cmd/%{name} -pushd dnsname-%{commit_plugins} +pushd %{repo_plugins}-%{commit_plugins} mkdir _build pushd _build mkdir -p src/%{provider}.%{provider_tld}/%{project} @@ -449,7 +471,7 @@ export GOPATH=$(pwd)/_build:$(pwd) %gobuild -o bin/dnsname %{import_path_plugins}/plugins/meta/dnsname popd -pushd %{name}-machine-cni-%{commit_mcni} +pushd %{repo_mcni}-%{commit_mcni} mkdir _build pushd _build mkdir -p src/%{provider}.%{provider_tld}/%{project} @@ -460,6 +482,17 @@ export GOPATH=$(pwd)/_build:$(pwd) %gobuild -o bin/%{name}-machine %{import_path_mcni}/plugins/meta/%{name}-machine popd +pushd %{repo_gvproxy}-%{commit_gvproxy} +mkdir _build +pushd _build +mkdir -p src/%{provider}.%{provider_tld}/%{project} +ln -s ../../../../ src/%{import_path_gvproxy} +popd +ln -s vendor src +export GOPATH=$(pwd)/_build:$(pwd) +%gobuild -o bin/%{name}-gvproxy %{import_path_gvproxy}/cmd/gvproxy +popd + %{__make} docs docker-docs %install @@ -478,15 +511,21 @@ PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} ETCDIR=%{build mv pkg/hooks/README.md pkg/hooks/README-hooks.md # install dnsname plugin -pushd dnsname-%{commit_plugins} +pushd %{repo_plugins}-%{commit_plugins} %{__make} PREFIX=%{_prefix} DESTDIR=%{buildroot} install popd # install machine-cni plugin -pushd %{name}-machine-cni-%{commit_mcni} +pushd %{repo_mcni}-%{commit_mcni} %{__make} PREFIX=%{_prefix} DESTDIR=%{buildroot} install popd +# install gvproxy +pushd %{repo_gvproxy}-%{commit_gvproxy} +install -dp %{buildroot}%{_libexecdir}/%{name} +install -p -m0755 bin/%{name}-gvproxy %{buildroot}%{_libexecdir}/%{name} +popd + # 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 echo "$file*" >> podman.file-list @@ -627,14 +666,25 @@ cp -pav test/system %{buildroot}/%{_datadir}/%{name}/test/ %endif %files plugins -%license dnsname-%{commit_plugins}/LICENSE -%doc dnsname-%{commit_plugins}/{README.md,README_PODMAN.md} +%license %{repo_plugins}-%{commit_plugins}/LICENSE +%doc %{repo_plugins}-%{commit_plugins}/{README.md,README_PODMAN.md} %dir %{_libexecdir}/cni %{_libexecdir}/cni/dnsname %{_libexecdir}/cni/%{name}-machine +%files gvproxy +%license %{repo_gvproxy}-%{commit_gvproxy}/LICENSE +%doc %{repo_gvproxy}-%{commit_gvproxy}/README.md +%dir %{_libexecdir}/%{name} +%{_libexecdir}/%{name}/%{name}-gvproxy + # rhcontainerbot account currently managed by lsm5 %changelog +* Mon Aug 16 2021 Lokesh Mandvekar - 3:3.3.0-0.27.rc2 +- Bump to v3.3.0-rc2 +- Include podman-gvproxy subpackage which provides +/usr/libexecdir/podman/podman-gvproxy + * Tue Aug 03 2021 Lokesh Mandvekar - 3:3.3.0-0.26.rc1 - Bump to v3.3.0-rc1 diff --git a/sources b/sources index d169250..ae7d81e 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ -SHA512 (dnsname-c654c95.tar.gz) = 34c844ca3ebe24b069077836d27e828ebbfd61c13e0aa943838af9aae475258c3f02e7d1c5e61362cb6904287eee4e3fc85cc2879216e1a8e1142b69731926f0 +SHA512 (dnsname-dc59f28.tar.gz) = faf1b77f3d2d234570f15079ca78bc77c42ac5b45c6eef934b6e025bb574c040ed119a217c9315a553ac18d7ab10e395c9ad0fb6f1c9b24d582f292187a124ad +SHA512 (gvisor-tap-vsock-27590a0.tar.gz) = c4b9a5070ec2956dc79589846e1d8edb04b0b4bdb5a0d63c5ca6cb437b88d091ae1ca0086fdf8ba87db47e5d343caaf4e9c3c74ecab79af0d50f04a5cb1aec6d SHA512 (podman-machine-cni-afab2d8.tar.gz) = 121f33e212daebd3c2c10d24ef2a5dae28d1df5b758209d5590d600d7cd3cfc6af5955371f03e2cb3b9ef0f6e9a1a345f50925abc8ccc2147bc4c925ac670d91 -SHA512 (v3.3.0-rc1.tar.gz) = 3ceda8c658856f1e53e509e0b895e0fbc8a49d0afbcafffd70246615c69e1fba02e87cee27153a6b45f0acd987b7a8d239018cb1a88c063d91b310a0f83ae96e +SHA512 (v3.3.0-rc2.tar.gz) = 2303532f2fd14b94579ead488a51106423bc2828b695c36946296396be0e2d13230bf7a389e81b8ad9dbf77e53832d5c261bd8622fbbd962305f628001311902