22453 Commits

Author SHA1 Message Date
bcc7537b11 Merge pull request #22620 from edsantiago/skip-machine-tests-if-we-can
Skip machine tests if they don't need to be run
2024-05-07 09:28:20 +00:00
f078258c83 Merge pull request #22560 from edsantiago/exitwitherror-part4
ExitWithError() -- run_test.go
2024-05-07 01:40:47 +00:00
6009ccac2b Merge pull request #22615 from containers/renovate/golang.org-x-term-0.x
Update module golang.org/x/term to v0.20.0
2024-05-06 16:22:27 +00:00
f1b8439966 Merge pull request #22529 from dcermak/substitute-home-in-runlabel
Also substitute $HOME in runlabel with user's homedir
2024-05-06 15:57:41 +00:00
87747ca820 Skip machine tests if they don't need to be run
Followup to #13936 : add an exclusion to localmachine tests
so we can avoid running those on test- or doc-only PRs.
Reason: #22551, the machine-start-timeout flake, is causing
hours of wasted time.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-05-06 09:55:16 -06:00
22eff26916 Update module golang.org/x/term to v0.20.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 14:25:51 +00:00
07d8b327a0 Merge pull request #22608 from giuseppe/use-pause-process-dir-for-root
util: specify a not empty pause dir for root too
2024-05-06 14:23:47 +00:00
efcb1f8996 Merge pull request #22605 from flo-at/main
[CI:DOCS]Add missing option 'healthy' to output of `podman run --help`
2024-05-06 13:54:00 +00:00
7462fdb406 Merge pull request #22584 from containers/renovate/github.com-cyphar-filepath-securejoin-0.x
Update module github.com/cyphar/filepath-securejoin to v0.2.5
2024-05-06 10:19:30 +00:00
419efb9eb5 util: specify a not empty pause dir for root too
commit b3014c1c69d5870104aa45f7caae7af041094171 changed
GetRootlessRuntimeDir() to return an empty string for root, so that
its value is not exported as XDG_RUNTIME_DIR, and other programs like
crun can use a better default.

Now GetRootlessPauseProcessPidPath() uses homedir.GetRuntimeDir().
The homedir.GetRuntimeDir() function returns a value also when running
as root so it can be used inside a nested Podman.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2024-05-06 12:14:00 +02:00
1d1dba3843 Add missing option 'healthy' to output of podman run --help
Signed-off-by: Florian Wickert <FlorianWickert@gmail.com>
2024-05-05 18:04:17 +02:00
46f247d880 Also substitute $HOME in runlabel with user's homedir
Some programs have their configuration files relative to the user's
home. It would be convenient being able to mount these into the container, but
that requires expansion of `~` or `$HOME` in a label. This commit adds support
for that for the `runlabel` command.

Signed-off-by: Dan Čermák <dcermak@suse.com>
2024-05-03 14:00:20 +02:00
7f6108233f Update module github.com/cyphar/filepath-securejoin to v0.2.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-03 09:51:56 +00:00
6ec2c0b43b Merge pull request #22552 from edsantiago/exitwitherror-part3
ExitWithError() - pod_xxx tests
2024-05-03 09:23:44 +00:00
275c068df7 ExitWithError() - pod_xxx tests
Followup to #22270: wherever possible/practical, extend command
error checks to include explicit exit status codes and error strings.

