You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Cross-Region Replication (CRR) cascade allows an object written to a source
4
+
Zenko location to automatically propagate through a chain of intermediate locations
5
+
to a final destination. When Backbeat replicates an object via the putMetadata route
6
+
with the x-scal-micro-version-id header, cloudserver rewrites the destination bucket's
7
+
replicationInfo so Backbeat picks it up again for the next hop.
8
+
9
+
Three dedicated accounts (crr-cascade-account-a, crr-cascade-account-b,
10
+
crr-cascade-account-c) each have their own IAM user, role and policy
11
+
(s3:ReplicateObject), and three crr-v1 locations (crr-cascade-location-a,
12
+
crr-cascade-location-b, crr-cascade-location-c) backed by those accounts.
13
+
Credentials are injected via CRR_CASCADE_INFO_A, CRR_CASCADE_INFO_B,
14
+
and CRR_CASCADE_INFO_C environment variables.
15
+
16
+
@2.15.0
17
+
@PreMerge
18
+
@ReplicationTest
19
+
@CRRCascade
20
+
Scenario: Object put in location A cascades through location B and arrives in location C
21
+
Given a cascade replication chain from "crr-cascade-location-a" to "crr-cascade-location-b" to "crr-cascade-location-c"
22
+
When I put object "cascade-obj" in the "crr-cascade-location-a" source bucket
23
+
Then the object should replicate from "crr-cascade-location-a" to "crr-cascade-location-b" within 300 seconds
24
+
And the object should replicate from "crr-cascade-location-b" to "crr-cascade-location-c" within 300 seconds
25
+
26
+
@2.15.0
27
+
@PreMerge
28
+
@ReplicationTest
29
+
@CRRCascade
30
+
Scenario: Object put in location A cascades through B and C and the loop back to A is detected
31
+
Given a cascade replication loop from "crr-cascade-location-a" to "crr-cascade-location-b" to "crr-cascade-location-c" back to "crr-cascade-location-a"
32
+
When I put object "cascade-loop-obj" in the "crr-cascade-location-a" source bucket
33
+
Then the object should replicate from "crr-cascade-location-a" to "crr-cascade-location-b" within 300 seconds
34
+
And the object should replicate from "crr-cascade-location-b" to "crr-cascade-location-c" within 300 seconds
35
+
And the original object at "crr-cascade-location-a" should not be overwritten by the cascade loop within 30 seconds
0 commit comments