Skip to content

Commit adc5f5a

Browse files
committed
delete only Ca create time > 24 hours
1 parent c1e3d21 commit adc5f5a

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

privateca/snippets/src/test/java/privateca/SnippetsIT.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ public static void setUp()
109109

110110
// Delete stale resources
111111
Util.cleanUpCaPool(PROJECT_ID, LOCATION);
112+
TimeUnit.SECONDS.sleep(30);
112113

113114
// <--- START CA POOL --->
114115
// Create CA Pool.

privateca/snippets/src/test/java/privateca/Util.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,18 @@
2626
import com.google.cloud.security.privateca.v1.DisableCertificateAuthorityRequest;
2727
import com.google.cloud.security.privateca.v1.ListCaPoolsRequest;
2828
import com.google.cloud.security.privateca.v1.LocationName;
29+
import com.google.protobuf.Timestamp;
2930
import java.io.IOException;
31+
import java.time.Instant;
32+
import java.time.temporal.ChronoUnit;
3033
import java.util.concurrent.ExecutionException;
3134
import java.util.concurrent.TimeUnit;
3235
import java.util.concurrent.TimeoutException;
3336

3437
public class Util {
3538

39+
private static final int DELETION_THRESHOLD_TIME_HOURS = 24;
40+
3641
// Delete Ca pools which starts with the given prefixToDelete.
3742
public static void cleanUpCaPool(String projectId,
3843
String location)
@@ -74,6 +79,11 @@ public static void deleteCertificateAuthority(String caPoolName)
7479
CertificateAuthorityServiceClient.create()) {
7580
for (CertificateAuthority certificateAuthority :
7681
certificateAuthorityServiceClient.listCertificateAuthorities(caPoolName).iterateAll()) {
82+
// Check if the CA was created before the threshold time.
83+
if (!isCreatedBeforeThresholdTime(certificateAuthority.getCreateTime())) {
84+
continue;
85+
}
86+
7787
// Check if the CA is enabled.
7888
State caState =
7989
certificateAuthorityServiceClient
@@ -112,4 +122,10 @@ public static void disableCertificateAuthority(String caName)
112122
.get(5, TimeUnit.MINUTES);
113123
}
114124
}
125+
126+
public static boolean isCreatedBeforeThresholdTime(Timestamp timestamp) {
127+
Instant instant = Instant.ofEpochSecond(timestamp.getSeconds(), timestamp.getNanos());
128+
return instant
129+
.isBefore(Instant.now().minus(DELETION_THRESHOLD_TIME_HOURS, ChronoUnit.HOURS));
130+
}
115131
}

0 commit comments

Comments
 (0)