From d18281c03338be2c53ccaffc0b849a9e86c2f488 Mon Sep 17 00:00:00 2001 From: Valerij Fredriksen Date: Tue, 28 Feb 2023 11:17:45 +0100 Subject: Handle bucket name ending with tenant name --- .../com/yahoo/vespa/hosted/provision/archive/ArchiveUriManager.java | 4 ++-- .../yahoo/vespa/hosted/provision/archive/ArchiveUriManagerTest.java | 5 ++++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManager.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManager.java index 3ff6999f082..faa360bbcb1 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManager.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManager.java @@ -47,8 +47,8 @@ public class ArchiveUriManager { archiveUris.get().tenantArchiveUris().get(app.tenant())) .map(uri -> { // TODO (freva): Remove when all URIs dont have tenant name in them anymore - String tenantSuffix = app.tenant().value() + "/"; - if (uri.endsWith(tenantSuffix)) return uri.substring(0, uri.length() - tenantSuffix.length()); + String tenantSuffix = "/" + app.tenant().value() + "/"; + if (uri.endsWith(tenantSuffix)) return uri.substring(0, uri.length() - tenantSuffix.length() + 1); return uri; }) .map(uri -> { diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManagerTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManagerTest.java index e759a0b0a7f..44c1c976355 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManagerTest.java +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/archive/ArchiveUriManagerTest.java @@ -65,8 +65,11 @@ public class ArchiveUriManagerTest { ApplicationId app1 = ApplicationId.from("vespa", "music", "main"); ArchiveUriManager archiveUriManager = new ProvisioningTester.Builder().build().nodeRepository().archiveUriManager(); archiveUriManager.setArchiveUri(app1.tenant(), Optional.of("scheme://tenant-bucket/vespa")); - assertEquals("scheme://tenant-bucket/vespa/music/main/default/h432a/", archiveUriManager.archiveUriFor(createNode(app1, null)).get()); + + // Archive URI ends with the tenant name + archiveUriManager.setArchiveUri(app1.tenant(), Optional.of("scheme://tenant-vespa/")); + assertEquals("scheme://tenant-vespa/vespa/music/main/default/h432a/", archiveUriManager.archiveUriFor(createNode(app1, null)).get()); } private Node createNode(ApplicationId appId, CloudAccount account) { -- cgit v1.2.3