Commit Graph

241 Commits

Author SHA1 Message Date
Paul Holzinger
a91d487db7 Merge pull request #29063 from l0rd/fix-machine-init-when-wsl-isnt-installed
Fix machine init when WSL isn't installed
2026-06-29 12:15:43 +02:00
Paul Holzinger
f1c4cf4d9b Merge pull request #29062 from ashley-cui/nightly-names
Upload artifacts with build suffix
2026-06-29 11:52:34 +02:00
Mario Loriedo
80203302f9 Fix lookup of WSL VMs with matching name
When WSL wasn't installed, the lookup erroneously reported that
a VM with the same name existed. Instead, in this case, the lookup
should return zero matching VMs.

Fixes https://github.com/podman-container-tools/podman/issues/29053

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2026-06-27 10:52:26 +02:00
Ashley Cui
f69796b6bc Upload artifacts with build suffix
The nightly release validation builds both on main and the latest release branch,
we should upload the artifacts with a suffix to differentiate the two

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-06-26 16:00:02 -04:00
renovate[bot]
61547d09b0 Update dawidd6/action-send-mail action to v18
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-26 02:49:08 +00:00
Ashley Cui
e696a79b58 Fix release email
gh auth login fails if we set GITHUB_TOKEN

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-06-25 09:13:09 -04:00
renovate[bot]
99174a9750 Update actions/setup-go action to v6.5.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-24 04:58:04 +00:00
Paul Holzinger
33e8a80ded drop unused swagger upload workflow
See the prior commit, we now build the swagger yaml as part of the
official readthedocs process so we do not need to host it elsewhere.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-23 19:11:11 +02:00
renovate[bot]
13bbb7d2ad Update r-lib/actions action to v2.12.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-23 07:49:22 +00:00
renovate[bot]
19edca8693 Update zizmorcore/zizmor-action action to v0.5.7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 02:32:30 +00:00
renovate[bot]
b05ed5abfe Update actions/checkout action to v7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-18 14:09:57 +00:00
Byounguk Lee
32f987fc8c ci: restrict specific workflows to the upstream repository
Many GitHub Actions workflows currently trigger on user forks, leading to
unnecessary CI resource consumption, unwanted bot behavior, and inevitable
failures. This commit restricts these specific workflows to only run on the
primary `containers/podman` repository.

The restricted workflows fall into two main categories:
1. Require Custom Upstream Secrets: Workflows like `release`, `mac-pkg`,
   `cherry-pick`, and `dev-bump` rely on secrets (e.g., Apple/Azure certs,
   PODMANBOT_TOKEN, ACTION_MAIL_*) that are unavailable in forks.
2. Manage Upstream Tracker State: Workflows like `assign`, `stale`, and
   `labeler` are intended strictly for managing the primary project's
   issues and PRs. Running them on personal forks creates unwanted noise.

Additionally, refactored several complex `if` conditions using YAML
multi-line strings (`|`) to maintain and improve readability.

Signed-off-by: Byounguk Lee <nimdrak@gmail.com>
2026-06-18 11:32:53 +00:00
Paul Holzinger
c8ce2c6089 validate: disable golangci-lint cache
Something with the cache is not working right and results in
inconsistent lint result.

Even on PRs where there are no source code changes we observe random
failures. I have seen at least 4 different instances since we the new CI
setup. It is not reasonable to spot fix each new warning (mostly just
adding new nolint comments) each time as it affects all PRs at once.
It will also be very confusing for new contributors.

Fixes: #28893

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-16 18:58:46 +02:00
Matt Heon
735d0b0093 Merge pull request #28903 from Luap99/fix-chrootarchive-remote
fix podman-remote save -f oci-dir/docker-dir
2026-06-11 09:58:56 -04:00
Mario Loriedo
d1f0833c5f Merge pull request #28895 from ashley-cui/nightly
Release CI: Migrate to re-usable build action
2026-06-11 11:48:25 +02:00
Paul Holzinger
fd07b9c6ec fix podman-remote save -f oci-dir/docker-dir
With podman-remote we do not enter a our user namespace like we do with
local podman so we keep running with the real user id.

So if we then try to use chrootarchive as normal user it fails with:
creating mount namespace before pivot: operation not permitted

So simply revert back to the normal archive code.

Now the more interesting thing is we do have a test
"podman save to directory with oci format" but it never runs
rootless+remote in our CI system with our current matrix as we wanted to
reduce jobs.
So rethink the matrix and add one such job as this shows it is needed.

