diff --git a/go.mod b/go.mod index 9a61f4585..55566ca83 100644 --- a/go.mod +++ b/go.mod @@ -193,7 +193,7 @@ require ( // replace github.com/jfrog/jfrog-cli-artifactory => github.com/jfrog/jfrog-cli-artifactory v0.3.2-0.20250527103322-0361d8f5612d -// replace github.com/jfrog/jfrog-cli-core/v2 => github.com/jfrog/jfrog-cli-core/v2 v2.31.1-0.20250527091824-60a3b4b741aa +replace github.com/jfrog/jfrog-cli-core/v2 => github.com/reshmifrog/jfrog-cli-core/v2 v2.31.1-0.20250617085436-8f59dff666f0 //replace github.com/jfrog/jfrog-client-go => github.com/jfrog/jfrog-client-go v1.28.1-0.20250508130334-f159cff9b11a diff --git a/go.sum b/go.sum index 55d50114b..9e015e7d2 100644 --- a/go.sum +++ b/go.sum @@ -188,8 +188,6 @@ 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-artifactory v0.3.2 h1:oBhiHBtWZCe4rG/WSwFWw3gqGnkcj3/TrfyyECh7AvM= github.com/jfrog/jfrog-cli-artifactory v0.3.2/go.mod h1:nRWIPgWl6IiZ7u5Ss40BL1YcL/naWwRgnrGllFBV0Ao= -github.com/jfrog/jfrog-cli-core/v2 v2.59.0 h1:Oqi2+skTbJIRDVyhN8kJdCP8w3w1mzXS1/Mx5AIuMsU= -github.com/jfrog/jfrog-cli-core/v2 v2.59.0/go.mod h1:1zZB8vn4yIh/hPj3ed82pI5IhKK9/SzeHsofMcknN68= github.com/jfrog/jfrog-cli-platform-services v1.9.0 h1:r/ETgJuMUOUu12w20ydsF6paqEaj0khH6bxMRsdNz1Y= github.com/jfrog/jfrog-cli-platform-services v1.9.0/go.mod h1:pMZMSwhj7yA4VKyj0Skr2lObIyGpZUxNJ40DSLKXU38= github.com/jfrog/jfrog-cli-security v1.19.0 h1:4qggon1biuOvjMjHZ5IWDA4Mh+qp2qecWEdeX6s4Xv8= @@ -307,6 +305,8 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw= github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= +github.com/reshmifrog/jfrog-cli-core/v2 v2.31.1-0.20250617085436-8f59dff666f0 h1:GSB61RQzD+4YDEY/yNcLiMmy5xRceR3wzE/vVymY67Y= +github.com/reshmifrog/jfrog-cli-core/v2 v2.31.1-0.20250617085436-8f59dff666f0/go.mod h1:1zZB8vn4yIh/hPj3ed82pI5IhKK9/SzeHsofMcknN68= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= diff --git a/lifecycle_test.go b/lifecycle_test.go index 14153264b..137b631d1 100644 --- a/lifecycle_test.go +++ b/lifecycle_test.go @@ -34,13 +34,15 @@ const ( artifactoryLifecycleMinVersion = "7.68.3" signingKeyOptionalArtifactoryMinVersion = "7.104.1" promotionTypeFlagArtifactoryMinVersion = "7.106.1" + rbVersion = "1.0.0" gpgKeyPairName = "lc-tests-key-pair" lcTestdataPath = "lifecycle" releaseBundlesSpec = "release-bundles-spec.json" buildsSpec12 = "builds-spec-1-2.json" buildsSpec3 = "builds-spec-3.json" prodEnvironment = "PROD" - number1, number2, number3 = "111", "222", "333" + number1, number2, number3, number4 = "111", "222", "333", "1-slash/slash" + buildName = "build-with/slash" withoutSigningKey = true artifactoryLifecycleSetTagMinVersion = "7.111.0" rbManifestName = "release-bundle.json.evd" @@ -126,6 +128,20 @@ func testReleaseBundleCreation(t *testing.T, uploadSpec, creationSpec string, ex assertRbArtifacts(t, lcManager, tests.LcRbName1, number1, expected) } +func TestCreateBundleWithSlashInBuildNameAndNumber(t *testing.T) { + cleanCallback := initLifecycleTest(t, artifactoryLifecycleMinVersion) + defer cleanCallback() + lcManager := getLcServiceManager(t) + + uploadBuildWithArtifacts(t, tests.UploadDevSpec, buildName, number4) + defer inttestutils.DeleteBuild(serverDetails.ArtifactoryUrl, buildName, artHttpDetails) + + createRbWithFlags(t, "", cliutils.Builds, buildName, number4, tests.LcRbName1, rbVersion, "", false, false) + defer deleteReleaseBundle(t, lcManager, tests.LcRbName1, rbVersion) + + assertStatusCompleted(t, lcManager, tests.LcRbName1, rbVersion, "") +} + func TestLifecycleFullFlow(t *testing.T) { cleanCallback := initLifecycleTest(t, signingKeyOptionalArtifactoryMinVersion) defer cleanCallback()