Skip to content

Commit 7e8c822

Browse files
committed
fix project setup and classpath for SDK v1/v2 utils
1 parent 4868a56 commit 7e8c822

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+223
-180
lines changed

Diff for: .travis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ script:
1717
- set -e
1818
- nohup docker pull localstack/localstack > /dev/null &
1919
- make compile
20-
- mvn -q -DskipTests test
20+
- MVN_TEST_ARGS="-q -DskipTests" make test
2121
- make test
2222
- docker ps -a
2323

Diff for: Makefile

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ publish-maven: ## Publish artifacts to Maven Central
1313
ADDITIONAL_MVN_TARGETS=deploy ADDITIONAL_MVN_ARGS="-DskipTests" make build
1414

1515
test-v1:
16-
USE_SSL=1 SERVICES=serverless,kinesis,sns,sqs,iam,cloudwatch mvn -Pawssdkv1 \
17-
-Dtest="!cloud.localstack.awssdkv2.*Test" test
16+
USE_SSL=1 SERVICES=serverless,kinesis,sns,sqs,iam,cloudwatch mvn $(MVN_TEST_ARGS) -Pawssdkv1 \
17+
-Dtest="cloud.localstack.awssdkv1.*Test" test
1818

1919
test-v2:
20-
USE_SSL=1 SERVICES=serverless,kinesis,sns,sqs,iam,cloudwatch mvn -Pawssdkv2 \
20+
USE_SSL=1 SERVICES=serverless,kinesis,sns,sqs,iam,cloudwatch mvn $(MVN_TEST_ARGS) -Pawssdkv2 \
2121
-Dtest="cloud.localstack.awssdkv2.*Test" test
2222

2323
test: ## Run Java/JUnit tests for AWS SDK v1 and v2

Diff for: pom.xml

+40-20
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,24 @@
201201
</profile>
202202
<profile>
203203
<id>awssdkv1</id>
204+
<build>
205+
<plugins>
206+
<plugin>
207+
<groupId>org.apache.maven.plugins</groupId>
208+
<artifactId>maven-compiler-plugin</artifactId>
209+
<configuration>
210+
<excludes>
211+
<exclude>**/awssdkv2/**/*.java</exclude>
212+
<exclude>**/deprecated/**/*.java</exclude>
213+
</excludes>
214+
<testExcludes>
215+
<exclude>**/awssdkv2/**/*.java</exclude>
216+
<exclude>**/deprecated/**/*.java</exclude>
217+
</testExcludes>
218+
</configuration>
219+
</plugin>
220+
</plugins>
221+
</build>
204222
<dependencies>
205223
<dependency>
206224
<groupId>com.amazonaws</groupId>
@@ -248,6 +266,26 @@
248266
</profile>
249267
<profile>
250268
<id>awssdkv2</id>
269+
<build>
270+
<plugins>
271+
<plugin>
272+
<groupId>org.apache.maven.plugins</groupId>
273+
<artifactId>maven-compiler-plugin</artifactId>
274+
<configuration>
275+
<excludes>
276+
<exclude>**/awssdkv1/**/*.java</exclude>
277+
<exclude>**/deprecated/**/*.java</exclude>
278+
<exclude>**/LambdaExecutor.java</exclude>
279+
</excludes>
280+
<testExcludes>
281+
<exclude>**/awssdkv1/**/*.java</exclude>
282+
<exclude>**/deprecated/**/*.java</exclude>
283+
<exclude>**/LambdaExecutor.java</exclude>
284+
</testExcludes>
285+
</configuration>
286+
</plugin>
287+
</plugins>
288+
</build>
251289
<dependencies>
252290
<dependency>
253291
<groupId>software.amazon.awssdk</groupId>
@@ -276,18 +314,6 @@
276314
<version>${aws.sdkv2.version}</version>
277315
<scope>provided</scope>
278316
</dependency>
279-
<dependency>
280-
<groupId>software.amazon.awssdk</groupId>
281-
<artifactId>sns</artifactId>
282-
<version>${aws.sdkv2.version}</version>
283-
<scope>provided</scope>
284-
</dependency>
285-
<dependency>
286-
<groupId>software.amazon.awssdk</groupId>
287-
<artifactId>sqs</artifactId>
288-
<version>${aws.sdkv2.version}</version>
289-
<scope>provided</scope>
290-
</dependency>
291317
<dependency>
292318
<groupId>software.amazon.awssdk</groupId>
293319
<artifactId>ssm</artifactId>
@@ -300,12 +326,6 @@
300326
<version>${aws.sdkv2.version}</version>
301327
<scope>provided</scope>
302328
</dependency>
303-
<dependency>
304-
<groupId>software.amazon.awssdk</groupId>
305-
<artifactId>kinesis</artifactId>
306-
<version>${aws.sdkv2.version}</version>
307-
<scope>provided</scope>
308-
</dependency>
309329
<dependency>
310330
<groupId>software.amazon.awssdk</groupId>
311331
<artifactId>s3</artifactId>
@@ -477,12 +497,12 @@
477497
<plugin>
478498
<groupId>org.apache.maven.plugins</groupId>
479499
<artifactId>maven-surefire-plugin</artifactId>
480-
<version>2.21.0</version>
500+
<version>2.22.1</version>
481501
<dependencies>
482502
<dependency>
483503
<groupId>org.apache.maven.surefire</groupId>
484504
<artifactId>surefire-junit4</artifactId>
485-
<version>2.21.0</version>
505+
<version>2.22.1</version>
486506
</dependency>
487507
<dependency>
488508
<groupId>org.junit.platform</groupId>

