Commit Graph

3746 Commits

Author SHA1 Message Date
cdoern f38b03d375 Fix Memory Swappiness passing in Container Clone
`DefineCreateFlags` was excluding clone from using the memory-swappiness flag leading the value to be zero
when our deafult is -1. Rearrange the if/else to give clone these memory related options

resolves #13856

Signed-off-by: cdoern <cdoern@redhat.com>
2022-04-14 10:40:29 -04:00
OpenShift Merge Robot 4a53689c56
Merge pull request #13822 from edsantiago/buildah_3544_fixed
System tests: reenable ps --external test
2022-04-11 10:37:54 -04:00
Ed Santiago 615099ddb9 System tests: reenable ps --external test
Buildah issue 3544 has been fixed and vendored into podman.
We can reenable a long-skipped test.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-04-11 05:39:39 -06:00
Paul Holzinger 784a13f577
network create: add support for ipam-driver none
Add a new flag to set the ipam-driver. Also adds a new ipam driver none
mode which only creates interfaces but does not assign addresses.

Fixes #13521

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-04-11 11:09:15 +02:00
OpenShift Merge Robot 343778f61a
Merge pull request #13811 from flouthoc/container_inspect_entrypoint
container,inspect: convert `Entrypoint` to an array instead of a string
2022-04-08 12:40:23 -04:00
OpenShift Merge Robot cdbc33112e
Merge pull request #13687 from rhatdan/VENDOR
Vendor in new opencontainers/selinux
2022-04-08 10:42:44 -04:00
Aditya R 0cebd158b6
container,inspect: convert Entrypoint to array instead of a string
Convert container entrypoint from string to an array inorder to make
sure there is parity between `podman inspect` and `docker inspect`

Signed-off-by: Aditya R <arajan@redhat.com>
2022-04-08 18:43:37 +05:30
Daniel J Walsh dc17195bd9
Vendor in new opencontainers/selinux
Also update vendor of containers/common,buildah,storage,image

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2069586

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-04-08 09:02:52 -04:00
Valentin Rothberg e133a06d2f images --size
Add a --size option to podman images to allow for disabling computing
the size of listed images.  If listing images is critical to
performance, user may chose to turn off size computation to speed things
up.

Context: #13755
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-04-08 10:09:38 +02:00
OpenShift Merge Robot 839744af56
Merge pull request #13696 from Luap99/apiv2-netavark
test/apiv2: support netavark
2022-04-04 14:07:28 -04:00
OpenShift Merge Robot 330205ebed
Merge pull request #13490 from gcalin/13266
pod logs enhancements: option to color logs
2022-04-04 13:43:27 -04:00
OpenShift Merge Robot 4f31ade2b2
Merge pull request #13765 from giuseppe/do-not-set-oom-score-adj
specgen: do not set OOMScoreAdj by default
2022-04-04 13:19:35 -04:00
Giuseppe Scrivano 164b64ea3b
specgen: do not set OOMScoreAdj by default
do not force a value of OOMScoreAdj=0 if it is wasn't specified by the
user.

Closes: https://github.com/containers/podman/issues/13731

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-04-04 15:40:12 +02:00
Andrew Aylett bf4318e606 Allow creating anonymous volumes with --mount
This fixes #13756.

All the mechanics to create anonymous volumes is already present, but
there's still a validation preventing that path from being taken.  We
remove the validation, which allows the volume to be created
successfully.

Signed-off-by: Andrew Aylett <andrew@aylett.co.uk>
2022-04-02 21:10:40 +01:00
OpenShift Merge Robot d4394ea368
Merge pull request #13665 from jwhonce/issues/13535
Add build test for .containerignore tar file
2022-04-01 11:59:46 -04:00
OpenShift Merge Robot 23e57575b0
Merge pull request #13594 from cdoern/podVolumes
fix pod volume passing and alter infra inheritance
2022-04-01 09:51:23 -04:00
Giuseppe Scrivano 1cd529b22d
specgen: permit --privileged and --cap-add
--cap-add is useful when running a privileged container with UID != 0,
so that individual capabilities can be added to the container process.

Closes: https://github.com/containers/podman/issues/13449

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-04-01 10:15:17 +02:00
Jhon Honce f8c2df87cb Add build test for .containerignore tar file
Ensure a directory added to .containerignore on client is not included
in tar sent to remote podman API service

* Clean up podman invocations to not include duplicate --remote and
  --url flags
* Use pkill vs. pgrep when cleaning up podman API service in tests
* Add exit code when logging error when testing

Closes #13535

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2022-03-31 08:48:54 -07:00
Paul Holzinger e5745139a7
cli commands: better error for unsupported commands
When you run podman-remote unsahre for example you currently get:
Error: unrecognized command `podman-remote unshare`

This is because we do not add the command to the cobra tree when we run
in remote mode. However this is a bad user experience since it is not
clear that the command is only supported for local podman. Users are
left wondering why this does not work and could think the documentation
is wrong.

To fix it we add a clear error message:
Error: cannot use command "podman-remote unshare" with the remote podman client

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-31 16:20:18 +02:00
Aditya R daeea48df5
kube: configmap volume should be reused if already exists
`podman play kube` creates a new volume for configmap, if same configmap
is applied again volume can be re-used, there is no need to remove and
re-create the volume again

Signed-off-by: Aditya R <arajan@redhat.com>
2022-03-31 15:07:22 +05:30
OpenShift Merge Robot c08e8c30a1
Merge pull request #13697 from edsantiago/upgrade_test_matrix
Upgrade tests: reexamine cross-testing matrix
2022-03-30 16:41:21 -04:00
OpenShift Merge Robot fbbf5e88fd
Merge pull request #13646 from Luap99/slirp4netns-portrange
fix slirp4netns port forwarding with ranges
2022-03-30 13:25:20 -04:00
Paul Holzinger 23cdbf322d
test/apiv2: support netavark
Since netavark does not support dhcp yet we have to create a macvlan
network with a static subnet. Since we do not use the network to run
containers the actual subnet does not matter.

Also stop hard coding the network id. Unlike the cni backend the
netavark backend creates random ids that are not predictable.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-30 13:38:47 +02:00
John Matthews 1ffcc4a888 Add 'Os' to be queried via 'version' output
Signed-off-by: John Matthews <jwmatthews@gmail.com>
2022-03-29 18:10:59 -04:00
Ed Santiago 2a882b7703 Upgrade tests: reexamine cross-testing matrix
- removed: v1.9.0, v2.0.6
 + added:   v3.4.0

(Cannot add v4 because there's no such image on quay. As soon
as one appears, we should add it.)

Add a workaround for a UTS namespace conflict new in v3.4

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-03-29 15:24:36 -06:00
Paul Holzinger eedaaf33cd
fix slirp4netns port forwarding with ranges
The slirp4netns port forwarder was not updated to make use of the new
port format. This results in a problem when port ranges are used since
it does not read the range field from the port.

Update the logic to iterate through all ports with the range and
protocols. Also added a system test for port ranges with slirp4netns,
rootlesskit and the bridge network mode.

Fixes #13643

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-29 19:18:40 +02:00
OpenShift Merge Robot 3990f9c51e
Merge pull request #13692 from Luap99/upgrade-test
upgrade tests: fix networking problems
2022-03-29 18:32:03 +02:00
gcalin c185d8c0d6
Add option for pod logs to display different colors per container.
Signed-off-by: Krzysztof Baran <krysbaran@gmail.com>
Signed-off-by: gcalin <caling@protonmail.com>
2022-03-29 17:29:13 +02:00
cdoern 7a53428049 fix pod volume passing and alter infra inheritance
the infra Inherit function was not properly passing pod volume information to new containers
alter the inherit function and struct to use the new `ConfigToSpec` function used in clone
pick and choose the proper entities from a temp spec and validate them on the spegen side rather
than passing directly to a config

resolves #13548

Signed-off-by: cdoern <cbdoer23@g.holycross.edu>
Signed-off-by: cdoern <cdoern@redhat.com>
Signed-off-by: cdoern <cbdoer23@g.holycross.edu>
2022-03-29 11:10:46 -04:00
Paul Holzinger 61c518627d
upgrade tests: fix networking problems
With podman4 we support netavark, however old versions will still use
cni. Since netavark and cni can conflict we should not mix them.
Remove the network setup from the inital podman command and create the
directories manually to prevent such conflicts.

Also the update to 4.0 changes the network db structure. While it is
compatible from 3.X to 4.0 it will fail the other way around. In this
test it will happen because the cleanup process still uses the old
podman while the network connect/disconnect test already changed the db
format. Therefore the cleanup process cannot see any networks and will
not tear it down. The following start will fail because the ip address
is already assigned.

