Commit Graph

18284 Commits

Author SHA1 Message Date
OpenShift Merge Robot cf70c75dba
Merge pull request #17822 from edsantiago/confirm_db
CI: test and confirm DESIRED_DATABASE
2023-03-17 09:01:43 -04:00
OpenShift Merge Robot 1ddf6fafcf
Merge pull request #17818 from edsantiago/logformatter_reliable_name
logformatter: futureproof output filename
2023-03-17 05:14:05 -04:00
Ed Santiago e2d49fb650 CI: test and confirm DESIRED_DATABASE
Just like we do with RUNTIME and NETWORK. Skipped for now in
system tests because there's no way yet to actually set the
database backend.

Also, in system test oneliner (first test), include DB

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-03-16 15:32:56 -06:00
OpenShift Merge Robot 931cd1d7da
Merge pull request #17815 from rhatdan/VENDOR
Vendor in latest containers/(storage, common, image)
2023-03-16 12:07:16 -04:00
OpenShift Merge Robot 806cd13002
Merge pull request #17752 from containers/dependabot/go_modules/github.com/vbauerster/mpb/v8-8.3.0
build(deps): bump github.com/vbauerster/mpb/v8 from 8.2.1 to 8.3.0
2023-03-16 11:15:21 -04:00
Ed Santiago 526dfb8936 logformatter: futureproof output filename
"Just this once", I thought, adding an obscure unmaintainable
duplication to the CI code. When will I learn?

This fixes the logformatter output filename to handle boltdb/sqlite.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-03-16 08:31:36 -06:00
OpenShift Merge Robot 498194c51f
Merge pull request #17808 from sbrivio-rh/pasta
Revert "Revert "pasta: Use two connections instead of three in TCP ra…
2023-03-16 10:27:15 -04:00
Daniel J Walsh e21cf2d8df
Vendor in latest containers/(storage, common, image)
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-16 09:26:19 -04:00
OpenShift Merge Robot 8f81e08f98
Merge pull request #17688 from mheon/add_sqlite_ci
Add SQLite job to CI
2023-03-16 04:04:48 -04:00
Stefano Brivio c2a24abc0d Revert "Revert "pasta: Use two connections instead of three in TCP range forward tests""
This reverts commit 1c08f2edac3f9ecf128cf8da91276e963e6ad14c: the
original failure reported in #17287 persists:

  [+1306s] not ok 453 podman networking with pasta(1) - TCP translated port range forwarding, IPv4, loopback

...

  [+1306s] # 2023/03/15 14:33:33 socat[119870] E connect(8, AF=2 127.0.0.1:5127, 16): Interrupted system call
  [+1306s] # xx
  [+1306s] # #/vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
  [+1306s] # #|     FAIL: Mismatch between data sent and received
  [+1306s] # #| expected: = xxx
  [+1306s] # #|   actual:   xx
  [+1306s] # #\^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

so keep two connections instead of three as long as I'm too dumb to
figure this out.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
2023-03-16 05:11:30 +01:00
OpenShift Merge Robot 9119157920
Merge pull request #17755 from adrianreber/2023-03-13-pre-allocate
Use append() to add elements to a slice (restore)
2023-03-15 20:35:01 -04:00
OpenShift Merge Robot 345aa34381
Merge pull request #17766 from rhatdan/man
[CI:DOCS] Document --format for additional man pages
2023-03-15 17:25:35 -04:00
Daniel J Walsh 3a59af219a
Add information for secret inspect
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Daniel J Walsh 87e93a7b67
Add format to podman volume ls
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Daniel J Walsh b424f8fb09
Add format to podman volume inspect
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Daniel J Walsh 2555c80340
Add format to podman secret ls
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Daniel J Walsh 1c4bd4a736
Add format to podman system df
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Daniel J Walsh 71bcd9891d
Add format to podman machine info
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Daniel J Walsh 581611844d
Add format table to podman image inspect man page
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-03-15 16:15:59 -04:00
Matt Heon b3035b9d66 Update Cirrus display names, and fix get-ci-vm script
Signed-off-by: Matt Heon <mheon@redhat.com>
2023-03-15 14:45:28 -04:00
Matt Heon 6142c16a9c Ensure SQLite places uses the runroot in transient mode
Transient mode means the DB should not persist, so instead of
using the GraphRoot we should use the RunRoot instead.

Signed-off-by: Matt Heon <mheon@redhat.com>
2023-03-15 14:45:28 -04:00
Matt Heon 2ec11b16ab Fix various integration test issues with SQLite state
Two main changes:
- The transient state tests relied on BoltDB paths, change to
  make them agnostic
- The volume code in SQLite wasn't retrieving and setting the
  volume plugin for volumes that used one.

Signed-off-by: Matt Heon <mheon@redhat.com>
2023-03-15 14:45:18 -04:00
Matt Heon 0f8530b1ee Remove test for pod/container name global uniqueness
We're removing this constraint from the database, so we should
not be verifying it in CI anymore.