Diff for: src/main/java/cloud/localstack/LambdaExecutor.java

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
package cloud.localstack;
22

3-
import cloud.localstack.lambda.DDBEventParser;
4-
import cloud.localstack.lambda.KinesisEventParser;
5-
import cloud.localstack.lambda.S3EventParser;
3+
import cloud.localstack.awssdkv1.lambda.DDBEventParser;
4+
import cloud.localstack.awssdkv1.lambda.KinesisEventParser;
5+
import cloud.localstack.awssdkv1.lambda.S3EventParser;
6+
67
import com.amazonaws.services.lambda.runtime.Context;
78
import com.amazonaws.services.lambda.runtime.RequestHandler;
89
import com.amazonaws.services.lambda.runtime.RequestStreamHandler;

Diff for: src/main/java/cloud/localstack/lambda/DDBEventParser.java renamed to src/main/java/cloud/localstack/awssdkv1/lambda/DDBEventParser.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack.lambda;
1+
package cloud.localstack.awssdkv1.lambda;
22

33
import com.amazonaws.services.dynamodbv2.model.*;
44
import com.amazonaws.services.lambda.runtime.events.DynamodbEvent;

Diff for: src/main/java/cloud/localstack/lambda/KinesisEventParser.java renamed to src/main/java/cloud/localstack/awssdkv1/lambda/KinesisEventParser.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack.lambda;
1+
package cloud.localstack.awssdkv1.lambda;
22

33
import com.amazonaws.services.lambda.runtime.events.KinesisEvent;
44
import com.amazonaws.services.lambda.runtime.events.KinesisEvent.KinesisEventRecord;

Diff for: src/main/java/cloud/localstack/lambda/S3EventParser.java renamed to src/main/java/cloud/localstack/awssdkv1/lambda/S3EventParser.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
package cloud.localstack.lambda;
1+
package cloud.localstack.awssdkv1.lambda;
2+
23
import static cloud.localstack.LambdaExecutor.get;
34
import com.amazonaws.services.lambda.runtime.events.S3Event;
45
import com.amazonaws.services.s3.event.S3EventNotification;

Diff for: src/main/java/cloud/localstack/awssdkv2/PowerMockLocalStack.java

-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
import org.powermock.modules.junit4.*;
88
import static org.mockito.Mockito.when;
99

10-
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDB;
11-
1210
import software.amazon.awssdk.core.client.builder.SdkAsyncClientBuilder;
1311
import software.amazon.awssdk.services.cloudwatch.*;
1412
import software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient;

Diff for: src/main/java/cloud/localstack/docker/annotation/EC2HostNameResolver.java

-23
This file was deleted.

Diff for: src/test/java/cloud/localstack/CWMetricsTest.java renamed to src/test/java/cloud/localstack/awssdkv1/CWMetricsTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import cloud.localstack.docker.annotation.LocalstackDockerProperties;
4+
import cloud.localstack.LocalstackTestRunner;
45
import cloud.localstack.awssdkv1.TestUtils;
56

67
import com.amazonaws.services.cloudwatch.AmazonCloudWatch;

