1
0
mirror of https://github.com/containers/podman.git synced 2026-02-05 06:45:31 +01:00
Commit Graph

809 Commits

Author SHA1 Message Date
Anders F Björklund
5f19b25aaf Add cache volumes for validatepr builds
This speeds up the build a lot (10x), the second time.

Also add --init, so that it is possible to cancel it.

Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
2026-01-29 19:55:20 +01:00
Brent Baude
f87cefc262 Remove Intel MacOS support
This PR removes support for Intel Apple Macs. The removal includes
impacts to code, tests, Makefile, builds, release builds, and so forth.

Fixes Jira: RUN-3621

Signed-off-by: Brent Baude <bbaude@redhat.com>
2025-12-07 07:03:06 -06:00
Jan Rodák
28b125837b Add --network=host to validatepr container for GitHub access
Allows the validatepr container to fetch dependencies from GitHub
during validation by enabling host networking.

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2025-11-19 18:22:05 +01:00
Lokesh Mandvekar
5d46171b7d bump golangcilint to 2.6.0
Obsoletes: #27407

Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2025-11-12 15:35:29 -05:00
openshift-merge-bot[bot]
80840578be Merge pull request #27395 from nalind/grpc-noop
Parse grpc requests on the service socket
2025-11-10 13:45:27 +00:00
Nalin Dahyabhai
be82989be3 Add a no-op GRPC responder service to the podman system service
Add a bare minimum GRPC service to the podman system service socket.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2025-11-03 11:14:32 -05:00
Colin Walters
ac888c73ef Makefile: Drop dead CONTAINER_RUNTIME
This variable is dead code as far as I can tell. I think it
got cargo culted from something similar in skopeo, where it *is*
used:
85598438ce/Makefile (L75)
etc.

(Instead it looks like there's a `PODMANCMD` here)

But I'm effectively using this PR as a way to suggest aligning
with what we're doing in bootc, where we have a core principle
that `Makefile` should *never* itself spawn containers (or VMs etc).
All the rules in Makefile are things that should work when e.g.
building RPMs or debs or the like.

Those tasks are things that are done via `Justfile`:
https://github.com/bootc-dev/bootc/blob/main/Justfile

So for example to align, we'd add a `Justfile` here and then
`make validatepr` would move to `just validatepr`.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-11-03 10:27:14 -05:00
Matt Heon
34166fc004 Bump Go version to v6
Tremendous amount of changes in here, but all should amount to
the same thing: changing Go import paths from v5 to v6.

Also bumped go.mod to github.com/containers/podman/v6 and updated
version to v6.0.0-dev.

Signed-off-by: Matt Heon <mheon@redhat.com>
2025-10-23 11:00:15 -04:00
openshift-merge-bot[bot]
b3ec5cf29e Merge pull request #26618 from mtrmac/sequoia
Add --sign-by-sq-fingerprint
2025-10-21 11:06:38 +00:00
Andrew Melnick
feb36e4fe6 Implement TLS API Support
* Added flags to point to TLS PEM files to use for exposing and connecting
  to an encrypted remote API socket with server and client authentication.
* Added TLS fields for system connection ls templates.
* Added special "tls" format for system connection ls to list TLS fields
  in human-readable table format.
* Updated remote integration and system tests to allow specifying a
  "transport" to run the full suite against a unix, tcp, tls, or mtls
  system service.
* Added system tests to verify basic operation of unix, tcp, tls, and mtls
  services, clients, and connections.

Signed-off-by: Andrew Melnick <meln5674.5674@gmail.com>
2025-09-26 09:09:54 -06:00
renovate[bot]
4b9be9c218 chore(deps): update dependency golangci/golangci-lint to v2.5.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-21 21:35:09 +00:00
Miloslav Trmač
2f005b67f4 Exercise containers_image_sequoia in CI
This build tag replaces the backend for _verification_
of GPG signatures, to use Sequoia-PGP instead of GNUPG.

Do Rawhide builds with Sequoia; the podman-sequoia package exists
in F43 and later, so we can't do it in earlier versions.

This way we cover both variants (+ containers_image_openpgp
in the podman-remote client, at least that it builds).

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2025-09-11 20:31:36 +02:00
Paul Holzinger
d0be0e9659 Makefile: restore HELPER_BINARIES_DIR
We need to update the import path over the variable overwrite after the
monorepo move.

Fixes: #27029
Fixes: a98154a9 ("Switch common, storage and image to monorepo.")

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-09 17:19:15 +02:00
Paul Holzinger
5c810ea1c8 Makefile: add SOURCES dep to bin/podman.cross.% target
Without this the corss binaries will never get rebuild until the user
manually deletes them which is not very useful.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-03 12:11:23 +02:00
Paul Holzinger
b62f887fbd Makefile: add proper docs for bin/podman.cross.%
To avoid any confusion where people think this target is unused.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-03 12:11:23 +02:00
Paul Holzinger
3633cd53e8 Revert "Remove bin/podman.cross Make target"
This reverts commit c45b27ffb0.

This commit was just wrong, local-cross depends on this target as it
calls a target like "bin/podman.cross.linux.amd64". Without this it is
just broken as there is no matching target.

$ make bin/podman.cross.linux.amd64
make: *** No rule to make target 'bin/podman.cross.linux.amd64'.  Stop.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-03 12:11:23 +02:00
renovate[bot]
599c635f9f chore(deps): update dependency golangci/golangci-lint to v2.4.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-14 03:58:04 +00:00
openshift-merge-bot[bot]
b147284641 Merge pull request #26734 from osalbahr/makefile-clarify-binaries
Makefile: Clarify different `binaries` targets
2025-08-06 12:20:57 +00:00
renovate[bot]
1001450d77 chore(deps): update dependency golangci/golangci-lint to v2.3.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-03 01:03:20 +00:00
Osama Albahrani
32ec523ef6 Makefile: Clarify different binaries targets
I ran `make help` and found it confusing that `binaries` is listed three times:

```console
Target:                     Description:
--------------              --------------------
binaries                    Build podman and podman-remote binaries
binaries                    Build podman, podman-remote and rootlessport binaries quadlet
binaries                    Build podman-remote (client) only binaries
clean-binaries              Remove platform/architecture specific binary files
clean                       Clean all make artifacts
docs                        Generate documentation
help                        (Default) Print listing of key targets with their descriptions
install.tools               Install needed tools
install                     Install binaries to system locations
local-cross                 Cross compile podman binary for multiple architectures
podman-mac-helper           Build podman-mac-helper for macOS
podman-remote-release-%.zip Build podman-remote for %=$GOOS_$GOARCH, and docs. into an installation zip.
rpm-install                 Install rpm packages
rpm                         Build rpm packages
test                        Run unit, integration, and system tests.
validatepr                  Go Format and lint, which all code changes must pass
```

So I'm proposing a way to differentiate btween them.

Signed-off-by: Osama Albahrani <54853250+osalbahr@users.noreply.github.com>
2025-08-01 23:47:19 +03:00
renovate[bot]
ea5b83c0cb chore(deps): update dependency golangci/golangci-lint to v2.3.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-21 18:18:40 +00:00
renovate[bot]
0c586807ea chore(deps): update dependency golangci/golangci-lint to v2.2.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 13:37:46 +00:00
Paul Holzinger
d8599658ff Makefile: add Makefile to sources
During my binary size reduce experiments I often switch build tags
around but make binaries does not recompile in these cases.
It is annoying to always do touch cmd/podman/main.go so let's add it to
the SOURCES instead so the Makefile will recompile on changes.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-30 19:39:45 +02:00
Paul Holzinger
3d453572a9 Makefile: add grpcnotrace build tag
The build tag was added to remove the "golang.org/x/net/trace"
dependency[1]. So let's use that.
With that we reoduce the binary size by 432KB.

[1] https://github.com/grpc/grpc-go/pull/6954

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-30 19:22:08 +02:00
renovate[bot]
92a6298729 chore(deps): update dependency golangci/golangci-lint to v2.2.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-30 09:46:18 +00:00
Paul Holzinger
0439167943 remove hack/install_catatonit.sh
This was not updated to the latest versions and CI and basically any
user should get in from their distro repos.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-17 18:35:28 +02:00
Paul Holzinger
bf7c9a1536 Makefile: remove some old files from clean target
These have not been build or used for a very long time so they can be
dropped IMO.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-17 18:31:10 +02:00
Paul Holzinger
8cfe7bb003 remove cni/
We no longer support CNI upstream and this default config file has not
been nedded for years since we started to generate our own default file
internally. And since 4.0.0 the default config file only exist in the
bianry and not on disk so this should not be installed by anyone even if
they still happen to use CNI.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-17 18:22:01 +02:00
Paul Holzinger
5d88999447 remove contrib/modules-load.d
We used this to load the iptables module, since f41 we use nftables by
default which does not need this at all so drop the module load file.

If some distros default still to the legacy iptables they can manually
add the moduled load file back.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-17 18:11:06 +02:00
Paul Holzinger
605b1f7386 remove contrib/remote/containers.conf
The config file is installed in the remote zip as an example but the
content in there is not being updated and no longer really the way to do
things. With podman 5.0 we have a proper system connection file and
people in general should just use the system connection commands.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-17 17:59:06 +02:00
openshift-merge-bot[bot]
9541c09620 Merge pull request #26334 from Luap99/sqlite-dynamic-link
dynamically link sqlite
2025-06-12 13:25:54 +00:00
Brent Baude
d4a8598ca4 make validate-in-container changes
changing the validate-in-container make target to use
quay.io/libpod/validatepr:latest.  this allows `make validate` to run to
completion doing linting, ed's perl checks, and pre-commit.]

The image is now based on F42 `awk` is not part of the base image, so I added `awk`.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2025-06-10 12:38:35 -05:00
Paul Holzinger
c6842d3425 Makefile: use libsqlite3 build when possible
Dynamically link sqlite3 when installed, the main motivation is that we
reduce the podman binary size with that. I see about 2.5 MB savings.

But also dynamically linking it means if there a vulnerabilities only
the sqlite3 distro package needs updating and we don't have to make a
new podman release with the vendored update.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-06-10 15:52:11 +02:00
openshift-merge-bot[bot]
dbebcbe619 Merge pull request #26325 from ninja-quokka/makefile
Allow generate-bindings on darwin
2025-06-10 13:36:40 +00:00
Lewis Roy
c45b27ffb0 Remove bin/podman.cross Make target
The local-cross Make target has superceeded this old Make target and the
warning to not use it has been in place now for 4+ years.

Removing it to clean up the Makefile slightly.

Signed-off-by: Lewis Roy <lewis@redhat.com>
2025-06-09 22:20:45 +10:00
Lewis Roy
c96d87ccad Allow generate-bindings on darwin
This exclusion has been there since the make target was added[1]. I wasn't
able to find the reason but this runs on Darwin today and is useful to
be able to run when you are developing bindings on a Mac.

[1] https://github.com/containers/podman/pull/8956

Signed-off-by: Lewis Roy <lewis@redhat.com>
2025-06-09 22:10:41 +10:00
Mario Loriedo
efc3b178bb Build windows arm64 artifacts
Includes the necessary changes so that the `Makefile` target
`release-artifacts` builds the `-windows_arm64.zip` too.

In particular the arm64 versions of gvproxy and win-sshproxy
are downloaded as part of the windows arm64 release zip file.

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2025-05-07 18:43:59 +02:00
renovate[bot]
ec6423e73b chore(deps): update dependency golangci/golangci-lint to v2.1.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-04 17:48:26 +00:00
Paul Holzinger
c9b1bd1cf3 Stop setting btrfs_noversion build tag
c/storage no longer uses this tag after
https://github.com/containers/storage/pull/2308.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-04-30 14:22:25 +02:00
Mark Johnston
ad20e257d6 Makefile: move some Go-related variable definitions up
Otherwise we evaluate NATIVE_GOOS before it is set, which breaks the
FreeBSD build since various make variables are not set correctly.

Fixes: #26006
Signed-off-by: Mark Johnston <mark.johnston@klarasystems.com>
2025-04-29 16:55:04 +00:00
renovate[bot]
710c077342 chore(deps): update dependency golangci/golangci-lint to v2.1.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-25 10:20:27 +00:00
Florent Benoit
75aec675d2 chore: use another script to get the version of gvproxy
Signed-off-by: Florent Benoit <fbenoit@redhat.com>
2025-04-22 22:04:08 +02:00
Yevhen Vydolob
ce0617eac4 Use gvisor-tap-vsock version from go.mod file
Instead of hardcoding gvisor version in different build files, we get gvisor version from go.mod file.

Signed-off-by: Yevhen Vydolob <yvydolob@redhat.com>
2025-04-22 18:44:04 +02:00
renovate[bot]
7b30f19535 chore(deps): update dependency golangci/golangci-lint to v2.1.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-15 15:53:06 +00:00
Paul Holzinger
f26765ceb0 update golangci-lint to v2.1.1
Fixes three new issues found by nilnesserr.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-04-14 19:33:42 +02:00
openshift-merge-bot[bot]
0a0d05b3e3 Merge pull request #25781 from kolyshkin/rm-goimports
Use golangci-lint fmt for pkg/bindings
2025-04-04 09:38:25 +00:00
openshift-merge-bot[bot]
e65bbab04d Merge pull request #25773 from kolyshkin/freebsd-no-seccomp
Makefile: exclude seccomp build tag for !linux
2025-04-04 02:20:23 +00:00
Kir Kolyshkin
9d4e820264 Use golangci-lint fmt for pkg/bindings
golangci-lint v2 introduced a new command, fmt, which runs configured
formatters (see formatters in .golangci.yml).

Use this for generated files. Drop separate goimports binary.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2025-04-03 10:41:14 -07:00
Kir Kolyshkin
055fc82bd2 Makefile: exclude seccomp build tag for !linux
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2025-04-03 10:09:07 -07:00
Kir Kolyshkin
a8dd9bc1ed Makefile: use GOOS/NATIVE_GOOS instead of uname -s
Saves a few fork/execs, and unify the code since other places are
already using NATIVE_GOOS or GOOS.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2025-04-03 10:08:49 -07:00