Signed-off-by: Matt Heon <mheon@redhat.com>
2023-03-15 14:44:47 -04:00
Matt Heon 6e0f11da5d Improve handling of existing container names in SQLite
Return more sensible errors than SQLite's embedded constraint
failure ones. Should fix a number of integration tests.

Signed-off-by: Matt Heon <mheon@redhat.com>
2023-03-15 14:44:47 -04:00
Matt Heon 39fd9aa084 Add SQLite job to CI
Signed-off-by: Matt Heon <mheon@redhat.com>
2023-03-15 14:44:47 -04:00
OpenShift Merge Robot 990f4328b6
Merge pull request #17797 from containers/dependabot/go_modules/test/tools/github.com/vbatts/git-validation-1.2.0
build(deps): bump github.com/vbatts/git-validation from 1.1.0 to 1.2.0 in /test/tools
2023-03-15 12:13:44 -04:00
OpenShift Merge Robot 2718f54a29
Merge pull request #17729 from rhatdan/selinux
Support running nested SELinux container separation
2023-03-15 12:07:03 -04:00
OpenShift Merge Robot 41caa57df4
Merge pull request #17771 from vrothberg/fix-17665
events: no duplicates when streaming during a log rotation
2023-03-15 09:58:34 -04:00
OpenShift Merge Robot 2147e0b95d
Merge pull request #17793 from m-czernek/patch-1
[CI:DOCS] fix: Document removing anonymous volumes
2023-03-15 09:08:31 -04:00
dependabot[bot] 2b4a27719c
build(deps): bump github.com/vbatts/git-validation in /test/tools
Bumps [github.com/vbatts/git-validation](https://github.com/vbatts/git-validation) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/vbatts/git-validation/releases)
- [Commits](https://github.com/vbatts/git-validation/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: github.com/vbatts/git-validation
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-15 13:00:58 +00:00
Marek Czernek ea2a0767ac
fix: Document removing anonymous volumes
Signed-off-by: Marek Czernek <mczernek@redhat.com>
2023-03-15 10:35:21 +01:00
Valentin Rothberg 408e764b94 events: no duplicates when streaming during a log rotation
When streaming events, prevent returning duplicates after a log rotation
by marking a beginning and an end for rotated events.  Before starting to
stream, get a timestamp while holding the event lock.  The timestamp
allows for detecting whether a rotation event happened while reading the
log file and to skip all events between the begin and end rotation
event.

In an ideal scenario, we could detect rotated events by enforcing a
chronological order when reading and skip those detected to not be more
recent than the last read event.  However, events are not always
_written_ in chronological order.  While this can be changed, existing
event files could not be read correctly anymore.

Fixes: #17665
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-03-15 10:28:16 +01:00
OpenShift Merge Robot 68bf49799d
Merge pull request #17786 from Luap99/mac-helper-error
podman-mac-helper: exit 1 on error
2023-03-14 18:21:33 -04:00
OpenShift Merge Robot f8f5f3cec6
Merge pull request #17781 from Luap99/trace-hijack
system service --log-level=trace: support hijack
2023-03-14 17:48:49 -04:00
OpenShift Merge Robot a4537347c3
Merge pull request #17772 from vrothberg/unhide-events-stream
podman events: unhide --stream
2023-03-14 17:45:57 -04:00
Paul Holzinger bae07b6ea2
podman-mac-helper: exit 1 on error
We should return a proper exit code to signal the failure.

[NO NEW TESTS NEEDED] We do have any tests on macOS.

Fixes #17785

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-14 17:56:22 +01:00
OpenShift Merge Robot 998acd760f
Merge pull request #17707 from Luap99/wait-for-port
test/system: fix wait_for_port() to wait for bind
2023-03-14 12:35:58 -04:00
OpenShift Merge Robot 08cd180abc
Merge pull request #17736 from giuseppe/no-private-cgroupns-systemd
cgroupns: private cgroupns on cgroupv1 breaks --systemd
2023-03-14 11:33:24 -04:00
OpenShift Merge Robot 1a8a5bc04c
Merge pull request #17758 from edsantiago/bud_rootless_remote
bud tests: rootless remote: use correct socket path
2023-03-14 10:26:57 -04:00
OpenShift Merge Robot 6025103196
Merge pull request #17759 from sbrivio-rh/pasta
Revert "pasta: Use two connections instead of three in TCP range forward tests"
2023-03-14 10:00:02 -04:00
OpenShift Merge Robot c4c0793d21
Merge pull request #17770 from vrothberg/debug-17607
auto update system tests: help debug #17607
2023-03-14 09:46:51 -04:00
Paul Holzinger 7d8d3e810f
system service --log-level=trace: support hijack
When the service is running with trace log level it wraps the
`http.ResponseWriter` to log extra information. The problem is that the
new type does not keep all the functions from the embedded type.
Instead we have to implement them ourselves, however only Write() was
implemented. Thus `Hijack()`could not be called on the writer. To
prevent these issues we would implement all the interfaces that the
inner type supports (Header, WriteHeader, Flush, Hijack).

Fixes #17749

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-14 14:33:52 +01:00
Paul Holzinger eed389508e
test/system: fix wait_for_port() to wait for bind
The goal of the wait_for_port() function is to return when the port is
bound. This is to make sure we wait for application startup time.
This can be seen in some comments of the callers.

Commit 7e3d04fb caused this regression while reworking the logic to read
ports from /proc. I doesn't seem to cause problems in CI, properly
because the function returns before the port is bound.
I have not seen any flakes related to this but I only see the ones on
PRs where I rerun tests so it is best to wait for Ed to take a look.

Also fixes the broken ipv4_to_procfs() which only passes one argument to
__ipv4_to_procfs(), this results in the ipv4 not beeing inverted.
Therefore all bind checks against a direct ipv4 did not work.
This function accepts only an ipv4 but one caller passes localhost
which is invalid.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-14 14:24:04 +01:00
Giuseppe Scrivano 2d1f4a8bff
cgroupns: private cgroupns on cgroupv1 breaks --systemd
On cgroup v1 we need to mount only the systemd named hierarchy as
writeable, so we configure the OCI runtime to mount /sys/fs/cgroup as
read-only and on top of that bind mount /sys/fs/cgroup/systemd.

But when we use a private cgroupns, we cannot do that since we don't
know the final cgroup path.

Also, do not override the mount if there is already one for
/sys/fs/cgroup/systemd.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-14 12:34:52 +01:00
Giuseppe Scrivano 01fd5bcc30
libpod: remove error stutter
the error is already clear.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-14 12:34:52 +01:00
Valentin Rothberg 4562e61d20 podman events: unhide --stream
The --stream flag is being used extensively in the tests and some blog
posts refer to it which has been causing some confusion on why the flag
was hidden.  I do not see a good reason to hide it anymore, so unhide it
and add some docs.

[NO NEW TESTS NEEDED] as it's already being tested.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-03-14 11:26:50 +01:00
Valentin Rothberg 7a7af735ad test/system/255-auto-update.bats: multiple services
Wait for all generated services to be ready to be sure we can iron out
race conditions.  Also disable rollbacks to make sure we can analyze
the error if restarting a service fails.  This information may be
crucial to understand the flakes on Debian as tracked in #17607.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-03-14 10:30:32 +01:00
Valentin Rothberg 40d0d233eb 255-auto-update.bats: turn off rollback where needed
To help debug #17607, turn off rollbacks for tests that do not require
rollbacks.  Error when restarting the systemd units are then not
suppressed but returned which should give us more information about what
is going on the Debian systems.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-03-14 10:16:59 +01:00
Adrian Reber a9d70e9fe2
Use append() to add elements to a slice
The code was not using append() to add items to a slice.

Accessing non allocated elements of the slice failed with:

$ podman container restore -l
panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
github.com/containers/podman/v4/pkg/domain/infra/abi.(*ContainerEngine).ContainerRestore(0xc00051a8b8, {0x1dbced0, 0xc0000440d0}, {0x2a31b30, 0x0, 0x0}, {0x0, 0x0, 0x0, 0x0, ...})
	/share/go/src/github.com/containers/podman/pkg/domain/infra/abi/containers.go:676 +0x39c
github.com/containers/podman/v4/cmd/podman/containers.restore(0x28fb6c0?, {0xc0002c9080, 0x0, 0x1?})
	/share/go/src/github.com/containers/podman/cmd/podman/containers/restore.go:171 +0x4ef
github.com/spf13/cobra.(*Command).execute(0x28fb6c0, {0xc0000400b0, 0x1, 0x1})
	/share/go/src/github.com/containers/podman/vendor/github.com/spf13/cobra/command.go:916 +0x862
github.com/spf13/cobra.(*Command).ExecuteC(0x291ab00)
	/share/go/src/github.com/containers/podman/vendor/github.com/spf13/cobra/command.go:1044 +0x3bd
github.com/spf13/cobra.(*Command).Execute(...)
	/share/go/src/github.com/containers/podman/vendor/github.com/spf13/cobra/command.go:968
github.com/spf13/cobra.(*Command).ExecuteContext(...)
	/share/go/src/github.com/containers/podman/vendor/github.com/spf13/cobra/command.go:961
main.Execute()
	/share/go/src/github.com/containers/podman/cmd/podman/root.go:107 +0xcc
main.main()
	/share/go/src/github.com/containers/podman/cmd/podman/main.go:41 +0x7c

[NO NEW TESTS NEEDED]

Signed-off-by: Adrian Reber <areber@redhat.com>
2023-03-14 08:29:46 +00:00
Stefano Brivio 1c08f2edac Revert "pasta: Use two connections instead of three in TCP range forward tests"
This reverts commit e33f4e0bc7, going
back to three connections (not two) for each range in TCP tests. I'm
not sure yet what caused the original issue, but it might be fixed
now. If it does, this fixes #17287.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
2023-03-13 20:40:15 +01:00