forked from pool/podman
Accepting request 763947 from devel:kubic
OBS-URL: https://build.opensuse.org/request/show/763947 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/podman?expand=0&rev=52
This commit is contained in:
parent
cd3d2c182d
commit
75b893ed42
105
0001-clarify-container-prune-force.patch
Normal file
105
0001-clarify-container-prune-force.patch
Normal file
@ -0,0 +1,105 @@
|
||||
From 864b5fd9638953d9ee61113c4ba8311cafe9bcd8 Mon Sep 17 00:00:00 2001
|
||||
From: baude <bbaude@redhat.com>
|
||||
Date: Sun, 12 Jan 2020 10:54:14 -0600
|
||||
Subject: [PATCH] clarify container prune --force
|
||||
|
||||
the --force parameter should only be used for the CLI and should only
|
||||
dictate whether to prompt the user for confirmation.
|
||||
|
||||
Fixes: #4844
|
||||
Signed-off-by: baude <bbaude@redhat.com>
|
||||
---
|
||||
cmd/podman/containers_prune.go | 4 ++--
|
||||
cmd/podman/system_prune.go | 2 +-
|
||||
docs/source/markdown/podman-container-prune.1.md | 3 +++
|
||||
pkg/adapter/containers.go | 4 ++--
|
||||
pkg/adapter/containers_remote.go | 2 +-
|
||||
5 files changed, 9 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/cmd/podman/containers_prune.go b/cmd/podman/containers_prune.go
|
||||
index 78c50268..6b371d85 100644
|
||||
--- a/cmd/podman/containers_prune.go
|
||||
+++ b/cmd/podman/containers_prune.go
|
||||
@@ -40,7 +40,7 @@ func init() {
|
||||
pruneContainersCommand.SetHelpTemplate(HelpTemplate())
|
||||
pruneContainersCommand.SetUsageTemplate(UsageTemplate())
|
||||
flags := pruneContainersCommand.Flags()
|
||||
- flags.BoolVarP(&pruneContainersCommand.Force, "force", "f", false, "Force removal of a running container. The default is false")
|
||||
+ flags.BoolVarP(&pruneContainersCommand.Force, "force", "f", false, "Skip interactive prompt for container removal.")
|
||||
flags.StringArrayVar(&pruneContainersCommand.Filter, "filter", []string{}, "Provide filter values (e.g. 'until=<timestamp>')")
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ Are you sure you want to continue? [y/N] `)
|
||||
if c.GlobalIsSet("max-workers") {
|
||||
maxWorkers = c.GlobalFlags.MaxWorks
|
||||
}
|
||||
- ok, failures, err := runtime.Prune(getContext(), maxWorkers, c.Force, c.Filter)
|
||||
+ ok, failures, err := runtime.Prune(getContext(), maxWorkers, c.Filter)
|
||||
if err != nil {
|
||||
if errors.Cause(err) == define.ErrNoSuchCtr {
|
||||
if len(c.InputArgs) > 1 {
|
||||
diff --git a/cmd/podman/system_prune.go b/cmd/podman/system_prune.go
|
||||
index 74fdcde9..28f22d33 100644
|
||||
--- a/cmd/podman/system_prune.go
|
||||
+++ b/cmd/podman/system_prune.go
|
||||
@@ -92,7 +92,7 @@ Are you sure you want to continue? [y/N] `, volumeString)
|
||||
|
||||
rmWorkers := shared.Parallelize("rm")
|
||||
fmt.Println("Deleted Containers")
|
||||
- ok, failures, err = runtime.Prune(ctx, rmWorkers, false, []string{})
|
||||
+ ok, failures, err = runtime.Prune(ctx, rmWorkers, []string{})
|
||||
if err != nil {
|
||||
if lasterr != nil {
|
||||
logrus.Errorf("%q", err)
|
||||
diff --git a/docs/source/markdown/podman-container-prune.1.md b/docs/source/markdown/podman-container-prune.1.md
|
||||
index 856843a8..1b0561e8 100644
|
||||
--- a/docs/source/markdown/podman-container-prune.1.md
|
||||
+++ b/docs/source/markdown/podman-container-prune.1.md
|
||||
@@ -11,6 +11,9 @@ podman-container-prune - Remove all stopped containers from local storage
|
||||
|
||||
## OPTIONS
|
||||
|
||||
+**--force**, **-f**
|
||||
+Do not provide an interactive prompt for containers removal.
|
||||
+
|
||||
**-h**, **--help**
|
||||
|
||||
Print usage statement
|
||||
diff --git a/pkg/adapter/containers.go b/pkg/adapter/containers.go
|
||||
index 3334e9fa..c2206caa 100644
|
||||
--- a/pkg/adapter/containers.go
|
||||
+++ b/pkg/adapter/containers.go
|
||||
@@ -1048,7 +1048,7 @@ func (r *LocalRuntime) ExecContainer(ctx context.Context, cli *cliconfig.ExecVal
|
||||
}
|
||||
|
||||
// Prune removes stopped containers
|
||||
-func (r *LocalRuntime) Prune(ctx context.Context, maxWorkers int, force bool, filters []string) ([]string, map[string]error, error) {
|
||||
+func (r *LocalRuntime) Prune(ctx context.Context, maxWorkers int, filters []string) ([]string, map[string]error, error) {
|
||||
var (
|
||||
ok = []string{}
|
||||
failures = map[string]error{}
|
||||
@@ -1100,7 +1100,7 @@ func (r *LocalRuntime) Prune(ctx context.Context, maxWorkers int, force bool, fi
|
||||
pool.Add(shared.Job{
|
||||
ID: ctr.ID(),
|
||||
Fn: func() error {
|
||||
- err := r.Runtime.RemoveContainer(ctx, ctr, force, false)
|
||||
+ err := r.Runtime.RemoveContainer(ctx, ctr, false, false)
|
||||
if err != nil {
|
||||
logrus.Debugf("Failed to prune container %s: %s", ctr.ID(), err.Error())
|
||||
}
|
||||
diff --git a/pkg/adapter/containers_remote.go b/pkg/adapter/containers_remote.go
|
||||
index 36db4af6..60ee3cb2 100644
|
||||
--- a/pkg/adapter/containers_remote.go
|
||||
+++ b/pkg/adapter/containers_remote.go
|
||||
@@ -922,7 +922,7 @@ func (r *LocalRuntime) Top(cli *cliconfig.TopValues) ([]string, error) {
|
||||
}
|
||||
|
||||
// Prune removes stopped containers
|
||||
-func (r *LocalRuntime) Prune(ctx context.Context, maxWorkers int, force bool, filter []string) ([]string, map[string]error, error) {
|
||||
+func (r *LocalRuntime) Prune(ctx context.Context, maxWorkers int, filter []string) ([]string, map[string]error, error) {
|
||||
|
||||
var (
|
||||
ok = []string{}
|
||||
--
|
||||
2.24.1
|
||||
|
4
_service
4
_service
@ -4,8 +4,8 @@
|
||||
<param name="url">https://github.com/containers/libpod.git</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="filename">podman</param>
|
||||
<param name="versionformat">1.6.4</param>
|
||||
<param name="revision">v1.6.4</param>
|
||||
<param name="versionformat">1.7.0</param>
|
||||
<param name="revision">v1.7.0</param>
|
||||
</service>
|
||||
|
||||
<service name="set_version" mode="disabled">
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:522b37fa9dc089eb37c9c549d9be9490ba3992906c38cbc75f8eb8e6c682c44c
|
||||
size 4479912
|
3
podman-1.7.0.tar.xz
Normal file
3
podman-1.7.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:645ef1935b0a5e94742e0e9af74cfe152a2beb05bd96e4e7079e735f6d47c36d
|
||||
size 4685152
|
170
podman.changes
170
podman.changes
@ -1,3 +1,173 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 13 11:13:59 UTC 2020 - Ralf Haferkamp <rhafer@suse.com>
|
||||
|
||||
- Add: 0001-clarify-container-prune-force.patch to fix the --force
|
||||
flag for the "container prune" command.
|
||||
(https://github.com/containers/libpod/issues/4844)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 8 09:23:01 UTC 2020 - Ralf Haferkamp <rhafer@suse.com>
|
||||
|
||||
- Update podman to v1.7.0
|
||||
* Features
|
||||
- Added support for setting a static MAC address for containers
|
||||
- Added support for creating macvlan networks with podman
|
||||
network create, allowing Podman containers to be attached
|
||||
directly to networks the host is connected to
|
||||
- The podman image prune and podman container prune commands
|
||||
now support the --filter flag to filter what will be pruned,
|
||||
and now prompts for confirmation when run without --force
|
||||
(#4410 and #4411)
|
||||
- Podman now creates CGroup namespaces by default on systems
|
||||
using CGroups v2 (#4363)
|
||||
- Added the podman system reset command to remove all Podman
|
||||
files and perform a factory reset of the Podman installation
|
||||
- Added the --history flag to podman images to display previous
|
||||
names used by images (#4566)
|
||||
- Added the --ignore flag to podman rm and podman stop to not
|
||||
error when requested containers no longer exist
|
||||
- Added the --cidfile flag to podman rm and podman stop to read
|
||||
the IDs of containers to be removed or stopped from a file
|
||||
- The podman play kube command now honors Seccomp annotations
|
||||
(#3111)
|
||||
- The podman play kube command now honors RunAsUser,
|
||||
RunAsGroup, and selinuxOptions
|
||||
- The output format of the podman version command has been
|
||||
changed to better match docker version when using the
|
||||
--format flag
|
||||
- Rootless Podman will no longer initialize containers/storage
|
||||
twice, removing a potential deadlock preventing Podman
|
||||
commands from running while an image was being pulled (#4591)
|
||||
- Added tmpcopyup and notmpcopyup options to the --tmpfs and
|
||||
--mount type=tmpfs flags to podman create and podman run to
|
||||
control whether the content of directories are copied into
|
||||
tmpfs filesystems mounted over them
|
||||
- Added support for disabling detaching from containers by
|
||||
setting empty detach keys via --detach-keys=""
|
||||
- The podman build command now supports the --pull and
|
||||
--pull-never flags to control when images are pulled during a
|
||||
build
|
||||
- The podman ps -p command now shows the name of the pod as
|
||||
well as its ID (#4703)
|
||||
- The podman inspect command on containers will now display the
|
||||
command used to create the container
|
||||
- The podman info command now displays information on registry
|
||||
mirrors (#4553)
|
||||
* Bugfixes
|
||||
- Fixed a bug where Podman would use an incorrect runtime
|
||||
directory as root, causing state to be deleted after root
|
||||
logged out and making Podman in systemd services not function
|
||||
properly
|
||||
- Fixed a bug where the --change flag to podman import and
|
||||
podman commit was not being parsed properly in many cases
|
||||
- Fixed a bug where detach keys specified in libpod.conf were
|
||||
not used by the podman attach and podman exec commands, which
|
||||
always used the global default ctrl-p,ctrl-q key combination
|
||||
(#4556)
|
||||
- Fixed a bug where rootless Podman was not able to run podman
|
||||
pod stats even on CGroups v2 enabled systems (#4634)
|
||||
- Fixed a bug where rootless Podman would fail on kernels
|
||||
without the renameat2 syscall (#4570)
|
||||
- Fixed a bug where containers with chained network namespace
|
||||
dependencies (IE, container A using --net container=B and
|
||||
container B using --net container=C) would not properly mount
|
||||
/etc/hosts and /etc/resolv.conf into the container (#4626)
|
||||
- Fixed a bug where podman run with the --rm flag and without
|
||||
-d could, when run in the background, throw a 'container does
|
||||
not exist' error when attempting to remove the container
|
||||
after it exited
|
||||
- Fixed a bug where named volume locks were not properly
|
||||
reacquired after a reboot, potentially leading to deadlocks
|
||||
when trying to start containers using the volume (#4605 and
|
||||
#4621)
|
||||
- Fixed a bug where Podman could not completely remove
|
||||
containers if sent SIGKILL during removal, leaving the
|
||||
container name unusable without the podman rm --storage
|
||||
command to complete removal (#3906)
|
||||
- Fixed a bug where checkpointing containers started with --rm
|
||||
was allowed when --export was not specified (the container,
|
||||
and checkpoint, would be removed after checkpointing was
|
||||
complete by --rm) (#3774)
|
||||
- Fixed a bug where the podman pod prune command would fail if
|
||||
containers were present in the pods and the --force flag was
|
||||
not passed (#4346)
|
||||
- Fixed a bug where containers could not set a static IP or
|
||||
static MAC address if they joined a non-default CNI network
|
||||
(#4500)
|
||||
- Fixed a bug where podman system renumber would always throw
|
||||
an error if a container was mounted when it was run
|
||||
- Fixed a bug where podman container restore would fail with
|
||||
containers using a user namespace
|
||||
- Fixed a bug where rootless Podman would attempt to use the
|
||||
journald events backend even on systems without systemd
|
||||
installed
|
||||
- Fixed a bug where podman history would sometimes not properly
|
||||
identify the IDs of layers in an image (#3359)
|
||||
- Fixed a bug where containers could not be restarted when
|
||||
Conmon v2.0.3 or later was used
|
||||
- Fixed a bug where Podman did not check image OS and
|
||||
Architecture against the host when starting a container
|
||||
- Fixed a bug where containers in pods did not function
|
||||
properly with the Kata OCI runtime (#4353)
|
||||
- Fixed a bug where `podman info --format '{{ json . }}' would
|
||||
not produce JSON output (#4391)
|
||||
- Fixed a bug where Podman would not verify if files passed to
|
||||
--authfile existed (#4328)
|
||||
- Fixed a bug where podman images --digest would not always
|
||||
print digests when they were available
|
||||
- Fixed a bug where rootless podman run could hang due to a
|
||||
race with reading and writing events
|
||||
- Fixed a bug where rootless Podman would print warning-level
|
||||
logs despite not be instructed to do so (#4456)
|
||||
- Fixed a bug where podman pull would attempt to fetch from
|
||||
remote registries when pulling an unqualified image using the
|
||||
docker-daemon transport (#4434)
|
||||
- Fixed a bug where podman cp would not work if STDIN was a
|
||||
pipe
|
||||
- Fixed a bug where podman exec could stop accepting input if
|
||||
anything was typed between the command being run and the exec
|
||||
session starting (#4397)
|
||||
- Fixed a bug where podman logs --tail 0 would print all lines
|
||||
of a container's logs, instead of no lines (#4396)
|
||||
- Fixed a bug where the timeout for slirp4netns was incorrectly
|
||||
set, resulting in an extremely long timeout (#4344)
|
||||
- Fixed a bug where the podman stats command would print CPU
|
||||
utilizations figures incorrectly (#4409)
|
||||
- Fixed a bug where the podman inspect --size command would not
|
||||
print the size of the container's read/write layer if the
|
||||
size was 0 (#4744)
|
||||
- Fixed a bug where the podman kill command was not properly
|
||||
validating signals before use (#4746)
|
||||
- Fixed a bug where the --quiet and --format flags to podman ps
|
||||
could not be used at the same time
|
||||
- Fixed a bug where the podman stop command was not stopping
|
||||
exec sessions when a container was created without a PID
|
||||
namespace (--pid=host)
|
||||
- Fixed a bug where the podman pod rm --force command was not
|
||||
removing anonymous volumes for containers that were removed
|
||||
- Fixed a bug where the podman checkpoint command would not
|
||||
export all changes to the root filesystem of the container if
|
||||
performed more than once on the same container (#4606)
|
||||
- Fixed a bug where containers started with --rm would not be
|
||||
automatically removed on being stopped if an exec session was
|
||||
running inside the container (#4666)
|
||||
* Misc
|
||||
- The fixes to runtime directory path as root can cause strange
|
||||
behavior if an upgrade is performed while containers are
|
||||
running
|
||||
- Updated vendored Buildah to v1.12.0
|
||||
- Updated vendored containers/storage library to v1.15.4
|
||||
- Updated vendored containers/image library to v5.1.0
|
||||
- Kata Containers runtimes (kata-runtime, kata-qemu, and
|
||||
kata-fc) are now present in the default libpod.conf, but will
|
||||
not be available unless Kata containers is installed on the
|
||||
system
|
||||
- Podman previously did not allow the creation of containers
|
||||
with a memory limit lower than 4MB. This restriction has been
|
||||
removed, as the crun runtime can create containers with
|
||||
significantly less memory
|
||||
- Remove no longer needed workaround for *.5.md man page sources
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 12 14:30:34 UTC 2019 - Richard Brown <rbrown@suse.com>
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
%define with_libostree 1
|
||||
%endif
|
||||
Name: podman
|
||||
Version: 1.6.4
|
||||
Version: 1.7.0
|
||||
Release: 0
|
||||
Summary: Daemon-less container engine for managing containers, pods and images
|
||||
License: Apache-2.0
|
||||
@ -31,6 +31,8 @@ Url: https://github.com/containers/libpod
|
||||
Source0: %{name}-%{version}.tar.xz
|
||||
Source2: libpod.conf
|
||||
Source3: %{name}-rpmlintrc
|
||||
# PATCH-FIX-UPSTREAM 0001-clarify-container-prune-force.patch https://github.com/containers/libpod/issues/4844
|
||||
Patch0: 0001-clarify-container-prune-force.patch
|
||||
BuildRequires: bash-completion
|
||||
BuildRequires: cni
|
||||
BuildRequires: device-mapper-devel
|
||||
@ -81,8 +83,7 @@ skopeo, as they all share the same datastore backend.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
#WORKAROUND https://github.com/containers/libpod/issues/4688
|
||||
mv docs/*.5.md docs/source/markdown/
|
||||
%patch0 -p1
|
||||
|
||||
%package cni-config
|
||||
Summary: Basic CNI configuration for podman
|
||||
|
Loading…
Reference in New Issue
Block a user