Fixes: 25aee24cbd ("use chrootarchive over plain archive package")

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-10 18:47:02 +02:00
Ashley Cui
2f4e890067 Release CI: Migrate to re-usable build action
Migrate release to use release-build-artifacts action. This re-usable build action is tested nightly, so hopefully this will make our release automation more stable, as we may catch issues in our nightly runs. Followup to https://github.com/podman-container-tools/podman/pull/28176

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-06-09 14:25:10 -04:00
renovate[bot]
612a4acaab Update actions/stale action to v10.3.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-09 18:20:33 +00:00
Ashley Cui
3ca887232d Some Windows release cleanup
- Update pandoc
- Remove unused FETCH_BASE_URL
- Remove legacy installer upload (74043cf7)

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-06-09 14:15:42 -04:00
Mario Loriedo
138879058b Merge pull request #28843 from kolyshkin/should-include-tests
ci: fix validate-source checks vs stale labels
2026-06-05 19:23:44 +02:00
Mario Loriedo
3ab25801a8 Merge pull request #28867 from ashley-cui/relauto
Release automation: update org location
2026-06-05 19:04:41 +02:00
Paul Holzinger
fd9ca9d1f6 Merge pull request #28862 from podman-container-tools/renovate/actions-checkout-6.x
[skip-ci] Update actions/checkout action to v6.0.3
2026-06-05 18:15:22 +02:00
Ashley Cui
c0f582d734 Release automation: update org location
containers -> podman-container-tools

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-06-05 09:22:33 -04:00
renovate[bot]
821ab5493a Update dependency macos to v26
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-04 22:49:32 +00:00
renovate[bot]
dbd7b4c138 [skip-ci] Update actions/checkout action to v6.0.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-04 19:13:23 +00:00
Miloslav Trmač
31544e1f10 Merge pull request #28852 from l0rd/more-gh-token-in-webrequest
Set permissions for win installer CI job
2026-06-04 18:50:29 +02:00
Mario Loriedo
9c7ad74ede Set permissions for win installer CI job
Explicitly set `content: read` permissions so that the GITHUB_TOKEN type
have permissions to "Get a release".

Fixes https://github.com/podman-container-tools/podman/issues/28850

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2026-06-04 12:25:24 +02:00
renovate[bot]
23ebddbee1 [skip-ci] Update zizmorcore/zizmor-action action to v0.5.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-04 09:01:31 +00:00
Kir Kolyshkin
d05c113acd ci: fix validate-source checks vs stale labels
When the validate-source job is re-run manually after adding a label,
it uses stale labels (from the "pull_request" event that originally
triggered it), and so the steps that check labels don't see new labels.

Fix by querying the labels live (similar to how it was done before
commits 6e597af6dc and 1da154117c).

Note the logic differs slightly between hack/ci/make-and-check-size.sh
and hack/ci/pr-should-include-tests. This is because
pr-should-include-tests is also executed locally as well as on non-PRs,
while make-and-check-size is run strictly in CI for PRs only.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-03 11:44:07 -07:00
Paul Holzinger
602a803f57 ci: fix validate job to actually work on push
We need to not hard depend on the pull_request var contexts so use the
right alternatives. The PR_ envs can be left empty, the tests using them
should skip the checks if they are unset/empty.

Fixes: #28825

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-02 19:50:37 +02:00
Jan Rodák
9cef14899f Merge pull request #28832 from ashley-cui/ci
CI: Adjust Mac tmpdir
2026-06-02 11:55:45 +02:00
Paul Holzinger
3743b9f806 Goodbye Cirrus
Removing remaining cirrus specific files that we no longer use in the
new CI setup.

Fixes: #28829

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 20:34:27 +02:00
Paul Holzinger
c4d895b07c ci: add path-filter to success job
It is not strictly needed I think since other jobs depend on this
already but for consistency this is easier to check that success waits
for all jobs.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 20:34:27 +02:00
Ashley Cui
2984c2450b CI: Adjust Mac tmpdir
Makes for easier cleanup, and follows previous cirrus convention.

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-06-01 13:24:35 -04:00
Paul Holzinger
3faf2deaf8 ci: skip validate-source on push
The checkout needs the PR context so this fails on push, as such skip it
there for now until we make this work to also work on normal pushes.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 17:00:17 +02:00
Paul Holzinger
0fce332955 ci: add GITHUB_TOKEN to win installer test
The test uses the token for API request so we do not get rate limit
failures without a token, see commit 7c7d56a0fb.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 17:00:17 +02:00
Paul Holzinger
1fb335d245 ci: disable swagger.yml job
We do not have permissions setup for this and this needs some more
design before we should use it.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 17:00:17 +02:00
Paul Holzinger
a758d09b64 ci.yml: add macos jobs
Copied from Tim, but directly integrated into the main yml file to allow
for proper task dependencies.

Co-authored-by: Tim Zhou <tizhou@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 17:00:17 +02:00
Paul Holzinger
2297695d0c ci.yml: add windows jobs
Copied from Tim, but directly integrated into the main ci.yml file to
allow for proper task dependencies.

I renamed same task and updated the task dependencies.

Co-authored-by: Tim Zhou <tizhou@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 17:00:16 +02:00
Paul Holzinger
399e822ca4 New GHA lima ci testing setup
The main gh action is just there to install lima and then call the main
ci.sh script which uses lima to start the right VM and then run the
tests inside there mostly for linux tasks where possible.

