This will ensure both `test-system` and `test-system-local` work.
The `test-system` target will use the skopeo binary at `./bin/skopeo`.
Setting SKOPEO_BINARY should have no effect on it.
The `test-system-local` (and `test-integration-local`) target can use
SKOPEO_BINARY at any location. This will be useful in CI where we need to test
skopeo installed by the package at /usr/bin.
Co-authored-by: Miloslav Trmač <mitr@redhat.com>
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
`hack/test-system.sh` earlier removed in commit 7e235ea contained
a storage.conf setup useful for running system tests in skopeo_cidev
container.
Getting rid of that also broke `make test-system` because the
systemtest: `copy: additional tag` started to break.
Running `make test-system-local` isn't ideal for local environments due
to creation of system-global containers with predictable names.
See: https://github.com/containers/skopeo/issues/2701#issuecomment-3415769846
So, this commit resurrects hack/test-system.sh. Followup commit will
modify Makefile targets to use this script again.
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
I want this for https://github.com/bootc-dev/bootc/issues/1686
so we can distinguish pulls there.
But more generally it's can be a good idea for people writing
scripts using skopeo to set custom user agents so that registries
can more easily trace which actors are performing tasks.
Assisted-by: Claude Code
Signed-off-by: Colin Walters <walters@verbum.org>
... and construct it from the primary inputs instead.
The name doesn't hurt in itself, but it ~forces us to use
multi-line test data, making this larger and harder to read than
necessary.
Signed-off-by: Miloslav Trmač <mitr@redhat.com>
This changes the test, we drop the two inputs that can't happen
in practice; and, instead, test the default situation of no TLS
options provided anywhere.
Signed-off-by: Miloslav Trmač <mitr@redhat.com>
They use exactly the same body, and differ only in data
(and we are going to keep iterating on the body).
Should not change (test) behavior.
Signed-off-by: Miloslav Trmač <mitr@redhat.com>
Else use ./bin/skopeo as the default binary.
This makes it a lot more flexible compared to just searching and using
the first skopeo in PATH. Also, allows to avoid any binary installation
to /usr/bin.
The SKOPEO_BINARY evaluation logic has been moved to a separate and
reusable Makefile target.
Co-authored-by: Miloslav Trmač <mitr@redhat.com>
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
NewEphemeralSigningMechanism() may, with Sequoia, return
a mechanism which !SupportsSigning(); so, to determine that,
test with a non-ephemeral mechanism instead. (That's likely
actually faster, because we create a GNUPGHOME in these tests
anyway, so we avoid creating an deleting a separate temporary
directory.)
Signed-off-by: Miloslav Trmač <mitr@redhat.com>
1. Packit config includes a `get-current-version` action to fetch the
version from `version/version.go` and not from the default `git
describe`. So, the copr rpm version will always be ahead of what's in
the official repos.
2. The absurdly high RPM Epoch is now limited to builds from
rhcontainerbot/podman-next copr. So, copr builds on PR jobs will use
the default Epoch value.
These two changes will make it easier for testers to fetch the scratch copr builds from
upstream PRs and it should allow for seamless upgrades.
(official rpm -> test copr rpm for bugfix -> upgrade to new official rpm)
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>