This commit handles a subset of test/e2e/pod_xxxx_test.go
(I stopped before this grew too huge for review)

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-05-02 08:48:24 -06:00
c9644ebccf Merge pull request #22557 from containers/renovate/golang.org-x-exp-0.x
Update module golang.org/x/exp to v0.0.0-20240416160154-fe59bbe5cc7f
2024-05-01 15:27:23 +00:00
45d9e66d2c Merge pull request #22556 from containers/renovate/github.com-shirou-gopsutil-v3-3.x
Update module github.com/shirou/gopsutil/v3 to v3.24.4
2024-05-01 15:24:33 +00:00
c378f2d03a ExitWithError() -- run_test.go
Followup to #22270: wherever possible/practical, extend command
error checks to include explicit exit status codes and error strings.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-05-01 07:41:10 -06:00
f2821c3914 Merge pull request #22553 from containers/renovate/github.com-docker-docker-26.x
Update module github.com/docker/docker to v26.1.1+incompatible
2024-05-01 12:50:34 +00:00
f8115d203c Update module golang.org/x/exp to v0.0.0-20240416160154-fe59bbe5cc7f
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-01 10:15:39 +00:00
a96326f608 Update module github.com/shirou/gopsutil/v3 to v3.24.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-01 04:28:10 +00:00
9b6a3a34ba Merge pull request #22548 from edsantiago/tools-ginkgo-update
vendor ginkgo 2.17.2 into test/tools
2024-04-30 19:50:16 +00:00
9c240337e1 Merge pull request #22550 from cevich/fix_sec_rate_limit
[skip-ci] GHA: Attempt fix exceeded a secondary rate limit
2024-04-30 19:12:34 +00:00
ce365db3a6 Merge pull request #22522 from containers/renovate/pytest-8.x
Update dependency pytest to v8.1.2
2024-04-30 18:40:53 +00:00
61b09333a8 Update module github.com/docker/docker to v26.1.1+incompatible
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-30 16:38:40 +00:00
a521f081c5 Merge pull request #22288 from ashley-cui/machmounttag
Fix machine volumes with long path
2024-04-30 16:36:53 +00:00
8942e2dbda GHA: Attempt fix exceeded a secondary rate limit
Frequent but intermittently, the stale issue and PR locking workflow
generates the error:

```
You have exceeded a secondary rate limit. Please wait a few minutes
before you try again. If you reach out to GitHub Support for help,
please include the request ID XYZ
```

According to upstream `dessant/lock-threads` issue 48, this seems to be
coming from the GitHub side (bug/feature/limitation), since the action
uses an official github API rate-limiting library.  It's unlikely related
to which style/syntax of github token is used, nor if the action is
executed concurrently across multiple repos.

According to the rate-limiting docs:
https://docs.github.com/en/rest/using-the-rest-api/rate-limits-for-the-rest-api?apiVersion=2022-11-28#about-secondary-rate-limits
it's possible the issue is caused due to an unknown aspect of the clause:

```
These secondary rate limits are subject to change without notice. You
may also encounter a secondary rate limit for undisclosed reasons.
```

The same docs indicate Github Apps have enhanced rate-limits which
scale with the org's repo count.  Attempt to fix the intermittent
failures by making use of a new, dedicated, org-specific, private "Stale
Locking App" I recently created.  This requires the addition of a new
action to the workflow that obtains a short-lived token for passing to
lock-threads.

Note: Because both `vars.STALE_LOCKING_APP_ID` and
`secrets.STALE_LOCKING_APP_PRIVATE_KEY` are defined at the
containers-organization level, the Buildah and Skopeo re-use
of this workflow should continue to function normally w/o change.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-04-30 12:01:42 -04:00
8a97a03f9b Merge pull request #22547 from containers/renovate/google.golang.org-protobuf-1.x
Update module google.golang.org/protobuf to v1.34.0
2024-04-30 15:35:25 +00:00
1bc6f16bd0 vendor ginkgo 2.17.2 into test/tools
..to match the version in root dir, to get rid of the mismatch
warning on every ginkgo run.

I still don't understand why renovatebot isn't doing this.

(Also, touch a file under e2e, to force tests to run)

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-04-30 09:26:35 -06:00
a140c74ba4 Fix machine volumes with long path and paths with dashes
AppleHV accepts a max 36 bytes for mount tags. Instead of using the fully qualified path for the mount tag, SHA256 the path, and truncate the shasum to 36 bytes.
Also correctly escape dashes in mounted paths.

