Skip to content

Commit 7c8100a

Browse files
authored
UID2-1113 Do not create .bak files when writing files in S3 (#73)
* Removed code to create .bak files in S3 * Updated shared version * Tag salts with either obsolete or current tags
1 parent 444ca9c commit 7c8100a

20 files changed

+78
-75
lines changed

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM openjdk:11
1+
FROM eclipse-temurin@sha256:d19c17f59e768549cd3d26f577be73b5e26e652dd66210d91a6738a355aa1dfe
22

33
WORKDIR /app
44
EXPOSE 8089

conf/local-config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"keys_metadata_path": "keys/metadata.json",
1010
"keys_acl_metadata_path": "keys_acl/metadata.json",
1111
"salts_metadata_path": "salts/metadata.json",
12-
"salt_snapshot_location_prefix": "salts/salts.txt",
12+
"salt_snapshot_location_prefix": "salts/salts.txt.",
1313
"operators_metadata_path": "operators/metadata.json",
1414
"enclaves_metadata_path": "enclaves/metadata.json",
1515
"partners_metadata_path": "partners/metadata.json",

conf/local-e2e-docker-config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"keys_metadata_path": "keys/metadata.json",
1010
"keys_acl_metadata_path": "keys_acl/metadata.json",
1111
"salts_metadata_path": "salts/metadata.json",
12-
"salt_snapshot_location_prefix": "salts/salts.txt",
12+
"salt_snapshot_location_prefix": "salts/salts.txt.",
1313
"operators_metadata_path": "operators/metadata.json",
1414
"enclaves_metadata_path": "enclaves/metadata.json",
1515
"partners_metadata_path": "partners/metadata.json",

pom.xml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<!-- check micrometer.version vertx-micrometer-metrics consumes before bumping up -->
1717
<micrometer.version>1.1.0</micrometer.version>
1818
<junit-jupiter.version>5.7.0</junit-jupiter.version>
19-
<uid2-shared.version>2.1.0</uid2-shared.version>
19+
<uid2-shared.version>2.5.0-6429c70acc</uid2-shared.version>
2020
<image.version>${project.version}</image.version>
2121
</properties>
2222

@@ -61,11 +61,6 @@
6161
<artifactId>micrometer-registry-prometheus</artifactId>
6262
<version>${micrometer.version}</version>
6363
</dependency>
64-
<dependency>
65-
<groupId>com.sendgrid</groupId>
66-
<artifactId>sendgrid-java</artifactId>
67-
<version>4.6.6</version>
68-
</dependency>
6964
<dependency>
7065
<groupId>com.fasterxml.jackson.datatype</groupId>
7166
<artifactId>jackson-datatype-jsr310</artifactId>

src/main/java/com/uid2/admin/Main.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
import com.uid2.shared.auth.EnclaveIdentifierProvider;
2727
import com.uid2.shared.auth.RotatingOperatorKeyProvider;
2828
import com.uid2.shared.cloud.CloudUtils;
29-
import com.uid2.shared.cloud.ICloudStorage;
29+
import com.uid2.shared.cloud.TaggableCloudStorage;
3030
import com.uid2.shared.jmx.AdminApi;
3131
import com.uid2.shared.middleware.AuthMiddleware;
3232
import com.uid2.shared.store.CloudPath;
@@ -75,7 +75,7 @@ public Main(Vertx vertx, JsonObject config) {
7575
public void run() {
7676
try {
7777
AuthFactory authFactory = new GithubAuthFactory(config);
78-
ICloudStorage cloudStorage = CloudUtils.createStorage(config.getString(Const.Config.CoreS3BucketProp), config);
78+
TaggableCloudStorage cloudStorage = CloudUtils.createStorage(config.getString(Const.Config.CoreS3BucketProp), config);
7979
FileStorage fileStorage = new TmpFileStorage();
8080
ObjectWriter jsonWriter = JsonUtil.createJsonWriter();
8181
FileManager fileManager = new FileManager(cloudStorage, fileStorage);

src/main/java/com/uid2/admin/store/FileManager.java

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import io.vertx.core.json.JsonObject;
88

99
import java.io.IOException;
10-
import java.io.InputStream;
1110
import java.util.List;
1211

1312
public class FileManager {
@@ -24,13 +23,6 @@ public void uploadFile(CloudPath location, FileName fileName, String content) th
2423
cloudStorage.upload(newFile, location.toString());
2524
}
2625

27-
public void backupFile(CloudPath path, FileName fileName, long timestamp) throws IOException, CloudStorageException {
28-
InputStream download = cloudStorage.download(path.toString());
29-
String localTemp = fileStorage.create(fileName, download);
30-
cloudStorage.upload(localTemp, path + ".bak");
31-
cloudStorage.upload(localTemp, path + "." + timestamp + ".bak");
32-
}
33-
3426
public void uploadMetadata(JsonObject metadata, String name, CloudPath location) throws Exception {
3527
FileName fileName = new FileName(name + "-metadata", ".json");
3628
String content = Json.encodePrettily(metadata);

src/main/java/com/uid2/admin/store/writer/AdminUserStoreWriter.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ public AdminUserStoreWriter(AdminUserProvider provider, FileManager fileManager,
2828

2929
public void upload(Collection<AdminUser> data) throws Exception {
3030
long generated = Instant.now().getEpochSecond();
31-
FileName backupFile = new FileName("admins-old", ".json");
3231
FileName dataFile = new FileName("admins", ".json");
3332

3433
JsonObject metadata = provider.getMetadata();
@@ -39,8 +38,6 @@ public void upload(Collection<AdminUser> data) throws Exception {
3938
// get location to upload
4039
CloudPath location = new CloudPath(metadata.getJsonObject("admins").getString("location"));
4140

42-
fileManager.backupFile(location, backupFile, generated);
43-
4441
// generate new admins
4542
String content = jsonWriter.writeValueAsString(data);
4643
fileManager.uploadFile(location, dataFile, content);

src/main/java/com/uid2/admin/store/writer/ClientKeyStoreWriter.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,8 @@ public class ClientKeyStoreWriter implements StoreWriter<Collection<ClientKey>>
1919
public ClientKeyStoreWriter(RotatingClientKeyProvider provider, FileManager fileManager, ObjectWriter jsonWriter, VersionGenerator versionGenerator, Clock clock, StoreScope scope) {
2020
this.jsonWriter = jsonWriter;
2121
FileName dataFile = new FileName("clients", ".json");
22-
FileName backupFile = new FileName("clients-old", ".json");
2322
String dataType = "client_keys";
24-
writer = new ScopedStoreWriter(provider, fileManager, versionGenerator, clock, scope, dataFile, backupFile, dataType);
23+
writer = new ScopedStoreWriter(provider, fileManager, versionGenerator, clock, scope, dataFile, dataType);
2524
}
2625

2726
@Override

src/main/java/com/uid2/admin/store/writer/EnclaveStoreWriter.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,13 @@ public EnclaveStoreWriter(EnclaveIdentifierProvider provider, FileManager fileMa
2727

2828
public void upload(Collection<EnclaveIdentifier> data) throws Exception {
2929
long generated = Instant.now().getEpochSecond();
30-
FileName backupFile = new FileName("enclaves-old", ".json");
3130
FileName dataFile = new FileName("enclaves", ".json");
3231
JsonObject metadata = provider.getMetadata();
3332

3433
metadata.put("version", versionGenerator.getVersion());
3534
metadata.put("generated", generated);
3635
CloudPath location = new CloudPath(metadata.getJsonObject("enclaves").getString("location"));
3736

38-
fileManager.backupFile(location, backupFile, generated);
39-
4037
// generate new clients
4138
String content = jsonWriter.writeValueAsString(data);
4239
fileManager.uploadFile(location, dataFile, content);

src/main/java/com/uid2/admin/store/writer/EncryptionKeyStoreWriter.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,8 @@ public class EncryptionKeyStoreWriter implements StoreWriter<Collection<Encrypti
1818

1919
public EncryptionKeyStoreWriter(RotatingKeyStore provider, FileManager fileManager, VersionGenerator versionGenerator, Clock clock, StoreScope scope) {
2020
FileName dataFile = new FileName("keys", ".json");
21-
FileName backupFile = new FileName("keys-old", ".json");
2221
String dataType = "keys";
23-
writer = new ScopedStoreWriter(provider, fileManager, versionGenerator, clock, scope, dataFile, backupFile, dataType);
22+
writer = new ScopedStoreWriter(provider, fileManager, versionGenerator, clock, scope, dataFile, dataType);
2423
}
2524

2625
@Override

0 commit comments

Comments
 (0)