Diff for: src/test/java/cloud/localstack/CloudWatchLogsTest.java renamed to src/test/java/cloud/localstack/awssdkv1/CloudWatchLogsTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import java.util.ArrayList;
44
import java.util.List;
@@ -20,6 +20,7 @@
2020
import com.amazonaws.services.logs.model.OutputLogEvent;
2121
import com.amazonaws.services.logs.model.PutLogEventsRequest;
2222

23+
import cloud.localstack.LocalstackTestRunner;
2324
import cloud.localstack.awssdkv1.TestUtils;
2425
import cloud.localstack.docker.LocalstackDockerExtension;
2526
import cloud.localstack.docker.annotation.LocalstackDockerProperties;

Diff for: src/test/java/cloud/localstack/DDBEventMappingTest.java renamed to src/test/java/cloud/localstack/awssdkv1/DDBEventMappingTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3-
import cloud.localstack.lambda.DDBEventParser;
3+
import cloud.localstack.awssdkv1.lambda.DDBEventParser;
44
import com.amazonaws.services.lambda.runtime.events.DynamodbEvent;
55
import com.fasterxml.jackson.databind.ObjectMapper;
66

Diff for: src/test/java/cloud/localstack/IAMTest.java renamed to src/test/java/cloud/localstack/awssdkv1/IAMTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import static org.junit.Assert.assertEquals;
44
import static org.junit.jupiter.api.Assertions.assertTrue;
55

6+
import cloud.localstack.LocalstackTestRunner;
67
import cloud.localstack.docker.annotation.LocalstackDockerProperties;
78
import cloud.localstack.awssdkv1.TestUtils;
89

Diff for: src/test/java/cloud/localstack/KMSTest.java renamed to src/test/java/cloud/localstack/awssdkv1/KMSTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import cloud.localstack.awssdkv1.PowerMockLocalStack;
44

Diff for: src/test/java/cloud/localstack/KinesisConsumerTest.java renamed to src/test/java/cloud/localstack/awssdkv1/KinesisConsumerTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import cloud.localstack.LocalstackTestRunner;
44
import cloud.localstack.awssdkv1.TestUtils;

Diff for: src/test/java/cloud/localstack/KinesisEventMappingTest.java renamed to src/test/java/cloud/localstack/awssdkv1/KinesisEventMappingTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3-
import cloud.localstack.lambda.KinesisEventParser;
3+
import cloud.localstack.awssdkv1.lambda.KinesisEventParser;
44
import com.amazonaws.services.lambda.runtime.events.KinesisEvent;
55
import com.fasterxml.jackson.databind.DeserializationFeature;
66
import com.fasterxml.jackson.databind.MapperFeature;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package cloud.localstack.awssdkv2;
2+
3+
import java.io.ByteArrayOutputStream;
4+
import java.io.File;
5+
import java.io.IOException;
6+
import java.nio.ByteBuffer;
7+
import java.util.jar.JarEntry;
8+
import java.util.jar.JarOutputStream;
9+
import java.util.zip.ZipEntry;
10+
import java.util.zip.ZipOutputStream;
11+
12+
import com.amazonaws.services.kinesis.model.Record;
13+
import com.amazonaws.services.lambda.runtime.events.SQSEvent;
14+
15+
import org.apache.commons.io.IOUtils;
16+
17+
import cloud.localstack.utils.LocalTestUtil;
18+
19+
public class LocalTestUtilSDKV1 extends LocalTestUtil {
20+
21+
public static com.amazonaws.services.lambda.model.FunctionCode createFunctionCode(Class<?> clazz) throws Exception {
22+
com.amazonaws.services.lambda.model.FunctionCode code = new com.amazonaws.services.lambda.model.FunctionCode();
23+
code.setZipFile(createFunctionByteBuffer(clazz, Record.class, SQSEvent.class));
24+
return code;
25+
}
26+
27+
}

Diff for: src/test/java/cloud/localstack/PowerMockExampleTest.java renamed to src/test/java/cloud/localstack/awssdkv1/PowerMockExampleTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3+
import cloud.localstack.LocalstackTestRunner;
34
import cloud.localstack.awssdkv1.TestUtils;
45
import cloud.localstack.docker.annotation.LocalstackDockerProperties;
56

@@ -26,7 +27,6 @@
2627
/**
2728
* Test integration of SES messaging with LocalStack
2829
*/
29-
// @RunWith(LocalstackTestRunner.class)
3030
@RunWith(PowerMockRunner.class)
3131
@PowerMockRunnerDelegate(LocalstackTestRunner.class)
3232
@LocalstackDockerProperties(services = { "sns" })