Signed-off-by: Ashley Cui <acui@redhat.com>
2024-04-30 11:25:45 -04:00
d1f8933a93 Update module google.golang.org/protobuf to v1.34.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-30 13:02:52 +00:00
ba73c604c4 Merge pull request #22545 from containers/renovate/github.com-crc-org-crc-v2-2.x
Update module github.com/crc-org/crc/v2 to v2.35.0
2024-04-30 12:59:47 +00:00
d886d87edf Update module github.com/crc-org/crc/v2 to v2.35.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-30 09:08:49 +00:00
33d18cf904 Merge pull request #22541 from containers/renovate/github.com-onsi-gomega-1.x
Update module github.com/onsi/gomega to v1.33.1
2024-04-30 09:07:12 +00:00
c17f7af6b4 Update module github.com/onsi/gomega to v1.33.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-30 04:41:16 +00:00
9eefb5de3b Merge pull request #22532 from Luap99/more-e2e-fixes
test/e2e: more fixes to not leak tmp files/dirs
2024-04-29 14:39:39 +00:00
88b80c1df6 test/e2e: podman unshare image mount fix tmpdir leak
Because the test left the image mounted the cleanup failed to remove the
tmpdir as it contained an active mount point. Thus ensure we unmount the
image again to prevent this leak.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-04-29 14:16:37 +02:00
0faded53b8 test/e2e: do not leak /tmp/private_file
This should use the proper per test tempdir which works just as well for
the purpose.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-04-29 14:16:37 +02:00
88a625d319 test/e2e: "persistentVolumeClaim with source" do not leak file
Using /tmp means this file will be leaked and no deleted, switch to
using the per test tempdir which is removed after the test.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-04-29 14:16:36 +02:00
9ac6d9de45 Merge pull request #22207 from edsantiago/e2e-var-tmp
e2e tests: use /var/tmp, not $TMPDIR, as workdirs
2024-04-26 22:21:14 +00:00
eaf60c7fe7 e2e tests: use /var/tmp, not $TMPDIR, as workdirs
TMPDIR is typically /tmp which is typically(*) a tmpfs.

This PR ignores $TMPDIR when $CI is defined, forcing all
e2e tests to set up one central working directory in /var/tmp
instead.

Also, lots of cleanup.

 (*) For many years, up to and still including the time of
     this PR, /tmp on Fedora CI VMs is actually NOT tmpfs,
     it is just / (root). This is nonstandard and undesirable.
     Efforts are underway to remove this special case.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-04-26 14:29:56 -06:00
e5cfbbb09e Merge pull request #22520 from joshua-stone/specfix-summary-typo-fix
[skip-ci] Remove unncessary lines at the end of specfile summary
2024-04-26 18:43:50 +00:00
60b5488308 Update dependency pytest to v8.1.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-26 18:14:28 +00:00
02cfd71fe8 Merge pull request #22507 from ashley-cui/cache
Clean machine pull cache
2024-04-26 18:13:34 +00:00
cd6ff71cc3 Remove unncessary lines at the end of specfile summary
Signed-off-by: joshua-stone <joshua.gage.stone@gmail.com>
2024-04-26 14:09:37 -04:00
e412eff33f Clean machine pull cache
Cache cleanups only happen if there is a cache miss, and we need to pull a new image

For quay.io/podman/machine-os, we remove all old images from the cache dir. This means we will delete any file that exists in the cache dir; this should be safe to do since the machine pull code should be the only thing touching this cache dir. OCI machine images will always have a different manifest, and won’t be updated with the same manifest, so if the version moves on, there isn’t a reason to keep the old version in the cache, it really doesn’t change.

For Fedora (WSL), we use the cache, so we go through the cache dir and remove any old cached images, on a cache miss. We also switch to using ~/.local/share/containers/podman/machine/wsl/cache as the cache dir rather than ~/.local/share/containers/podman/machine/wsl. Both these behaviors existed in v4.9, but are now added back into 5.x.

For generic files pulled from a URL or a non-default OCI image, we shouldn’t actually cache, so we delete the pulled file immediately after creating a machine image. This restores the behavior from v4.9.

For generic files from a local path, the original file will never be cleaned up

Unsure how to test, so:
[NO NEW TESTS NEEDED]

Signed-off-by: Ashley Cui <acui@redhat.com>
2024-04-26 12:31:42 -04:00
80534fbe59 Merge pull request #22491 from baude/libkrun
Add krun support to podman machine
2024-04-26 15:06:33 +00:00
c94a720bb3 Merge pull request #22494 from baude/validateimage
Use custom image for make validatepr
2024-04-26 15:03:49 +00:00
d2c1de5993 Add krun support to podman machine
This PR adds libkrun support to podman machine.  This is an experimental feature and should not be marketed yet.  Before we unmark the experimental status on this function, we will need to have full CI support and a full podman point release has pased.

This work relies on the fact that vfkit and libkrun share a reasonably (if not perfectly) same API.  The --log-level debug option will not show a GUI screen for boots as krun is not capable of this.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-04-26 08:58:38 -05:00
0b9bc253a2 Merge pull request #22516 from Luap99/e2e-fixes
test/e2e: fixes to make test pass locally
2024-04-26 13:46:46 +00:00