Fixes #13679

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-29 16:42:50 +02:00
Daniel J Walsh cdf74f2082
Set systemd mode if entrypoint begins with /bin/sh -c
Fixes: https://github.com/containers/podman/issues/13324

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-28 16:30:47 -04:00
OpenShift Merge Robot 54f808e4dd
Merge pull request #13651 from jwmatthews/fix13650
Fixes errors from 'manifest push' being dropped in remote case
2022-03-28 15:37:50 +02:00
OpenShift Merge Robot ffe87c0bdf
Merge pull request #13677 from flouthoc/rename-event
libpod, event: generate a valid event on container `rename` operation
2022-03-28 15:15:51 +02:00
Aditya R 82ed99b6af
event: generate a valid event on container rename operation
Following commit ensures that podman generates a valid event on `podman
container rename` where event specifies that it is a rename event and
container name swtichted to the latest name.

Signed-off-by: Aditya R <arajan@redhat.com>
2022-03-28 15:07:02 +05:30
John Matthews 7989880509 Fixes errors from 'manifest push' being dropped in remote case
Signed-off-by: John Matthews <jwmatthews@gmail.com>
2022-03-27 07:33:13 -04:00
Daniel J Walsh d106b294b4
Switch all calls to filepath.Walk to filepath.WalkDir
WalkDir should be faster the Walk, since we often do
not need to stat files.

[NO NEW TESTS NEEDED] Existing tests should find errors.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-27 07:18:25 -04:00
OpenShift Merge Robot 56b2937f87
Merge pull request #13653 from jmontleon/fix-manifest-push-header
Resolves #13629 Add RegistryAuthHeader to manifest push
2022-03-27 13:13:42 +02:00
OpenShift Merge Robot ddfa087d00
Merge pull request #13660 from rhatdan/error
Remove error stutter
2022-03-27 13:11:31 +02:00
jason 3cc1739373 Resolves #13629 Add RegistryAuthHeader to manifest push
Signed-off-by: Jason Montleon <jmontleo@redhat.com>
2022-03-26 16:39:11 -04:00
Daniel J Walsh 7680211ede
Remove error stutter
When podman gets an error it prints out "Error: " before
printing the error string.  If the error message starts with
error, we end up with

Error: error ...

This PR Removes all of these stutters.

logrus.Error() also prints out that this is an error, so no need for the
error stutter.

[NO NEW TESTS NEEDED]

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-25 21:47:04 -04:00
Daniel J Walsh ffbab30d7b
Run codespell to cleanup typos
[NO NEW TESTS NEEDED]

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-25 15:34:41 -04:00
Giuseppe Scrivano 640c2d53a8
test: fix podman run test as rootless
aafa80918a introduced the regression.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-25 15:50:31 +01:00
OpenShift Merge Robot 7934b77dd5
Merge pull request #13531 from cdoern/build
Add Context Directory to tar
2022-03-24 19:15:46 +01:00
OpenShift Merge Robot e657c7a170
Merge pull request #13622 from rhatdan/systemd1
When running systemd in a container set container_uuid
2022-03-24 19:05:44 +01:00
OpenShift Merge Robot caaaf07c1e
Merge pull request #13587 from giuseppe/clone-to-pod
container: allow clone to an existing pod
2022-03-24 18:09:43 +01:00
Giuseppe Scrivano ab8e15f6ac
Merge pull request from GHSA-qvf8-p83w-v58j
do not set the inheritable capabilities
2022-03-24 17:02:20 +01:00
Giuseppe Scrivano b469bf5c05
container: allow clone to an existing pod
Closes: https://github.com/containers/podman/issues/3979

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-24 14:24:50 +01:00
Daniel J Walsh 5e28cbc5fc
When running systemd in a container set container_uuid
systemd expects the container_uuid environment variable be set
when it is running in a container.

Fixes: https://github.com/containers/podman/issues/13187

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-23 15:05:30 -04:00
OpenShift Merge Robot a8743d3327
Merge pull request #13588 from flouthoc/import-os-arch
import: allow users to set `--os`, `--arch` and `--variant` of image imports
2022-03-23 13:15:47 +01:00
Giuseppe Scrivano aafa80918a
do not set the inheritable capabilities
The kernel never sets the inheritable capabilities for a process, they
are only set by userspace.  Emulate the same behavior.

Closes: CVE-2022-27649

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-23 09:05:18 +01:00