Inside the VM we use the runner.sh script to setup the env and launch the
final test.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-06-01 13:01:34 +02:00
Kir Kolyshkin
26e30e5f6d Publish swagger.yaml from GitHub Actions on push to main and tags
Add a 'Publish swagger' workflow that builds pkg/api/swagger.yaml and
uploads it to the libpod-master-releases GCS bucket (swagger-latest.yaml
for main, swagger-<tag>.yaml for tags), reusing the same gcsupld container
as Cirrus with GCPJSON/GCPNAME supplied via repository secrets. Per-PR
uploads to libpod-pr-releases are dropped, as nothing consumes them.

The gcsupld image tag is hardcoded (copied from .cirrus.yml IMAGE_SUFFIX)
rather than read at runtime, since Cirrus CI is to be decommissioned soon.

Remove the now-migrated swagger_task from .cirrus.yml (and its success_task
dependency) and the _run_swagger handler from hack/ci/runner.sh, and update
docs/README.md to point at the new workflow. While at it, fix the link in
docs/README.md to hack/ci/README.md#docs-task, which had been dangling ever
since that file was removed in 2020 by commit 2c9084e224.

Note: requires GCPJSON and GCPNAME to be configured as GitHub repository
secrets before the upload step can succeed.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-01 13:01:34 +02:00
Kir Kolyshkin
6071d780e9 Run 'make swagger' in the validate-source GHA job
Build pkg/api/swagger.yaml via the go-swagger tool as part of source
validation, confirming the API spec generates cleanly. This mirrors the
generation half of the Cirrus swagger_task; that task is kept for now as
it also publishes swagger.yaml to GCS for the docs site, which is not
migrated here.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-01 13:01:34 +02:00
Kir Kolyshkin
1da154117c Migrate 'build each commit' check from Cirrus to GHA
Add a 'Build each commit' step to the validate-source job. It builds the
PR fork point to record baseline binary sizes, then rebuilds and size-checks
each commit via 'git rebase -x', confirming every commit compiles on its own
and that no binary grows beyond the enforced limit.

Move hack/make-and-check-size to hack/ci/make-and-check-size.sh and replace
its Cirrus-specific GitHub GraphQL label query with a BLOAT_APPROVED env var
that the workflow derives from the 'bloat_approved' PR label.

Drop the now-migrated 'Build Each Commit' matrix entry from .cirrus.yml and
the corresponding *Each* case from hack/ci/runner.sh.

NOTE due to chicken-and-egg problem with make-and-check-size we need to
make a copy of it before working with git.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-01 13:01:34 +02:00
Kir Kolyshkin
6e597af6dc Migrate validate-source from Cirrus to GitHub Actions
Move the Cirrus validate-source_task to a GitHub Actions workflow
(.github/workflows/ci.yml) running as a single job on the CNCF-hosted
runner. The job runs the same stages: make validate-source,
tests-included, and the conditional renovate config check.

golangci-lint for FreeBSD and macOS now runs cross-compiled (GOOS) on
the native Linux runner instead of on dedicated Cirrus VMs/workers, so
the lint steps are dropped from osx_alt_build and freebsd_alt_build.

The PR helper scripts are de-Cirrus'd: they read CI-neutral env vars
(PR_HEAD, PR_NUMBER, PR_BODY) and the "No New Tests" label override is
now handled natively in the workflow instead of via a GraphQL query.

The shared clone/setup/main YAML anchors are relocated into build_task,
and the dead _run_validate-source runner.sh function is removed.

The tests-of-tests (.t files) are fixed for new setup (mostly removing
test cases which are now obsoleted, like [CI:DOCS] and [NO NEW TESTS]
markers. NOTE we still don't run tests in CI (although we could), but
I ran them locally and fixed all the issues.

Finally, test-jira-links-included is removed as it is RHEL-branch
specific and have no place in the new repo.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-06-01 13:01:33 +02:00
Kir Kolyshkin
cd78329c3f ci: pin all github actions
Some were already pinned; let's fix the rest.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2026-05-19 12:11:39 -07:00
Ashley Cui
6ad87d00e0 Add nightly release pipeline validation
Build installers nightly, and test that our bot key is still valid. This is to catch hiccups before release time.

The intention is that after this is tested, the build-artifacts can be used in release.yml, like it is used in the validation action
But for now, the actual release does not use the build-artifacts action yet, let's let the testing bake a little first.

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-05-13 16:41:20 -04:00
Ashley Cui
e131ee6274 Remove deprecated release actions
Our new release has been mostly stable at this point, remove legacy actions.

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-05-12 14:54:18 -04:00
renovate[bot]
336601535a [skip-ci] Update r-lib/actions action to v2.12.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-30 11:46:52 +00:00
renovate[bot]
7812e9d814 [skip-ci] Update dawidd6/action-send-mail action to v17
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-28 12:04:43 +00:00
renovate[bot]
a1734fb02b [skip-ci] Update dawidd6/action-send-mail action to v16
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-21 20:58:17 +00:00