diff --git a/core/src/main/java/google/registry/rde/BrdaCopyAction.java b/core/src/main/java/google/registry/rde/BrdaCopyAction.java index e77f65c3a..8ec3495d0 100644 --- a/core/src/main/java/google/registry/rde/BrdaCopyAction.java +++ b/core/src/main/java/google/registry/rde/BrdaCopyAction.java @@ -24,6 +24,7 @@ import google.registry.config.RegistryConfig.Config; import google.registry.gcs.GcsUtils; import google.registry.keyring.api.KeyModule.Key; import google.registry.model.rde.RdeNamingUtils; +import google.registry.model.rde.RdeRevision; import google.registry.request.Action; import google.registry.request.Parameter; import google.registry.request.RequestParameters; @@ -86,7 +87,11 @@ public final class BrdaCopyAction implements Runnable { } private void copyAsRyde() throws IOException { - String nameWithoutPrefix = RdeNamingUtils.makeRydeFilename(tld, watermark, THIN, 1, 0); + int revision = + RdeRevision.getCurrentRevision(tld, watermark, THIN) + .orElseThrow( + () -> new IllegalStateException("RdeRevision was not set on generated deposit")); + String nameWithoutPrefix = RdeNamingUtils.makeRydeFilename(tld, watermark, THIN, 1, revision); String name = prefix.orElse("") + nameWithoutPrefix; BlobId xmlFilename = BlobId.of(stagingBucket, name + ".xml.ghostryde"); BlobId xmlLengthFilename = BlobId.of(stagingBucket, name + ".xml.length"); diff --git a/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java b/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java index 1cee71b42..1020dbf63 100644 --- a/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java +++ b/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java @@ -16,6 +16,7 @@ package google.registry.rde; import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertWithMessage; +import static google.registry.persistence.transaction.TransactionManagerFactory.tm; import static google.registry.testing.SystemInfo.hasCommand; import static java.nio.charset.StandardCharsets.UTF_8; import static org.junit.jupiter.api.Assumptions.assumeTrue; @@ -27,6 +28,8 @@ import com.google.common.io.CharStreams; import com.google.common.io.Files; import google.registry.gcs.GcsUtils; import google.registry.keyring.api.Keyring; +import google.registry.model.rde.RdeMode; +import google.registry.model.rde.RdeRevision; import google.registry.testing.AppEngineExtension; import google.registry.testing.BouncyCastleProviderExtension; import google.registry.testing.FakeKeyringModule; @@ -109,6 +112,10 @@ public class BrdaCopyActionTest { action.receiverKey = receiverKey; action.signingKey = signingKey; action.stagingDecryptionKey = decryptKey; + tm().transact( + () -> { + RdeRevision.saveRevision("lol", DateTime.parse("2010-10-17TZ"), RdeMode.THIN, 0); + }); } @ParameterizedTest