@@ -76,6 +76,8 @@ public class DisksIT {
76
76
private static final List <String > replicaZones = Arrays .asList (
77
77
String .format ("projects/%s/zones/%s-a" , PROJECT_ID , REGION ),
78
78
String .format ("projects/%s/zones/%s-b" , PROJECT_ID , REGION ));
79
+ private static String SECONDARY_REGIONAL_DISK ;
80
+ private static final long DISK_SIZE = 10L ;
79
81
private ByteArrayOutputStream stdOut ;
80
82
81
83
// Check if the required environment variables are set.
@@ -104,35 +106,39 @@ public static void setup()
104
106
ZONAL_BLANK_DISK = "gcloud-test-disk-zattach-" + uuid ;
105
107
REGIONAL_BLANK_DISK = "gcloud-test-disk-rattach-" + uuid ;
106
108
REGIONAL_REPLICATED_DISK = "gcloud-test-disk-replicated-" + uuid ;
109
+ SECONDARY_REGIONAL_DISK = "gcloud-test-disk-secondary-regional-" + uuid ;
107
110
108
- // Cleanup existing stale instances .
111
+ // Cleanup existing stale resources .
109
112
Util .cleanUpExistingInstances ("test-disks" , PROJECT_ID , ZONE );
110
113
Util .cleanUpExistingDisks ("gcloud-test-" , PROJECT_ID , ZONE );
114
+ Util .cleanUpExistingRegionalDisks ("gcloud-test-disk-secondary-regional-" , PROJECT_ID , REGION );
115
+ Util .cleanUpExistingRegionalDisks ("gcloud-test-disk-rattach-" , PROJECT_ID , REGION );
111
116
Util .cleanUpExistingSnapshots ("gcloud-test-snapshot-" , PROJECT_ID );
112
117
Util .cleanUpExistingRegionalDisks ("gcloud-test-disk-" , PROJECT_ID , REGION );
113
118
// Create disk from image.
114
119
Image debianImage = null ;
115
120
try (ImagesClient imagesClient = ImagesClient .create ()) {
116
121
debianImage = imagesClient .getFromFamily ("debian-cloud" , "debian-11" );
117
122
}
118
- CreateDiskFromImage .createDiskFromImage (PROJECT_ID , ZONE , DISK_NAME , DISK_TYPE , 10 ,
123
+ CreateDiskFromImage .createDiskFromImage (PROJECT_ID , ZONE , DISK_NAME , DISK_TYPE , DISK_SIZE ,
119
124
debianImage .getSelfLink ());
120
125
assertThat (stdOut .toString ()).contains ("Disk created from image." );
121
126
122
127
// Create disk from snapshot.
123
- CreateDiskFromImage .createDiskFromImage (PROJECT_ID , ZONE , DISK_NAME_DUMMY , DISK_TYPE , 10 ,
128
+ CreateDiskFromImage .createDiskFromImage (PROJECT_ID , ZONE , DISK_NAME_DUMMY , DISK_TYPE , DISK_SIZE ,
124
129
debianImage .getSelfLink ());
125
130
TimeUnit .SECONDS .sleep (10 );
126
131
createDiskSnapshot (PROJECT_ID , ZONE , DISK_NAME_DUMMY , SNAPSHOT_NAME );
127
132
String diskSnapshotLink = String .format ("projects/%s/global/snapshots/%s" , PROJECT_ID ,
128
133
SNAPSHOT_NAME );
129
134
TimeUnit .SECONDS .sleep (5 );
130
- CreateDiskFromSnapshot .createDiskFromSnapshot (PROJECT_ID , ZONE , DISK_NAME_2 , DISK_TYPE , 10 ,
135
+ CreateDiskFromSnapshot .createDiskFromSnapshot (
136
+ PROJECT_ID , ZONE , DISK_NAME_2 , DISK_TYPE , DISK_SIZE ,
131
137
diskSnapshotLink );
132
138
assertThat (stdOut .toString ()).contains ("Disk created." );
133
139
134
140
// Create empty disk.
135
- CreateEmptyDisk .createEmptyDisk (PROJECT_ID , ZONE , EMPTY_DISK_NAME , DISK_TYPE , 10 );
141
+ CreateEmptyDisk .createEmptyDisk (PROJECT_ID , ZONE , EMPTY_DISK_NAME , DISK_TYPE , DISK_SIZE );
136
142
assertThat (stdOut .toString ()).contains ("Empty disk created." );
137
143
138
144
// Set Disk autodelete.
@@ -174,6 +180,7 @@ public static void cleanUp()
174
180
DeleteDisk .deleteDisk (PROJECT_ID , ZONE , ZONAL_BLANK_DISK );
175
181
RegionalDelete .deleteRegionalDisk (PROJECT_ID , REGION , REGIONAL_BLANK_DISK );
176
182
RegionalDelete .deleteRegionalDisk (PROJECT_ID , REGION , REGIONAL_REPLICATED_DISK );
183
+ RegionalDelete .deleteRegionalDisk (PROJECT_ID , "us-central1" , SECONDARY_REGIONAL_DISK );
177
184
178
185
stdOut .close ();
179
186
System .setOut (out );
@@ -214,7 +221,7 @@ public static void createInstance(String projectId, String zone, String instance
214
221
.setAutoDelete (false )
215
222
.setBoot (true )
216
223
.setInitializeParams (AttachedDiskInitializeParams .newBuilder ()
217
- .setDiskSizeGb (10 )
224
+ .setDiskSizeGb (DISK_SIZE )
218
225
.setSourceImage (sourceImage )
219
226
.setDiskName (diskName )
220
227
.build ())
@@ -243,15 +250,15 @@ public static void createInstance(String projectId, String zone, String instance
243
250
public static void createZonalDisk ()
244
251
throws IOException , ExecutionException , InterruptedException , TimeoutException {
245
252
String diskType = String .format ("zones/%s/diskTypes/pd-standard" , ZONE );
246
- CreateEmptyDisk .createEmptyDisk (PROJECT_ID , ZONE , ZONAL_BLANK_DISK , diskType , 12 );
253
+ CreateEmptyDisk .createEmptyDisk (PROJECT_ID , ZONE , ZONAL_BLANK_DISK , diskType , DISK_SIZE );
247
254
}
248
255
249
256
public static void createRegionalDisk ()
250
257
throws IOException , ExecutionException , InterruptedException , TimeoutException {
251
258
String diskType = String .format ("regions/%s/diskTypes/pd-balanced" , REGION );
252
259
253
260
RegionalCreateFromSource .createRegionalDisk (PROJECT_ID , REGION , replicaZones ,
254
- REGIONAL_BLANK_DISK , diskType , 11 , Optional .empty (), Optional .empty ());
261
+ REGIONAL_BLANK_DISK , diskType , 10 , Optional .empty (), Optional .empty ());
255
262
}
256
263
257
264
@ BeforeEach
@@ -311,4 +318,16 @@ public void testCreateReplicatedDisk()
311
318
312
319
assertThat (status ).isEqualTo (Status .DONE );
313
320
}
321
+
322
+ @ Test
323
+ public void testCreateDiskSecondaryRegional ()
324
+ throws IOException , ExecutionException , InterruptedException , TimeoutException {
325
+ String diskType = String .format (
326
+ "projects/%s/regions/%s/diskTypes/pd-balanced" , PROJECT_ID , REGION );
327
+ Status status = CreateDiskSecondaryRegional .createDiskSecondaryRegional (
328
+ PROJECT_ID , PROJECT_ID , REGIONAL_BLANK_DISK , SECONDARY_REGIONAL_DISK ,
329
+ REGION , "us-central1" , DISK_SIZE , diskType );
330
+
331
+ assertThat (status ).isEqualTo (Status .DONE );
332
+ }
314
333
}
0 commit comments