From 351f059988d8cd944b3c6129be8ab2d0a605da71 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 11 Jan 2022 12:16:31 -0500 Subject: [PATCH] import podman-3.4.3-0.6.el9 --- .gitignore | 4 +- .podman.metadata | 4 +- SOURCES/12118.patch | 113 +++++++++++++++++++++++++++++++++++++++++ SPECS/podman.spec | 119 ++++++++++++++++++++++++++++++++++++++------ 4 files changed, 221 insertions(+), 19 deletions(-) create mode 100644 SOURCES/12118.patch diff --git a/.gitignore b/.gitignore index 226004d..5198672 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ -SOURCES/main-ea86893.tar.gz SOURCES/podman-machine-cni-0749884.tar.gz SOURCES/v0.1.0.tar.gz -SOURCES/v0.1.5.tar.gz +SOURCES/v0.1.7.tar.gz SOURCES/v1.3.0.tar.gz +SOURCES/v3.4-e3a7a74.tar.gz diff --git a/.podman.metadata b/.podman.metadata index f8d2255..ed48370 100644 --- a/.podman.metadata +++ b/.podman.metadata @@ -1,5 +1,5 @@ -8307f23cc933e65a882e0581d16e6d9531d8546e SOURCES/main-ea86893.tar.gz 70b08b173bdf0d1325fce035c186b43085865587 SOURCES/podman-machine-cni-0749884.tar.gz d2be14e364fef2d95c61cdac528219548640f6d4 SOURCES/v0.1.0.tar.gz -4502491739693bd1b1d108d9af545f69a3bd424b SOURCES/v0.1.5.tar.gz +94419a237f932ff2a79c91f6e3005034d9c367a5 SOURCES/v0.1.7.tar.gz 667dcf5bea5992e18963bac6b833053a0d8b1eaa SOURCES/v1.3.0.tar.gz +66a2d2618bea9b4b4371cc2b6543075ecb2fb9aa SOURCES/v3.4-e3a7a74.tar.gz diff --git a/SOURCES/12118.patch b/SOURCES/12118.patch new file mode 100644 index 0000000..ae5c1bf --- /dev/null +++ b/SOURCES/12118.patch @@ -0,0 +1,113 @@ +From e68fbf03aa4e117e769b479d5a83a4bbc0628a33 Mon Sep 17 00:00:00 2001 +From: Hironori Shiina +Date: Wed, 27 Oct 2021 09:26:58 -0400 +Subject: [PATCH] Set flags to test 'logs -f' with journald driver + +`logs -f` with `journald` is supported only when `journald` events +backend is used. To pass system tests using `logs -f` in an environment +where `events_logger` is not set to `journald` in `containers.conf`, +this fix sets `--events-backend` or `--log-driver` temporally. + +Signed-off-by: Hironori Shiina +--- + test/system/035-logs.bats | 28 +++++++++++++++++++++++----- + test/system/130-kill.bats | 15 ++++++++++++++- + 2 files changed, 37 insertions(+), 6 deletions(-) + +diff --git a/test/system/035-logs.bats b/test/system/035-logs.bats +index 44b66676eeb..7fb3e62e459 100644 +--- a/test/system/035-logs.bats ++++ b/test/system/035-logs.bats +@@ -30,6 +30,17 @@ load helpers + run_podman rm $cid + } + ++function _additional_events_backend() { ++ local driver=$1 ++ # Since PR#10431, 'logs -f' with journald driver is only supported with journald events backend. ++ if [[ $driver = "journald" ]]; then ++ run_podman info --format '{{.Host.EventLogger}}' >/dev/null ++ if [[ $output != "journald" ]]; then ++ echo "--events-backend journald" ++ fi ++ fi ++} ++ + function _log_test_multi() { + local driver=$1 + +@@ -42,10 +53,12 @@ function _log_test_multi() { + etc='.*' + fi + ++ local events_backend=$(_additional_events_backend $driver) ++ + # Simple helper to make the container starts, below, easier to read + local -a cid + doit() { +- run_podman run --log-driver=$driver --rm -d --name "$1" $IMAGE sh -c "$2"; ++ run_podman ${events_backend} run --log-driver=$driver --rm -d --name "$1" $IMAGE sh -c "$2"; + cid+=($(echo "${output:0:12}")) + } + +@@ -57,7 +70,7 @@ function _log_test_multi() { + doit c1 "echo a;sleep 10;echo d;sleep 3" + doit c2 "sleep 1;echo b;sleep 2;echo c;sleep 3" + +- run_podman logs -f c1 c2 ++ run_podman ${events_backend} logs -f c1 c2 + is "$output" \ + "${cid[0]} a$etc + ${cid[1]} b$etc +@@ -187,15 +200,20 @@ function _log_test_follow() { + contentA=$(random_string) + contentB=$(random_string) + contentC=$(random_string) ++ local events_backend=$(_additional_events_backend $driver) ++ ++ if [[ -n "${events_backend}" ]]; then ++ skip_if_remote "remote does not support --events-backend" ++ fi + + # Note: it seems we need at least three log lines to hit #11461. +- run_podman run --log-driver=$driver --name $cname $IMAGE sh -c "echo $contentA; echo $contentB; echo $contentC" +- run_podman logs -f $cname ++ run_podman ${events_backend} run --log-driver=$driver --name $cname $IMAGE sh -c "echo $contentA; echo $contentB; echo $contentC" ++ run_podman ${events_backend} logs -f $cname + is "$output" "$contentA + $contentB + $contentC" "logs -f on exitted container works" + +- run_podman rm -f $cname ++ run_podman ${events_backend} rm -f $cname + } + + @test "podman logs - --follow k8s-file" { +diff --git a/test/system/130-kill.bats b/test/system/130-kill.bats +index d85f0a6a998..1ff3a7b6199 100644 +--- a/test/system/130-kill.bats ++++ b/test/system/130-kill.bats +@@ -6,9 +6,22 @@ + load helpers + + @test "podman kill - test signal handling in containers" { ++ ++ # Prepare for 'logs -f' ++ run_podman info --format '{{.Host.LogDriver}}' ++ log_driver=$output ++ run_podman info --format '{{.Host.EventLogger}}' ++ event_logger=$output ++ opt_log_driver= ++ if [ $log_driver = "journald" ] && [ $event_logger != "journald" ]; then ++ # Since PR#10431, 'logs -f' with journald driver is only supported with journald events backend. ++ # Set '--log driver' temporally because remote doesn't support '--events-backend'. ++ opt_log_driver="--log-driver k8s-file" ++ fi ++ + # Start a container that will handle all signals by emitting 'got: N' + local -a signals=(1 2 3 4 5 6 8 10 12 13 14 15 16 20 21 22 23 24 25 26 64) +- run_podman run -d $IMAGE sh -c \ ++ run_podman run -d ${opt_log_driver} $IMAGE sh -c \ + "for i in ${signals[*]}; do trap \"echo got: \$i\" \$i; done; + echo READY; + while ! test -e /stop; do sleep 0.05; done; diff --git a/SPECS/podman.spec b/SPECS/podman.spec index dfd474a..420c70d 100644 --- a/SPECS/podman.spec +++ b/SPECS/podman.spec @@ -16,20 +16,20 @@ go build -buildmode pie -compiler gc -tags="rpm_crashtraceback libtrust_openssl %endif %global import_path github.com/containers/podman -%global branch main -%global commit0 ea868933e8c014ac52192f397f5dc1c3e8ee375a +%global branch v3.4 +%global commit0 e3a7a743c50f7131fde98380b8059c463468c653 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%global cataver 0.1.5 +%global cataver 0.1.7 %global dnsnamever 1.3.0 %global gvproxyrepo gvisor-tap-vsock %global gvproxyver 0.1.0 %global commit_mcni 0749884b8d1a455c68da30789e37811ec0809d51 %global shortcommit_mcni %(c=%{commit_mcni}; echo ${c:0:7}) - +Epoch: 1 Name: podman -Version: 4.0.0 -Release: 0.22%{?dist} +Version: 3.4.3 +Release: 0.6%{?dist} Summary: Manage Pods, Containers and Container Images License: ASL 2.0 and GPLv3+ URL: https://%{name}.io/ @@ -42,10 +42,12 @@ Source1: https://github.com/openSUSE/catatonit/archive/v%{cataver}.tar.gz Source2: https://github.com/containers/dnsname/archive/v%{dnsnamever}.tar.gz Source3: https://github.com/containers/%{name}-machine-cni/archive/%{commit_mcni}/%{name}-machine-cni-%{shortcommit_mcni}.tar.gz Source4: https://github.com/containers/%{gvproxyrepo}/archive/v%{gvproxyver}.tar.gz +# backported: https://patch-diff.githubusercontent.com/raw/containers/podman/pull/12118.patch +Patch0: 12118.patch # https://fedoraproject.org/wiki/PackagingDrafts/Go#Go_Language_Architectures ExclusiveArch: %{go_arches} -Provides: %{name}-manpages = %{version}-%{release} -Obsoletes: %{name}-manpages < %{version}-%{release} +Provides: %{name}-manpages = %{epoch}:%{version}-%{release} +Obsoletes: %{name}-manpages < %{epoch}:%{version}-%{release} BuildRequires: golang >= 1.16.6 BuildRequires: glib2-devel BuildRequires: glibc-devel @@ -62,6 +64,7 @@ BuildRequires: pkgconfig BuildRequires: make BuildRequires: systemd BuildRequires: systemd-devel +BuildRequires: shadow-utils-subid-devel # for catatonit BuildRequires: autoconf BuildRequires: automake @@ -79,7 +82,7 @@ Requires: (container-selinux if selinux-policy) Requires: slirp4netns >= 0.4.0-1 Requires: runc >= 1.0.0-57 Requires: fuse-overlayfs -Requires: %{name}-catatonit >= %{version}-%{release} +Requires: %{name}-catatonit >= %{epoch}:%{version}-%{release} Requires: oci-runtime %description @@ -100,8 +103,8 @@ manipulate images (but not containers) created by the other. %package docker Summary: Emulate Docker CLI using %{name} BuildArch: noarch -Requires: %{name} = %{version}-%{release} -Provides: docker = %{version}-%{release} +Requires: %{name} = %{epoch}:%{version}-%{release} +Provides: docker = %{epoch}:%{version}-%{release} %description docker This package installs a script named docker that emulates the Docker CLI by @@ -122,7 +125,7 @@ variables, or in containers.conf. %package catatonit Summary: A signal-forwarding process manager for containers -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{epoch}:%{version}-%{release} %description catatonit Catatonit is a /sbin/init program for use within containers. It @@ -137,7 +140,7 @@ signalfd(2)) and has no additional features. %package plugins Summary: Plugins for %{name} Requires: dnsmasq -Recommends: %{name}-gvproxy = %{version}-%{release} +Recommends: %{name}-gvproxy = %{epoch}:%{version}-%{release} %description plugins This plugin sets up the use of dnsmasq on a given CNI network so @@ -149,7 +152,7 @@ file. Each CNI network will have its own dnsmasq instance. %package tests Summary: Tests for %{name} -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{epoch}:%{version}-%{release} #Requires: bats (which RHEL8 doesn't have. If it ever does, un-comment this) Requires: nmap-ncat Requires: httpd-tools @@ -158,6 +161,7 @@ Requires: socat Requires: skopeo Requires: openssl Requires: buildah +Requires: gnupg %description tests %{summary} @@ -203,7 +207,7 @@ ln -s vendor src rm -rf vendor/github.com/containers/storage/drivers/register/register_btrfs.go -export BUILDTAGS="systemd selinux seccomp btrfs_noversion exclude_graphdriver_devicemapper $(hack/libdm_tag.sh)" +export BUILDTAGS="systemd selinux seccomp btrfs_noversion exclude_graphdriver_devicemapper $(hack/libdm_tag.sh) $(hack/libsubid_tag.sh)" # build date. FIXME: Makefile uses '/v2/libpod', that doesn't work here? LDFLAGS="-X %{import_path}/libpod/define.buildInfo=$(date +%s)" %gobuild -o bin/%{name} %{import_path}/cmd/%{name} @@ -216,6 +220,7 @@ export BUILDTAGS="remote $BUILDTAGS" # build catatonit unset LDFLAGS +CFLAGS="%{optflags} -fPIE -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" pushd catatonit-%{cataver} autoreconf -fi %configure @@ -399,6 +404,90 @@ exit 0 %{_libexecdir}/%{name}/gvproxy %changelog +* Tue Nov 23 2021 Jindrich Novy - 1:3.4.3-0.6 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/e3a7a74) +- add libsubid_tag.sh into BUILDTAGS +- Related: #2000051 + +* Mon Nov 22 2021 Jindrich Novy - 1:3.4.3-0.5 +- do not put patch URL as the backported patch will get overwritten when + "spectool -g -f" is executed +- Related: #2000051 + +* Mon Nov 22 2021 Jindrich Novy - 1:3.4.3-0.4 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/7203178) +- Related: #2000051 + +* Tue Nov 16 2021 Jindrich Novy - 1:3.4.3-0.3 +- remove -t 0 from podman gating test +- Related: #2000051 + +* Mon Nov 15 2021 Jindrich Novy - 1:3.4.3-0.2 +- add BuildRequires: shadow-utils-subid-devel +- Related: #2000051 + +* Mon Nov 15 2021 Jindrich Novy - 1:3.4.3-0.1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/4808a63) +- Related: #2000051 + +* Fri Nov 12 2021 Jindrich Novy - 1:3.4.2-0.8 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/fd010ad) +- Related: #2000051 + +* Thu Nov 11 2021 Jindrich Novy - 1:3.4.2-0.7 +- backport https://github.com/containers/podman/pull/12118 to 3.4 + in attempt to fix gating tests +- Related: #2000051 + +* Thu Nov 11 2021 Jindrich Novy - 1:3.4.2-0.6 +- add Requires: gnupg + (https://github.com/containers/podman/pull/12270) +- Related: #2000051 + +* Tue Nov 09 2021 Jindrich Novy - 1:3.4.2-0.5 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/8de9950) +- Related: #2000051 + +* Mon Nov 08 2021 Jindrich Novy - 1:3.4.2-0.4 +- update catatonit to 1.7 +- Related: #2000051 + +* Tue Nov 02 2021 Jindrich Novy - 1:3.4.2-0.3 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/75023e9) +- Related: #2000051 + +* Thu Oct 21 2021 Jindrich Novy - 1:3.4.2-0.2 +- compile catatonit library as PIE +- Related: #2000051 + +* Thu Oct 21 2021 Jindrich Novy - 1:3.4.2-0.1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/09aade7) +- Related: #2000051 + +* Tue Oct 19 2021 Jindrich Novy - 1:3.4.1-2 +- more dependency tightening - thanks to Michael Rochefort for noticing +- Related: #2000051 + +* Mon Oct 18 2021 Jindrich Novy - 1:3.4.1-1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/c15c154) +- Related: #2000051 + +* Mon Oct 18 2021 Jindrich Novy - 1:4.0.0-0.24 +- respect Epoch in subpackage dependencies +- Related: #2000051 + +* Fri Oct 15 2021 Jindrich Novy - 1:4.0.0-0.23 +- bump Epoch to preserve upgrade path from RHEL8 +- Related: #2000051 + * Mon Oct 11 2021 Jindrich Novy - 4.0.0-0.22 - update to the latest content of https://github.com/containers/podman/tree/main (https://github.com/containers/podman/commit/ea86893)