diff --git a/docker_test.go b/docker_test.go index 722b03c09..8d9201830 100644 --- a/docker_test.go +++ b/docker_test.go @@ -266,6 +266,23 @@ func TestContainerPushWithMultipleSlash(t *testing.T) { } } +// TestContainerSkipImageIdVerification re-runs the existing container +// push, pull, and buildx (which is also a push) flows with +// JFROG_CLI_SKIP_DOCKER_IMAGE_ID_VERIFICATION=true to prove build-info is +// still collected correctly when users opt into the skip escape hatch. The +// default path (verify, with WithFileBufferedOpener) is already covered by +// the same underlying tests running without the env var. Pull must ignore +// the skip env and always verify — this test also guards that contract. +func TestContainerSkipImageIdVerification(t *testing.T) { + initContainerTest(t) + clientTestUtils.SetEnvAndAssert(t, container.SkipDockerImageIdVerificationEnv, "true") + defer clientTestUtils.UnSetEnvAndAssert(t, container.SkipDockerImageIdVerificationEnv) + + t.Run("push", TestContainerPush) + t.Run("pull", TestContainerPull) + t.Run("buildx", TestDockerBuildxWithBuildInfo) +} + func runPushTest(containerManager container.ContainerManagerType, imageName, module string, withModule bool, t *testing.T, repo string) { imageTag, err := inttestutils.BuildTestImage(imageName+":1", "", repo, containerManager) assert.NoError(t, err) diff --git a/go.mod b/go.mod index 55ef73019..f21448c0c 100644 --- a/go.mod +++ b/go.mod @@ -19,7 +19,7 @@ require ( github.com/jfrog/build-info-go v1.13.1-0.20260331040230-c3b53d1a24ac github.com/jfrog/gofrog v1.7.6 github.com/jfrog/jfrog-cli-application v1.0.2-0.20260405065840-c930d515ef34 - github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260416104146-471c3f71ce61 + github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260421101844-c42ed5f491fa github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260417224747-1bea4a117b59 github.com/jfrog/jfrog-cli-evidence v0.9.2 github.com/jfrog/jfrog-cli-platform-services v1.10.1-0.20260415140604-583ae2ada347 @@ -248,7 +248,7 @@ require ( //replace github.com/ktrysmt/go-bitbucket => github.com/ktrysmt/go-bitbucket v0.9.80 -// replace github.com/jfrog/jfrog-cli-artifactory => github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260331093138-48a54e89a292 +// replace github.com/jfrog/jfrog-cli-artifactory => github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260421082647-2c85c5bbdaab //replace github.com/jfrog/build-info-go => github.com/fluxxBot/build-info-go v1.10.10-0.20260105070825-d3f36f619ba5 diff --git a/go.sum b/go.sum index acd59f0fa..6c7efbdc8 100644 --- a/go.sum +++ b/go.sum @@ -418,8 +418,8 @@ github.com/jfrog/jfrog-apps-config v1.0.1 h1:mtv6k7g8A8BVhlHGlSveapqf4mJfonwvXYL github.com/jfrog/jfrog-apps-config v1.0.1/go.mod h1:8AIIr1oY9JuH5dylz2S6f8Ym2MaadPLR6noCBO4C22w= github.com/jfrog/jfrog-cli-application v1.0.2-0.20260405065840-c930d515ef34 h1:qD53oDmaw7+5HjaU7FupqbB55saabNzMoMtu3kJfmg4= github.com/jfrog/jfrog-cli-application v1.0.2-0.20260405065840-c930d515ef34/go.mod h1:xum2HquWO5uExa/A7MQs3TgJJVEeoqTR+6Z4mfBr1Xw= -github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260416104146-471c3f71ce61 h1:cES0xZ9ABOY/f3nq+3ETiVPgzjs7tEpHFzstc8h3W2U= -github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260416104146-471c3f71ce61/go.mod h1:6QJFQvde/CLnFeIIFOvm/6QuQr8OT1QWiTJAkQ+1Mnc= +github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260421101844-c42ed5f491fa h1:TYcV+5qmFF1x8+jNpklseXQnKc4K5xh6XminwFhZbTo= +github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260421101844-c42ed5f491fa/go.mod h1:6QJFQvde/CLnFeIIFOvm/6QuQr8OT1QWiTJAkQ+1Mnc= github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260417224747-1bea4a117b59 h1:8FhaIKTTE3sERmW4oNtiMP5F3mCSDju3BKLOVsiZ6GA= github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260417224747-1bea4a117b59/go.mod h1:qpD7einonjqskDTEyqeG3NzAbZO6se0s0Pet0ObBQ3I= github.com/jfrog/jfrog-cli-evidence v0.9.2 h1:huiBzQSI9z3OF3l2RphthdXl1aH9zBsvAt+zLsApORI=