Skip to content

[release-1.43] Add new CI github actions CI to this branch#6921

Open
Luap99 wants to merge 33 commits into
podman-container-tools:release-1.43from
Luap99:release-1.43
Open

[release-1.43] Add new CI github actions CI to this branch#6921
Luap99 wants to merge 33 commits into
podman-container-tools:release-1.43from
Luap99:release-1.43

Conversation

@Luap99

@Luap99 Luap99 commented Jun 19, 2026

Copy link
Copy Markdown
Member

What this PR does / why we need it:

Enable full proper CI infrastructure on the branch so we can safely do more release knowing everything works.

Backports of:

Lint update is required as the old lint version is not compatible with our current go version.

How to verify it

see CI result

Which issue(s) this PR fixes:

Special notes for your reviewer:

Does this PR introduce a user-facing change?

None

timcoding1988 and others added 30 commits June 19, 2026 14:41
Signed-off-by: Tim Zhou <tizhou@redhat.com>
(cherry picked from commit 9c9519b)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Tim Zhou <tizhou@redhat.com>
(cherry picked from commit cf1c434)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
(cherry picked from commit c4c020d)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit d34a2b0)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
These should be included in the latest VM image.

And the docker install for conformance tests should not be done for
fedora as we do not run them there, so just make it error.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 2b45813)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
To be consistent with our other repos.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 8ca5629)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
With the 20260616t073924z image update the ubi10 image is included by
default in the cache.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit d153009)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Since commit 1bc5dd6 the images are no longer in this repo so the
script can be removed as it does nothing and is not integrated into CI.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 0758c96)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
remove .codespellrc and .golangci.yml from the list.

Neither of these files affects the real tests in any way and the smoke
test where we run golganci-lint is run always.

codespell does not seem to be run as part of validate at all right now.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit abb68ba)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
I could not find any reason why a longer commit history is needed here.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 5e41248)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
There is no need to pull down the large VM just to do do the simple make
vendor check. This also helps us because we can cache the modules.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 71260ea)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 7169368)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
This groups log output in the github UI and makes it easier to just show
the actual test results, the groups are hidden under an extra drop down
and only shown when selected.

Inspired by Miloslav container-libs change for this.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 961aca1)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Directly run on the github action runner, we do not need a full fedora
VM for validation.

Also update the pr-should-include-tests script with the logic from
podman to make it work under the GH actions context.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit c64a3de)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit a5528aa)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit b05431f)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Instead of using an extra third party action add our own script to
validate the commit length. This is based on the
hack/commit-subject-check.sh script in podman we already use there.

With that we can make this part of the local make validate check as well
and not just rely on github to flag it after the PR is created.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit ba8d101)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Note this one was not caught by codespell.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit c06fdc2)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
To catch some common typos at least.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit bf69f6d)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
To ensure this is actually run in CI. Somewhere in the github actions
migration we must have lost the golangci-lint run. But because this is
good for local users as well it should be part of the Makefile target.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 6d3367b)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Not all tasks need all the tools, i.e. for running tests or installing
docs we have no need for golangci-lint whatsoever.

So define two install targets for golangci-lint and go-md2man and have
the other targets depend on what they really need.

While the install.tools target was not really slow the golangci-lint
binary is fetched from github which means a network dependency and
because the test targets calls it it could mean flakes where there is
really no need for it to begin with.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit afbf25d)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
For integration tests there is no need to build the docs. So add a new
target "binaries" to build all the binaries. It is like "all" just
without "docs".

This also makes it a bit more consistent with podman as we also have the
binaries target there.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit c256d24)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
"go list -m -f {{.GoVersion}}" returns the version as simple string and
handles the parsing logically the same way other go commands do so this
is much more robust than the custom sed which is harder to reason about.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 2f3bd3e)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
It is no longer used after the cirrus migration. In github action we use
"go-version-file: go.mod" for the vendor task so we can rely on that to
pull the right version.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 71c5c3d)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
The target has the right build dependencies already so no need to
manually do make all here which will also build docs we do not need.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit 28aaa32)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
The github UI job name gets combined with the name who spawned this and
the name of the job of the reusable workflow.
So right now by using the same name twice we just have duplication and
the job name is longer than it needs to be, i.e.
"integration vfs root fedora-current / integration vfs root fedora-current"

So instead hard code the second part to "lima". The advantage is the
name is shorter but also it is obvious which tasks are run on a VM.
It also matches the podman naming schema.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit dfbbc6a)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
(cherry picked from commit d0f7f46)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
(cherry picked from commit 6787303)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Fix a "that doesn't take %w" warning.
Fix two "you forgot to pass that error to the formatter" warnings.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
(cherry picked from commit 2e2bf30)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
nalind added 3 commits June 19, 2026 16:24
When connecting to a docker engine, claim that we're using whatever the
current version of the engine API is.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
(cherry picked from commit 8d6f3fc)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Newer docker build (and imagebuilder) make the implicit "/tcp" explicit
when EXPOSE is only given a port number.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
(cherry picked from commit 88441f4)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Add a field listing items we shouldn't expect to be the same in the
filesystem when we're using old-fashioned volumes, so that we can skip
the datestamp comparison on VOLUME locations for those cases.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
(cherry picked from commit 610a22b)
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
@Luap99

Luap99 commented Jun 19, 2026

Copy link
Copy Markdown
Member Author

Ok took a bit longer as I needed to cherry-pick more fixes to make all test pass and had a lot of minor git conflicts to solve but now it seems happy

cc @nalind @TomSweeneyRedHat @timcoding1988

@timcoding1988

Copy link
Copy Markdown
Contributor

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants