Skip to content

Commit 68715f3

Browse files
committed
checkpoint of optional dependency approach
- initial implementation of using optional dependencies for #36 - not ready for PR yet. we should verify this is the right approach. just wanted to push up local changes for reference - reference apps and test app show the approach end users would need to pull in dependencies they'd want - still need documentation changes
1 parent f6b99cf commit 68715f3

File tree

8 files changed

+57
-9
lines changed

8 files changed

+57
-9
lines changed

languages/csharp/AppEncryption/AppEncryption.IntegrationTests/AppEncryption.IntegrationTests.csproj

+3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
<PackageReference Include="Moq" Version="4.10.1" />
1414
<PackageReference Include="xunit" Version="2.4.1" />
1515
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
16+
<PackageReference Include="AWSSDK.DynamoDBv2" Version="3.3.101.4" />
17+
<PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.100.5" />
18+
<PackageReference Include="App.Metrics" Version="3.1.0" />
1619
</ItemGroup>
1720
<ItemGroup Label="CLI Tool References">
1821
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />

languages/csharp/AppEncryption/AppEncryption.Tests/AppEncryption.Tests.csproj

+3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414
<PackageReference Include="TestContainers" Version="0.0.2.64" />
1515
<PackageReference Include="xunit" Version="2.4.1" />
1616
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
17+
<PackageReference Include="AWSSDK.DynamoDBv2" Version="3.3.101.4" />
18+
<PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.100.5" />
19+
<PackageReference Include="App.Metrics" Version="3.1.0" />
1720
</ItemGroup>
1821
<ItemGroup Label="CLI Tool References">
1922
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />

languages/csharp/AppEncryption/AppEncryption/AppEncryption.csproj

+9-3
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,17 @@
1111
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
1212
</PropertyGroup>
1313
<ItemGroup Label="Package References">
14-
<PackageReference Include="AWSSDK.DynamoDBv2" Version="3.3.101.4" />
15-
<PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.100.5" />
14+
<PackageReference Include="AWSSDK.DynamoDBv2" Version="3.3.101.4">
15+
<PrivateAssets>all</PrivateAssets>
16+
</PackageReference>
17+
<PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.100.5">
18+
<PrivateAssets>all</PrivateAssets>
19+
</PackageReference>
1620
<PackageReference Include="LanguageExt.Core" Version="3.1.15" />
1721
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
18-
<PackageReference Include="App.Metrics" Version="3.1.0" />
22+
<PackageReference Include="App.Metrics" Version="3.1.0">
23+
<PrivateAssets>all</PrivateAssets>
24+
</PackageReference>
1925
</ItemGroup>
2026
<ItemGroup Label="Project References">
2127
<ProjectReference Include="../Crypto/Crypto.csproj" />

languages/java/app-encryption/pom.xml

+3
Original file line numberDiff line numberDiff line change
@@ -173,18 +173,21 @@
173173
<groupId>com.amazonaws</groupId>
174174
<artifactId>aws-java-sdk-kms</artifactId>
175175
<version>${aws.sdk.version}</version>
176+
<optional>true</optional>
176177
</dependency>
177178

178179
<dependency>
179180
<groupId>com.amazonaws</groupId>
180181
<artifactId>aws-java-sdk-dynamodb</artifactId>
181182
<version>${aws.sdk.version}</version>
183+
<optional>true</optional>
182184
</dependency>
183185

184186
<dependency>
185187
<groupId>io.micrometer</groupId>
186188
<artifactId>micrometer-core</artifactId>
187189
<version>${micrometer.version}</version>
190+
<optional>true</optional>
188191
</dependency>
189192

190193
<!-- Test Dependencies -->

languages/java/secure-memory/pom.xml

+3-3
Original file line numberDiff line numberDiff line change
@@ -171,8 +171,8 @@
171171
</repository>
172172
</distributionManagement>
173173
<scm>
174-
<connection>scm:git:https://github.com/godaddy/asherah.git</connection>
175-
<developerConnection>scm:git:https://github.com/godaddy/asherah.git</developerConnection>
176-
<url>https://github.com/godaddy/asherah</url>
174+
<connection>scm:git:https://github.com/godaddy/asherah.git</connection>
175+
<developerConnection>scm:git:https://github.com/godaddy/asherah.git</developerConnection>
176+
<url>https://github.com/godaddy/asherah</url>
177177
</scm>
178178
</project>

samples/csharp/ReferenceApp/ReferenceApp/ReferenceApp.csproj

+3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@
1616
<PackageReference Include="GoDaddy.Asherah.AppEncryption" Version="1.0.0-alpha" />
1717
<PackageReference Include="CommandLineParser" Version="2.4.3" />
1818
<PackageReference Include="MySql.Data" Version="8.0.16" />
19+
<PackageReference Include="AWSSDK.DynamoDBv2" Version="3.3.101.4" />
20+
<PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.100.5" />
21+
<PackageReference Include="App.Metrics" Version="3.1.0" />
1922
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="2.2.0" />
2023
<PackageReference Include="App.Metrics.Reporting.Console" Version="3.1.0" />
2124
</ItemGroup>

samples/java/reference-app/pom.xml

+13
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
<java.version>1.8</java.version>
1515
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
1616
<appencryption.version>1.0.0-SNAPSHOT</appencryption.version>
17+
<aws.sdk.version>1.11.468</aws.sdk.version>
1718
<junit.jupiter.version>5.1.0</junit.jupiter.version>
1819
<junit.platform.version>1.1.0</junit.platform.version>
1920
<jacoco.version>0.8.2</jacoco.version>
@@ -110,6 +111,18 @@
110111
<version>${appencryption.version}</version>
111112
</dependency>
112113

114+
<dependency>
115+
<groupId>com.amazonaws</groupId>
116+
<artifactId>aws-java-sdk-kms</artifactId>
117+
<version>${aws.sdk.version}</version>
118+
</dependency>
119+
120+
<dependency>
121+
<groupId>com.amazonaws</groupId>
122+
<artifactId>aws-java-sdk-dynamodb</artifactId>
123+
<version>${aws.sdk.version}</version>
124+
</dependency>
125+
113126
<dependency>
114127
<groupId>mysql</groupId>
115128
<artifactId>mysql-connector-java</artifactId>

tests/java/test-app/pom.xml

+20-3
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@
1515
<junit.platform.version>1.2.0</junit.platform.version>
1616
<dropwizard.version>1.3.5</dropwizard.version>
1717
<sl4j.version>1.7.25</sl4j.version>
18+
<aws.sdk.version>1.11.468</aws.sdk.version>
1819
<mysql.connector.java.version>8.0.13</mysql.connector.java.version>
1920
<com.zaxxer.hikaricp.version>2.6.1</com.zaxxer.hikaricp.version>
21+
<micrometer.version>1.1.1</micrometer.version>
2022
<mockito.core.version>2.22.0</mockito.core.version>
2123
<elasticsearch.version>6.3.2</elasticsearch.version>
2224
<docker.image.src.root>images</docker.image.src.root>
@@ -33,8 +35,8 @@
3335
<connection>scm:git:https://github.com/godaddy/asherah.git</connection>
3436
<developerConnection>scm:git:https://github.com/godaddy/asherah.git</developerConnection>
3537
<url>https://github.com/godaddy/asherah</url>
36-
<tag>HEAD</tag>
37-
</scm>
38+
<tag>HEAD</tag>
39+
</scm>
3840
<build>
3941
<plugins>
4042
<plugin>
@@ -223,7 +225,7 @@
223225
<dependency>
224226
<groupId>com.amazonaws</groupId>
225227
<artifactId>aws-java-sdk-kinesis</artifactId>
226-
<version>1.11.496</version>
228+
<version>${aws.sdk.version}</version>
227229
<exclusions>
228230
<exclusion>
229231
<groupId>com.fasterxml.jackson.dataformat</groupId>
@@ -275,6 +277,16 @@
275277
<artifactId>mockito-junit-jupiter</artifactId>
276278
<version>${mockito.core.version}</version>
277279
</dependency>
280+
<dependency>
281+
<groupId>com.amazonaws</groupId>
282+
<artifactId>aws-java-sdk-kms</artifactId>
283+
<version>${aws.sdk.version}</version>
284+
</dependency>
285+
<dependency>
286+
<groupId>com.amazonaws</groupId>
287+
<artifactId>aws-java-sdk-dynamodb</artifactId>
288+
<version>${aws.sdk.version}</version>
289+
</dependency>
278290
<dependency>
279291
<groupId>mysql</groupId>
280292
<artifactId>mysql-connector-java</artifactId>
@@ -285,5 +297,10 @@
285297
<artifactId>HikariCP</artifactId>
286298
<version>${com.zaxxer.hikaricp.version}</version>
287299
</dependency>
300+
<dependency>
301+
<groupId>io.micrometer</groupId>
302+
<artifactId>micrometer-core</artifactId>
303+
<version>${micrometer.version}</version>
304+
</dependency>
288305
</dependencies>
289306
</project>

0 commit comments

Comments
 (0)