Diff for: src/test/java/cloud/localstack/PowerMockLocalStackExampleTest.java renamed to src/test/java/cloud/localstack/awssdkv1/PowerMockLocalStackExampleTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import javax.jms.JMSException;
44

Diff for: src/test/java/cloud/localstack/S3EventMappingTest.java renamed to src/test/java/cloud/localstack/awssdkv1/S3EventMappingTest.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3-
import cloud.localstack.lambda.S3EventParser;
43
import com.amazonaws.services.lambda.runtime.events.S3Event;
54
import com.amazonaws.services.s3.event.S3EventNotification;
65
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -10,6 +9,8 @@
109
import java.util.List;
1110
import java.util.Map;
1211

12+
import cloud.localstack.awssdkv1.lambda.S3EventParser;
13+
import cloud.localstack.LocalstackTestRunner;
1314
import static cloud.localstack.LambdaExecutor.get;
1415
import static cloud.localstack.LambdaExecutor.readFile;
1516

Diff for: src/test/java/cloud/localstack/S3FeaturesTest.java renamed to src/test/java/cloud/localstack/awssdkv1/S3FeaturesTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

33
import static org.junit.Assert.assertEquals;
44
import static org.junit.Assert.assertNotNull;
55

6+
import cloud.localstack.*;
67
import cloud.localstack.docker.annotation.LocalstackDockerProperties;
78
import cloud.localstack.awssdkv1.TestUtils;
89

Diff for: src/test/java/cloud/localstack/S3UploadTest.java renamed to src/test/java/cloud/localstack/awssdkv1/S3UploadTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3+
import cloud.localstack.LocalstackTestRunner;
34
import cloud.localstack.awssdkv1.TestUtils;
45

56
import static org.junit.Assert.assertEquals;

Diff for: src/test/java/cloud/localstack/SESMessagingTest.java renamed to src/test/java/cloud/localstack/awssdkv1/SESMessagingTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3+
import cloud.localstack.LocalstackTestRunner;
34
import cloud.localstack.awssdkv1.TestUtils;
45

56
import java.util.UUID;

Diff for: src/test/java/cloud/localstack/SNSMessagingTest.java renamed to src/test/java/cloud/localstack/awssdkv1/SNSMessagingTest.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3-
import cloud.localstack.utils.PromiseAsyncHandler;
3+
import cloud.localstack.LocalstackTestRunner;
4+
import cloud.localstack.awssdkv1.utils.PromiseAsyncHandler;
45
import cloud.localstack.awssdkv1.TestUtils;
56

67
import com.amazonaws.services.sns.AmazonSNS;

Diff for: src/test/java/cloud/localstack/SQSMessagingTest.java renamed to src/test/java/cloud/localstack/awssdkv1/SQSMessagingTest.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
package cloud.localstack;
1+
package cloud.localstack.awssdkv1;
22

3-
import cloud.localstack.utils.PromiseAsyncHandler;
3+
import cloud.localstack.*;
44
import cloud.localstack.docker.annotation.LocalstackDockerProperties;
5+
import cloud.localstack.awssdkv1.utils.PromiseAsyncHandler;
56
import cloud.localstack.awssdkv1.TestUtils;
67

78
import com.amazon.sqs.javamessaging.SQSConnection;

Diff for: src/test/java/cloud/localstack/sample/KinesisLambdaHandler.java renamed to src/test/java/cloud/localstack/awssdkv1/sample/KinesisLambdaHandler.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack.sample;
1+
package cloud.localstack.awssdkv1.sample;
22

33
import com.amazonaws.services.lambda.runtime.Context;
44
import com.amazonaws.services.lambda.runtime.RequestHandler;

Diff for: src/test/java/cloud/localstack/sample/LambdaStreamHandler.java renamed to src/test/java/cloud/localstack/awssdkv1/sample/LambdaStreamHandler.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack.sample;
1+
package cloud.localstack.awssdkv1.sample;
22

33
import com.amazonaws.services.lambda.runtime.Context;
44
import com.amazonaws.services.lambda.runtime.RequestStreamHandler;

Diff for: src/test/java/cloud/localstack/sample/S3Sample.java renamed to src/test/java/cloud/localstack/awssdkv1/sample/S3Sample.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cloud.localstack.sample;
1+
package cloud.localstack.awssdkv1.sample;
22
/*
33
* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*

0 commit comments

Comments
 (0)