Skip to content

New gha ci#887

Merged
mheon merged 2 commits into
podman-container-tools:mainfrom
timcoding1988:new-gha-ci
Jun 5, 2026
Merged

New gha ci#887
mheon merged 2 commits into
podman-container-tools:mainfrom
timcoding1988:new-gha-ci

Conversation

@timcoding1988
Copy link
Copy Markdown

giuseppe added 2 commits June 1, 2026 10:12
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Signed-off-by: Tim Zhou <timcoding1988@gmail.com>
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Signed-off-by: Tim Zhou <timcoding1988@gmail.com>
@github-actions github-actions Bot added storage Related to "storage" package image Related to "image" package labels Jun 1, 2026
Comment thread hack/ci/runner.sh

GOSRC="$(pwd)"
SKOPEO_PATH="/var/tmp/skopeo"
SKOPEO_CIDEV_CONTAINER_FQIN="quay.io/libpod/skopeo_cidev:latest"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Just a drive-by, I won’t be able to review this today.) We never used :latest — if it even exists.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right though the automation to build these is dead, we need to add a new one in https://github.com/podman-container-tools/automation for this image

Copy link
Copy Markdown
Member

@Luap99 Luap99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, we can tweak later, some CI is better none

Comment thread .github/workflows/ci.yml
./hack/ci/df.log
if-no-files-found: ignore

common-test:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should this job use the path-filter dependency too?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

common has to run always basically, I guess the only exception would be basic readme changes but not really worth making this more complicated here as tests are fast enough.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, so LGTM

Comment thread .github/workflows/ci.yml
cancel-in-progress: true

env:
GO_VERSION: "1.26.x"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd rather remove this line and use go-version-file: go.mod below with setup-go.

Comment thread .github/workflows/ci.yml

env:
GO_VERSION: "1.26.x"
LIMA_VERSION: "v2.1.1"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Latest lima is usually fine so we can drop this one, too.

Comment thread .github/workflows/ci.yml

jobs:
path-filter:
runs-on: ubuntu-24.04
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: ubuntu-latest so we have less diff noise / maintenance burden in the future.

mtrmac
mtrmac previously requested changes Jun 4, 2026
Copy link
Copy Markdown
Contributor

@mtrmac mtrmac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! One real gap - the c/image tests that run as root are not correctly executed.

Otherwise, just a few changes, mostly to document motivations / outstanding actions, please.

Completely ignore the “not now” comments.

Comment thread .github/workflows/ci.yml
- main
- podman-*
pull_request:
branches:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Do we need this branch restriction? Running on everything would “fail closed”.)

Comment thread .github/workflows/ci.yml
cancel-in-progress: true

env:
GO_VERSION: "1.26.x"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hard-coding a version would mean we need to manage updates.

For linters / warnings, we can use go-version: stable and there is nothing to manage.

If we do want a precise version, we can drive it by go.mod via go-version-file.

Comment thread .github/workflows/ci.yml
Comment on lines +239 to +240
if [[ "${{ contains(needs.*.result, 'failure') }}" == "true" ]] || \
[[ "${{ contains(needs.*.result, 'cancelled') }}" == "true" ]]; then
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Not now? I’d prefer this to check only for success/skipped, and fail on unexpected states.)

Comment thread hack/ci/ci.sh

source "$SCRIPT_DIR/lib.sh"

AUTOMATION_RELEASE="20260520t200858z"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the right place for

Suggested change
AUTOMATION_RELEASE="20260520t200858z"
AUTOMATION_RELEASE="20260520t200858z" # FIXME: Make this Renovate-managed

?

Comment thread hack/ci/ci.sh
--set ".images=[{\"location\":\"$IMAGE_URL\", \"arch\": \"x86_64\"}]" \
"$SCRIPT_DIR/template.lima.yml"

limactl copy "$REPO_DIR" "$LIMA_VM_NAME:/var/tmp/container-libs"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not now: Is it plausible to use mounts? It’s probably not material here but to benefit from Go module / … cache, we might need to copy hundreds of megabytes of data.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried mounts on podman originally the problem is that I was not able to get the selinux labels right that way as they where set on the entire mount on a per file basis.

Comment thread hack/ci/runner.sh

GOSRC="$(pwd)"
SKOPEO_PATH="/var/tmp/skopeo"
SKOPEO_CIDEV_CONTAINER_FQIN="quay.io/libpod/skopeo_cidev:latest"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this is should be Renovate-managed, please add a FIXME comment.

Comment thread hack/ci/runner.sh
sudo mkdir -p /registry
sudo cp -a "$mnt/atomic-registry-config.yml" /
sudo podman umount --latest
sudo podman rm --latest
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not now: Could we embed the binaries directly into the VM image?

Comment thread hack/ci/runner.sh
sudo podman umount --latest
sudo podman rm --latest

git clone -b main https://github.com/containers/skopeo.git "$SKOPEO_PATH"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will need to use release branches of Skopeo on stable branches of c/image.

So the main should at the very least be a top-level variable in the script (previously SKOPEO_CI_BRANCH).

Comment thread hack/ci/runner.sh
paste -sd "|" -)
if [ -n "$test_filter" ]; then
sudo -E env "PATH=$PATH" "GOPATH=$GOPATH_DIR" "HOME=$HOME" \
make test "BUILDTAGS=$BUILDTAGS" "TESTFLAGS=-v -run $test_filter" TEST_PACKAGES=./storage
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be reporting testing: warning: no tests to run, i.e. the filter computation does not work.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added some debug logging in #891 , to hopefully speed this up.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#891 has a fix that could be ported here.

  • One part (missing ') is a clear bug in the CI port, that’s fine
  • Another part is that it seems ~impossible to prevent Make evaluating a $ in a value, so we have to pre-escape. Am I missing a clean solution? If not, this definitely needs a comment (and preserving more of the original comment about how the filter is constructed would be nice.)
  • If I understand the situation correctly, this never worked?! I am surprised we merged the original PR without noticing.

Comment thread hack/ci/runner.sh
echo
echo "#################"
echo "Logging system info"
echo "#################"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not now, https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-commands documents various formats that we probably can use to get a nicer UI (collapsible groups, group titles, default-collapsed groups)

Copy link
Copy Markdown
Contributor

@mtrmac mtrmac Jun 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done prototyped in #891 , results in much less log noise.

@mtrmac mtrmac mentioned this pull request Jun 4, 2026
@mheon
Copy link
Copy Markdown
Contributor

mheon commented Jun 5, 2026

While there are a lot of comments on this, I will just say: having working CI is better than not having working CI, and we can work details in follow-on PRs. I suggest we just merge this now.

@mheon mheon dismissed mtrmac’s stale review June 5, 2026 15:05

We need working CI

@mheon mheon merged commit d711236 into podman-container-tools:main Jun 5, 2026
44 of 52 checks passed
@mtrmac
Copy link
Copy Markdown
Contributor

mtrmac commented Jun 5, 2026

Thanks @timcoding1988 @giuseppe !

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

Labels

image Related to "image" package storage Related to "storage" package

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants