diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d611679b713eeac77e034ee7e8c639c70a97fcc7..ca212e0e42780179076f0c70e2ca3e85a3afff31 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -62,5 +62,119 @@ include: - local: "devops/gc/pipeline/override-stages.yml" - local: "devops/aws/pipeline/override-stages.yml" +.maven: + image: maven:3.9.3-eclipse-temurin-17 + tags: ['osdu-medium'] + variables: + MAVEN_REPO_PATH: "$CI_PROJECT_DIR/.m2/repository" + MAVEN_CLI_OPTS: "--batch-mode --settings=$CI_PROJECT_DIR/.mvn/community-maven.settings.xml" + + cache: + paths: + - $MAVEN_REPO_PATH + + artifacts: + paths: + - ./**/target/*.jar + - ./**/maven-*-output.txt + when: always + expire_in: 2 days + + before_script: + - | # Check for the presence of a maven wrapper script + apt-get update && apt-get install -y python3 + if [ -e "$CI_PROJECT_DIR/mvnw" ]; then + export MAVEN_BINARY="$CI_PROJECT_DIR/mvnw" + unset MAVEN_CONFIG + mkdir -pv .mvn/wrapper + else + export MAVEN_BINARY="mvn" + fi + - export MAVEN="$MAVEN_BINARY $MAVEN_CLI_OPTS -Dmaven.repo.local=$MAVEN_REPO_PATH" + - echo $MAVEN_BINARY + - echo $MAVEN_CLI_OPTS + - echo $MAVEN_REPO_PATH + - echo $MAVEN + - mkdir -pv $MAVEN_REPO_PATH + - export ALL_MAVEN_BUILD_DIRS_Z=$(mktemp) + - python3 --version + + # This scans for all pom.xml files that aren't listed as a child pom (as + # determine by the presence of a <parent> tag). + - | + (python3 | sort -z > $ALL_MAVEN_BUILD_DIRS_Z) <<EOF + from xml.dom.minidom import parse + import os + import sys + + allPomFiles = set() + submoduleFiles = set() + + for root, dirnames, filenames in os.walk(os.environ['CI_PROJECT_DIR']): + if 'pom.xml' in filenames: + pomFile = os.path.join(root, 'pom.xml') + allPomFiles.add(pomFile) + + dom = parse(pomFile) + for modules in dom.getElementsByTagName('modules'): + for module in modules.getElementsByTagName('module'): + submoduleFiles.add(os.path.join(root, module.firstChild.nodeValue, "pom.xml")) + + for pomFile in allPomFiles: + if pomFile not in submoduleFiles: + dir = os.path.dirname(pomFile) + sys.stdout.write(dir + '\0') + EOF + - xargs -0rn 1 echo < $ALL_MAVEN_BUILD_DIRS_Z + + # This creates a script for running maven, capturing output to a file. + # - First argument is the directory to build from + # - Second argument is the name to use for the logfile + # - The remaining arguments are the maven command to run + - export MAVEN_BUILD=$(tempfile -m 755 -p build -s .sh) + - echo "#!/bin/bash" > $MAVEN_BUILD + - | + cat >> $MAVEN_BUILD <<EOF + id=maven_build_\$(echo "\$@" | sha1sum | head -c 7) + cd "\$1"; shift + outputFile="\$1"; shift + + echo "********************************************************************************" + echo -e "\e[0Ksection_start:\$(date +%s):\${id}\r\e[0K\e[1m\$(pwd)\e[0m" + echo -e "\e[32;1m\$MAVEN" "\$@" "\e[0m" + + if \$MAVEN "\$@" > "\$outputFile" 2>&1; then + tail -n 25 "\$outputFile"; + echo -e "\e[36m**** Showing the last 25 lines of the passed build (above). See Job artifacts for full log details *****\e[0m"; + echo -e "\e[0Ksection_end:\$(date +%s):\${id}\r\e[0K" + else + tail -n 200 "\$outputFile"; + echo -e "\e[31m**** Showing the last 200 lines of the failed build (above). See Job artifacts for full log details *****\e[0m"; + echo -e "\e[0Ksection_end:\$(date +%s):\${id}\r\e[0K" + exit 255; + fi + EOF + + # This creates a script for applying the $MAVEN_BUILD script to all build directories + - export MAVEN_FOREACH=$(tempfile -m 755 -p fr-ec -s .sh) + - echo "#!/bin/sh" > $MAVEN_FOREACH + - echo 'xargs -0rI {} $MAVEN_BUILD {} "$@" < $ALL_MAVEN_BUILD_DIRS_Z' >> $MAVEN_FOREACH + +gemnasium-maven-dependency_scanning: + variables: + DS_JAVA_VERSION: 17 + +azure_containerize: + variables: + AZURE_CONTAINERIZE_REPOSITORY: "-b jdk-17 https://gitlab-ci-token:${CI_JOB_TOKEN}@community.opengroup.org/osdu/platform/deployment-and-operations/base-containers-azure/service-base-image" + +azure_test: + image: community.opengroup.org:5555/osdu/platform/deployment-and-operations/base-containers-azure/azure-maven17:v0.0.1 + aws-test-java: - tags: ["aws-internal-test"] + image: $CI_REGISTRY/osdu/platform/deployment-and-operations/base-containers-aws/aws-maven/aws-maven:v2.0 + +fossa-analyze: + image: $CI_REGISTRY/divido/fossa-with-cache:v0.9-jdk17 +fossa-check-notice: + image: $CI_REGISTRY/divido/fossa-with-cache:v0.9-jdk17 diff --git a/indexer-core/pom.xml b/indexer-core/pom.xml index 0073b56d13638f9361b4ffdc4d8de0d3590c3384..d1c5c7fac09905d80a91544ef5e2680fdd630e87 100644 --- a/indexer-core/pom.xml +++ b/indexer-core/pom.xml @@ -19,7 +19,8 @@ <gson.version>2.9.1</gson.version> <netty.version>4.1.70.Final</netty.version> <spring-webmvc.version>5.3.22</spring-webmvc.version> - <os-core-common.version>0.21.0</os-core-common.version> + <os-core-common.version>0.22.0-rc4</os-core-common.version> + <argLine>--add-opens java.base/java.lang=ALL-UNNAMED</argLine> </properties> <dependencyManagement> @@ -215,22 +216,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> - <scope>test</scope> - </dependency> - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-api-mockito2</artifactId> - <version>2.0.2</version> - <scope>test</scope> - </dependency> - - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-module-junit4</artifactId> - <version>2.0.2</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -244,6 +230,18 @@ <artifactId>cobertura-maven-plugin</artifactId> <version>2.7</version> <scope>test</scope> + <exclusions> + <exclusion> + <groupId>com.sun</groupId> + <artifactId>tools</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>1.18.28</version> + <scope>provided</scope> </dependency> <dependency> <groupId>xerces</groupId> @@ -265,7 +263,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> - <version>2.4.2</version> + <version>3.0.0</version> <configuration> <useSystemClassLoader>false</useSystemClassLoader> <threadCount>1</threadCount> diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/CleanupIndiciesApiTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/CleanupIndiciesApiTest.java index f8236796ac646bdafe88df3ddcd7667002b2ccd1..2999ca37e03e804510a9d36d106119bceb113a38 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/CleanupIndiciesApiTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/CleanupIndiciesApiTest.java @@ -17,13 +17,11 @@ import org.opengroup.osdu.core.common.search.Config; import org.opengroup.osdu.indexer.logging.AuditLogger; import org.opengroup.osdu.indexer.service.IndexerService; import org.opengroup.osdu.indexer.util.IndexerQueueTaskBuilder; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -@RunWith(PowerMockRunner.class) -@PrepareForTest({HeadersUtil.class, IndexerQueueTaskBuilder.class, DpsHeaders.class, Config.class}) +@RunWith(MockitoJUnitRunner.class) public class CleanupIndiciesApiTest { private final String messageValid = "{\"data\":\"[{\\\"id\\\":\\\"opendes:welldb:wellbore-d9033ae1-fb15-496c-9ba0-880fd1d2b2cf\\\",\\\"kind\\\":\\\"tenant1:welldb:wellbore:1.0.0\\\",\\\"op\\\":\\\"purge_schema\\\"}]\",\"attributes\":{\"account-id\":\"opendes\",\"correlation-id\":\"b5a281bd-f59d-4db2-9939-b2d85036fc7e\"},\"messageId\":\"75328163778221\",\"publishTime\":\"2018-05-08T21:48:56.131Z\"}"; diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/RecordIndexerApiTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/RecordIndexerApiTest.java index 4c008d8646ded0eaf6d247d7f55d283a2e90d29e..a4c76181197e22e95b2a808589d6a09bff687e73 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/RecordIndexerApiTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/api/RecordIndexerApiTest.java @@ -33,14 +33,11 @@ import org.opengroup.osdu.core.common.model.search.RecordChangedMessages; import org.opengroup.osdu.indexer.service.IndexerService; import org.opengroup.osdu.indexer.service.SchemaEventsProcessor; import org.opengroup.osdu.indexer.service.SchemaService; -import org.opengroup.osdu.indexer.util.IndexerQueueTaskBuilder; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -@RunWith(PowerMockRunner.class) -@PrepareForTest({HeadersUtil.class, IndexerQueueTaskBuilder.class, DpsHeaders.class}) +@RunWith(MockitoJUnitRunner.class) public class RecordIndexerApiTest { private final String recordMessageValid = "{\"data\":\"[{\\\"id\\\":\\\"opendes:welldb:wellbore-d9033ae1-fb15-496c-9ba0-880fd1d2b2cf\\\",\\\"kind\\\":\\\"tenant1:welldb:wellbore:1.0.0\\\",\\\"op\\\":\\\"create\\\"}]\",\"attributes\":{\"account-id\":\"opendes\",\"correlation-id\":\"b5a281bd-f59d-4db2-9939-b2d85036fc7e\"},\"messageId\":\"75328163778221\",\"publishTime\":\"2018-05-08T21:48:56.131Z\"}"; diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/error/GlobalExceptionMapperCoreTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/error/GlobalExceptionMapperCoreTest.java index 1877df26e55b971991b6f222cc28a49926426c0f..e8302b7d4f4e3872574b1abca0cdffbaaaa5bb21 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/error/GlobalExceptionMapperCoreTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/error/GlobalExceptionMapperCoreTest.java @@ -24,7 +24,7 @@ import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.model.http.AppException; import org.opengroup.osdu.core.common.model.http.RequestStatus; import org.opengroup.osdu.indexer.schema.converter.exeption.SchemaProcessingException; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; import org.springframework.http.ResponseEntity; import org.springframework.security.access.AccessDeniedException; @@ -34,7 +34,7 @@ import java.io.IOException; import static org.junit.Assert.*; -@RunWith(PowerMockRunner.class) +@RunWith(MockitoJUnitRunner.class) public class GlobalExceptionMapperCoreTest { @Mock @@ -116,4 +116,4 @@ public class GlobalExceptionMapperCoreTest { ResponseEntity response = this.sut.handleSchemaProcessingException(schemaProcessingException); assertEquals(HttpStatus.SC_BAD_REQUEST, response.getStatusCodeValue()); } -} \ No newline at end of file +} diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/logging/JaxRsDpsLogTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/logging/JaxRsDpsLogTest.java index 3e9f19913838e05283b33240856b23a43592b41f..a57d7b89f171dc38cc8a73e30a12d82282a34e13 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/logging/JaxRsDpsLogTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/logging/JaxRsDpsLogTest.java @@ -25,7 +25,6 @@ import org.opengroup.osdu.core.common.model.http.Request; import org.opengroup.osdu.core.common.logging.ILogger; import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.logging.audit.AuditPayload; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.util.*; @@ -38,7 +37,6 @@ import static org.mockito.Mockito.*; @Ignore @RunWith(SpringRunner.class) -@PrepareForTest({ILogger.class}) public class JaxRsDpsLogTest { @Mock @@ -105,4 +103,4 @@ public class JaxRsDpsLogTest { this.sut.warning(warnings); verify(this.log, never()).warning(eq("search.app"), eq(""), any()); } -} \ No newline at end of file +} diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/ClusterConfigurationServiceTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/ClusterConfigurationServiceTest.java index 08bf634fa5875d5b4ec26010ffcf296b414e0f65..6eae13d97fc04bacd05357128febb5b1868cdbc3 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/ClusterConfigurationServiceTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/ClusterConfigurationServiceTest.java @@ -25,9 +25,7 @@ import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.springframework.test.context.junit4.SpringRunner; +import org.mockito.junit.MockitoJUnitRunner; import java.io.IOException; @@ -38,8 +36,7 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -@RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class, ClusterClient.class}) +@RunWith(MockitoJUnitRunner.class) public class ClusterConfigurationServiceTest { @Mock @@ -53,8 +50,8 @@ public class ClusterConfigurationServiceTest { @Before public void setup() { initMocks(this); - clusterClient = PowerMockito.mock(ClusterClient.class); - restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); + clusterClient = mock(ClusterClient.class); + restHighLevelClient = mock(RestHighLevelClient.class); } @Test diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImplTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImplTest.java index df1e5d4397aa8209fafe272747c1fe9f5b3972f9..f63777c8b13d3325ee5aece4ffd06e014869d220 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImplTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImplTest.java @@ -40,7 +40,6 @@ import org.opengroup.osdu.indexer.model.IndexAliasesResult; import org.opengroup.osdu.indexer.service.mock.BucketMock; import org.opengroup.osdu.indexer.service.mock.TermMock; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.api.mockito.PowerMockito; import org.springframework.context.annotation.Lazy; import java.io.IOException; @@ -48,6 +47,7 @@ import java.util.*; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; @@ -75,10 +75,10 @@ public class IndexAliasServiceImplTest { @Before public void setup() { initMocks(this); - indicesClient = PowerMockito.mock(IndicesClient.class); - restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); - getAliasesResponse = PowerMockito.mock(GetAliasesResponse.class); - getAliasesNotFoundResponse = PowerMockito.mock(GetAliasesResponse.class); + indicesClient = mock(IndicesClient.class); + restHighLevelClient = mock(RestHighLevelClient.class); + getAliasesResponse = mock(GetAliasesResponse.class); + getAliasesNotFoundResponse = mock(GetAliasesResponse.class); } @@ -152,11 +152,11 @@ public class IndexAliasServiceImplTest { String unsupportedKind = "common:welldb:wellbore:1"; String unsupportedIndex = unsupportedKind.replace(":", "-"); - SearchResponse searchResponse = PowerMockito.mock(SearchResponse.class); - Aggregations aggregations = PowerMockito.mock(Aggregations.class); - TermMock terms = PowerMockito.mock(TermMock.class); - BucketMock bucket = PowerMockito.mock(BucketMock.class); - BucketMock bucket2 = PowerMockito.mock(BucketMock.class); + SearchResponse searchResponse = mock(SearchResponse.class); + Aggregations aggregations = mock(Aggregations.class); + TermMock terms = mock(TermMock.class); + BucketMock bucket = mock(BucketMock.class); + BucketMock bucket2 = mock(BucketMock.class); List<BucketMock> bucketList = Arrays.asList(bucket, bucket, bucket2); AcknowledgedResponse updateAliasesResponse = new AcknowledgedResponse(true); when(elasticIndexNameResolver.getIndexNameFromKind(any())) diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java index dd12c8e66405c42d8aa87dc208764e49dc2d89a7..b0532a5d49f8ee481b19eb81f3f7e8daeb6cc516 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java @@ -18,12 +18,13 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; import static org.mockito.Matchers.any; import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mockingDetails; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.spy; -import static org.powermock.api.mockito.PowerMockito.when; import com.google.gson.Gson; import java.io.IOException; @@ -52,12 +53,9 @@ import org.opengroup.osdu.core.common.search.ElasticIndexNameResolver; import org.opengroup.osdu.indexer.cache.PartitionSafeIndexCache; import org.opengroup.osdu.indexer.util.ElasticClientHandler; import org.opengroup.osdu.indexer.util.TypeMapper; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; -@RunWith(PowerMockRunner.class) -@PrepareForTest({RestHighLevelClient.class, IndicesClient.class}) +@RunWith(MockitoJUnitRunner.class) public class IndexerMappingServiceTest { private final String kind = "tenant:test:test:1.0.0"; @@ -97,8 +95,8 @@ public class IndexerMappingServiceTest { this.indexSchema = IndexSchema.builder().kind(kind).type(type).dataSchema(getDataAttributeMapping()).metaSchema(getMetaAttributeMapping()).build(); - this.indicesClient = PowerMockito.mock(IndicesClient.class); - this.restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); + this.indicesClient = mock(IndicesClient.class); + this.restHighLevelClient = mock(RestHighLevelClient.class); when(this.elasticIndexNameResolver.getIndexNameFromKind(kind)).thenReturn(index); when(this.restHighLevelClient.getLowLevelClient()).thenReturn(restClient); diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerSchemaServiceTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerSchemaServiceTest.java index 4c488fb13c7b1d66e4a7f7113edf003e40b5bc1e..584bef57ee6d9b1e932494e57b722b5b1350ef5a 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerSchemaServiceTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerSchemaServiceTest.java @@ -39,7 +39,6 @@ import org.opengroup.osdu.indexer.schema.converter.exeption.SchemaProcessingExce import org.opengroup.osdu.indexer.schema.converter.interfaces.IVirtualPropertiesSchemaCache; import org.opengroup.osdu.indexer.util.AugmenterSetting; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -55,11 +54,8 @@ import static org.junit.Assert.*; import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.mock; -import static org.powermock.api.mockito.PowerMockito.when; @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class}) public class IndexerSchemaServiceTest { private final String kind = "tenant:test:test:1.0.0"; diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerServiceImplTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerServiceImplTest.java index 5ab9d69ec9d284b08c8dfde688021832d45d8c9d..364ae5657c71d71f8c5bf6f07a43d0d5f3e80cc9 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerServiceImplTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndexerServiceImplTest.java @@ -22,12 +22,14 @@ import org.elasticsearch.action.bulk.BulkResponse; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.rest.RestStatus; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.MockedStatic; import org.mockito.Spy; import org.opengroup.osdu.core.common.http.HeadersUtil; import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; @@ -44,8 +46,7 @@ import org.opengroup.osdu.indexer.provider.interfaces.IPublisher; import org.opengroup.osdu.indexer.util.AugmenterSetting; import org.opengroup.osdu.indexer.util.ElasticClientHandler; import org.opengroup.osdu.indexer.util.IndexerQueueTaskBuilder; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; import java.io.IOException; import java.io.UnsupportedEncodingException; @@ -56,15 +57,18 @@ import java.util.*; import static java.util.Collections.singletonList; import static org.junit.Assert.*; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.mockStatic; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.*; -@RunWith(PowerMockRunner.class) -@PrepareForTest({RestHighLevelClient.class, BulkResponse.class, Acl.class, HeadersUtil.class}) +@RunWith(MockitoJUnitRunner.class) public class IndexerServiceImplTest { + private static MockedStatic<Acl> mockedAcls; + @InjectMocks private IndexerServiceImpl sut; @Mock @@ -126,6 +130,11 @@ public class IndexerServiceImplTest { when(augmenterSetting.isEnabled()).thenReturn(true); } + @After + public void close() { + mockedAcls.close(); + } + @Test public void processSchemaMessagesTest() throws Exception { RecordInfo recordInfo = new RecordInfo(); @@ -238,7 +247,7 @@ public class IndexerServiceImplTest { } private void prepareTestDataAndEnv(String pubsubMsg) throws IOException, URISyntaxException { - mockStatic(Acl.class); + mockedAcls = mockStatic(Acl.class); // setup headers this.dpsHeaders = new DpsHeaders(); diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndicesServiceTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndicesServiceTest.java index 7bc3fe17d8a060337c7b624fe7d7c76036ff3d7f..1f0c43a9fccd6c56862c0243ff46c54b39052142 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndicesServiceTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/IndicesServiceTest.java @@ -43,8 +43,6 @@ import org.opengroup.osdu.core.common.model.search.IndexInfo; import org.opengroup.osdu.core.common.search.ElasticIndexNameResolver; import org.opengroup.osdu.indexer.cache.PartitionSafeIndexCache; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.context.annotation.Lazy; import org.springframework.test.context.junit4.SpringRunner; @@ -60,7 +58,6 @@ import static org.mockito.Mockito.*; import static org.mockito.MockitoAnnotations.initMocks; @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class, IndicesClient.class, ClusterClient.class, EntityUtils.class}) public class IndicesServiceTest { @Mock private ElasticClientHandler elasticClientHandler; @@ -89,9 +86,9 @@ public class IndicesServiceTest { @Before public void setup() { initMocks(this); - indicesClient = PowerMockito.mock(IndicesClient.class); - clusterClient = PowerMockito.mock(ClusterClient.class); - restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); + indicesClient = mock(IndicesClient.class); + clusterClient = mock(ClusterClient.class); + restHighLevelClient = mock(RestHighLevelClient.class); } @Test @@ -140,7 +137,7 @@ public class IndicesServiceTest { @Test public void delete_existingElasticIndex() throws Exception { AcknowledgedResponse indexResponse = new AcknowledgedResponse(true); - GetIndexResponse getIndexResponse = PowerMockito.mock(GetIndexResponse.class); + GetIndexResponse getIndexResponse = mock(GetIndexResponse.class); String[] indices = {"anyIndex"}; when(elasticClientHandler.createRestClient()).thenReturn(restHighLevelClient); @@ -155,7 +152,7 @@ public class IndicesServiceTest { @Test public void delete_existingElasticIndex_usingSameClient() throws Exception { AcknowledgedResponse indexResponse = new AcknowledgedResponse(true); - GetIndexResponse getIndexResponse = PowerMockito.mock(GetIndexResponse.class); + GetIndexResponse getIndexResponse = mock(GetIndexResponse.class); String[] indices = {"anyIndex"}; when(elasticClientHandler.createRestClient()).thenReturn(restHighLevelClient); @@ -170,7 +167,7 @@ public class IndicesServiceTest { @Test public void should_throw_internalServerException_delete_isNotAcknowledged() throws Exception { AcknowledgedResponse indexResponse = new AcknowledgedResponse(false); - GetIndexResponse getIndexResponse = PowerMockito.mock(GetIndexResponse.class); + GetIndexResponse getIndexResponse = mock(GetIndexResponse.class); String[] indices = {"anyIndex"}; when(elasticClientHandler.createRestClient()).thenReturn(restHighLevelClient); doReturn(indicesClient).when(restHighLevelClient).indices(); @@ -194,7 +191,7 @@ public class IndicesServiceTest { public void should_throwAppException_when_delete_existingElasticIndex_and_backupIsRunning() throws Exception { ElasticsearchStatusException exception = new ElasticsearchStatusException( "Cannot delete indices that are being snapshotted: [[anyIndex/8IXuPeFnTJGEu_LjjXrHwA]]. Try again after snapshot finishes or cancel the currently running snapshot.", RestStatus.BAD_REQUEST); - GetIndexResponse getIndexResponse = PowerMockito.mock(GetIndexResponse.class); + GetIndexResponse getIndexResponse = mock(GetIndexResponse.class); String[] indices = {"anyIndex"}; when(elasticClientHandler.createRestClient()).thenReturn(restHighLevelClient); doReturn(indicesClient).when(restHighLevelClient).indices(); diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/PropertyConfigurationsServiceImplTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/PropertyConfigurationsServiceImplTest.java index 9a11d7a791463b0668619ccad412d7fc90d403e3..cc4bd6e1999a2a5428ed04c8a82df17b11d72f09 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/PropertyConfigurationsServiceImplTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/PropertyConfigurationsServiceImplTest.java @@ -58,7 +58,7 @@ import java.util.Map; import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.when; @RunWith(SpringRunner.class) public class PropertyConfigurationsServiceImplTest { diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaEventsProcessorImplTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaEventsProcessorImplTest.java index 31effd715d41d28f21ab7a74920769c85dc24654..11f7bcda442cd63486e35eaf65d1bbad215a9e6e 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaEventsProcessorImplTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaEventsProcessorImplTest.java @@ -23,9 +23,10 @@ import static org.junit.Assert.fail; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.doThrow; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.when; import static org.springframework.http.HttpStatus.BAD_REQUEST; import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR; @@ -44,7 +45,6 @@ import org.opengroup.osdu.core.common.model.indexer.SchemaInfo; import org.opengroup.osdu.indexer.config.SchemaEventsListenerConfiguration; import org.opengroup.osdu.indexer.logging.AuditLogger; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.api.mockito.PowerMockito; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @@ -72,7 +72,7 @@ public class SchemaEventsProcessorImplTest { @Test public void should_process_validSchemaCreateEvent() throws IOException, URISyntaxException { SchemaInfo event1 = new SchemaInfo("slb:indexer:test-data--SchemaEventIntegration:1.0.0", "create"); - this.restClient = PowerMockito.mock(RestHighLevelClient.class); + this.restClient = mock(RestHighLevelClient.class); when(elasticClientHandler.createRestClient()).thenReturn(restClient); this.sut.processSchemaMessages(singletonList(event1)); @@ -84,7 +84,7 @@ public class SchemaEventsProcessorImplTest { @Test public void should_process_validSchemaUpdateEvent() throws IOException, URISyntaxException { SchemaInfo event1 = new SchemaInfo("slb:indexer:test-data--SchemaEventIntegration:1.0.0", "update"); - this.restClient = PowerMockito.mock(RestHighLevelClient.class); + this.restClient = mock(RestHighLevelClient.class); when(elasticClientHandler.createRestClient()).thenReturn(restClient); this.sut.processSchemaMessages(singletonList(event1)); @@ -111,7 +111,7 @@ public class SchemaEventsProcessorImplTest { @Test public void should_throwError_given_schemaUpsertFails() throws IOException, URISyntaxException { SchemaInfo event1 = new SchemaInfo("slb:indexer:test-data--SchemaEventIntegration:1.0.0", "update"); - this.restClient = PowerMockito.mock(RestHighLevelClient.class); + this.restClient = mock(RestHighLevelClient.class); when(elasticClientHandler.createRestClient()).thenReturn(restClient); doThrow(new ElasticsearchStatusException("unknown error", RestStatus.INTERNAL_SERVER_ERROR)).when(this.indexSchemaService) .processSchemaUpsertEvent(any(RestHighLevelClient.class), anyString()); diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaProviderImplTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaProviderImplTest.java index 68a35ad4494d33acadfc7c11bbf634ce78aab17d..7d04a7df348ba08e5d7fccf88d2cb038ba753716 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaProviderImplTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SchemaProviderImplTest.java @@ -30,7 +30,6 @@ import org.opengroup.osdu.indexer.config.IndexerConfigurationProperties; import org.opengroup.osdu.indexer.logging.AuditLogger; import org.opengroup.osdu.indexer.model.SchemaInfoResponse; import org.opengroup.osdu.indexer.schema.converter.SchemaToStorageFormatImpl; -import org.powermock.api.mockito.PowerMockito; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.test.context.junit4.SpringRunner; @@ -42,7 +41,6 @@ import static org.junit.Assert.*; import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.*; -import static org.powermock.api.mockito.PowerMockito.when; @RunWith(SpringRunner.class) public class SchemaProviderImplTest { @@ -113,7 +111,7 @@ public class SchemaProviderImplTest { httpResponse.setResponseCode(org.springframework.http.HttpStatus.OK.value()); httpResponse.setBody(validSchemaFromSchemaService); - PowerMockito.when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); + when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); String recordSchemaResponse = this.sut.getSchema(kind); @@ -135,7 +133,7 @@ public class SchemaProviderImplTest { HttpResponse httpResponse = new HttpResponse(); httpResponse.setResponseCode(org.springframework.http.HttpStatus.NOT_FOUND.value()); - PowerMockito.when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); + when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); String recordSchemaResponse = this.sut.getSchema(kind); @@ -165,7 +163,7 @@ public class SchemaProviderImplTest { @Test public void getSchemaInfos() throws URISyntaxException, UnsupportedEncodingException { HttpResponse httpResponse = createSchemaInfoResponse(); - PowerMockito.when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); + when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); SchemaInfoResponse schemaInfoResponse = sut.getSchemaInfos("osdu", "wks", "master-data--Wellbore", "1", null, null, true); assertEquals(1, schemaInfoResponse.getCount()); @@ -178,8 +176,8 @@ public class SchemaProviderImplTest { String schemaHost = "http://localhost/api/schema-service/v1/schema"; ArgumentCaptor<FetchServiceHttpRequest> argumentCaptor = ArgumentCaptor.forClass(FetchServiceHttpRequest.class); HttpResponse httpResponse = createSchemaInfoResponse(); - PowerMockito.when(this.configurationProperties.getSchemaHost()).thenReturn(schemaHost); - PowerMockito.when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); + when(this.configurationProperties.getSchemaHost()).thenReturn(schemaHost); + when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); sut.getSchemaInfos("osdu", "wks", "master-data--Wellbore", "1", null, null, true); verify(this.urlFetchService).sendRequest(argumentCaptor.capture()); @@ -194,8 +192,8 @@ public class SchemaProviderImplTest { String schemaHost = "http://localhost/api/schema-service/v1/schema"; ArgumentCaptor<FetchServiceHttpRequest> argumentCaptor = ArgumentCaptor.forClass(FetchServiceHttpRequest.class); HttpResponse httpResponse = createSchemaInfoResponse(); - PowerMockito.when(this.configurationProperties.getSchemaHost()).thenReturn(schemaHost); - PowerMockito.when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); + when(this.configurationProperties.getSchemaHost()).thenReturn(schemaHost); + when(this.urlFetchService.sendRequest(any())).thenReturn(httpResponse); sut.getSchemaInfos("osdu", "wks", "master-data--Wellbore", "1", "2", null, false); verify(this.urlFetchService).sendRequest(argumentCaptor.capture()); diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SearchServiceImplTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SearchServiceImplTest.java index 93ee08260785537a679529039d0966dbbee88fb7..a299529d394569bebf2c66a8e4963229535876cb 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SearchServiceImplTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/service/SearchServiceImplTest.java @@ -13,16 +13,15 @@ import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; import org.opengroup.osdu.indexer.config.IndexerConfigurationProperties; import org.opengroup.osdu.indexer.model.SearchRequest; import org.opengroup.osdu.indexer.model.SearchResponse; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.when; import java.net.URISyntaxException; -import static org.powermock.api.mockito.PowerMockito.when; - -@RunWith(PowerMockRunner.class) +@RunWith(MockitoJUnitRunner.class) public class SearchServiceImplTest { @InjectMocks private SearchServiceImpl sut; diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/BooleanFeatureFlagClientTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/BooleanFeatureFlagClientTest.java index 8b5fb420f4e1269ddcb0bd255a535a172869056d..4a309df7b7abd3028f69e79aa32c027bf08ec327 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/BooleanFeatureFlagClientTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/BooleanFeatureFlagClientTest.java @@ -32,7 +32,7 @@ import java.util.HashMap; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyString; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.when; @RunWith(SpringRunner.class) public class BooleanFeatureFlagClientTest { diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/ElasticClientHandlerTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/ElasticClientHandlerTest.java index effda48aaef31616b6f583844fdadbd31276747a..ba6f57e1d9618e60b792741c1c1279b3a7a9b2d3 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/ElasticClientHandlerTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/ElasticClientHandlerTest.java @@ -18,30 +18,31 @@ import org.apache.http.HttpHost; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestClientBuilder; import org.elasticsearch.client.RestHighLevelClient; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.MockedStatic; import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.model.http.AppException; import org.opengroup.osdu.core.common.model.indexer.IElasticSettingService; import org.opengroup.osdu.core.common.model.search.ClusterSettings; import org.opengroup.osdu.core.common.model.search.DeploymentEnvironment; import org.opengroup.osdu.indexer.config.IndexerConfigurationProperties; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; +import org.mockito.junit.MockitoJUnitRunner; import static org.junit.Assert.assertEquals; +import static org.mockito.Mockito.mockStatic; import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.mockStatic; -@RunWith(PowerMockRunner.class) -@PrepareForTest({RestClient.class, RestHighLevelClient.class}) +@RunWith(MockitoJUnitRunner.class) public class ElasticClientHandlerTest { private static final boolean SECURITY_HTTPS_CERTIFICATE_TRUST = false; + private static MockedStatic<RestClient> mockedRestClients; @Mock private IndexerConfigurationProperties configurationProperties; @@ -63,11 +64,16 @@ public class ElasticClientHandlerTest { public void setup() { initMocks(this); - mockStatic(RestClient.class); + mockedRestClients = mockStatic(RestClient.class); elasticClientHandler.setSecurityHttpsCertificateTrust(SECURITY_HTTPS_CERTIFICATE_TRUST); } + @After + public void close() { + mockedRestClients.close(); + } + @Test public void createRestClient_when_deployment_env_is_saas() { ClusterSettings clusterSettings = new ClusterSettings("H", 1, "U:P"); @@ -102,5 +108,3 @@ public class ElasticClientHandlerTest { this.elasticClientHandler.createRestClient(); } } - - diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeoShapeDecimatorTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeoShapeDecimatorTest.java index bed108e2f89af157c7d4c2afce2d1ad93d9a15d2..d32cf0e24afe3014800ce1c7b3832ce2825d9d8a 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeoShapeDecimatorTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeoShapeDecimatorTest.java @@ -38,7 +38,7 @@ import java.util.Map; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.ArgumentMatchers.any; -import static org.powermock.api.mockito.PowerMockito.doAnswer; +import static org.mockito.Mockito.doAnswer; @RunWith(SpringRunner.class) public class GeoShapeDecimatorTest { diff --git a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeometryDecimatorTest.java b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeometryDecimatorTest.java index bd675e2a5fd98ee09b19de8ef47d269a712a0950..a3eda1658d4342aa70cda58dfb46a968bd8aca44 100644 --- a/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeometryDecimatorTest.java +++ b/indexer-core/src/test/java/org/opengroup/osdu/indexer/util/geo/decimator/GeometryDecimatorTest.java @@ -43,7 +43,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.ArgumentMatchers.anyDouble; import static org.mockito.ArgumentMatchers.anyList; -import static org.powermock.api.mockito.PowerMockito.doAnswer; +import static org.mockito.Mockito.doAnswer; @RunWith(SpringRunner.class) public class GeometryDecimatorTest { diff --git a/pom.xml b/pom.xml index 9f3a548e4bf3299c8c3bdefe3297f87d65f91381..8786c9429cb9c8ad4c5fc31d0486ba04ccb4c3fe 100644 --- a/pom.xml +++ b/pom.xml @@ -9,11 +9,11 @@ <description>Indexer Service</description> <properties> - <java.version>1.8</java.version> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <java.version>17</java.version> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <spring-cloud.version>Greenwich.SR2</spring-cloud.version> - <os-core-common.version>0.21.0</os-core-common.version> + <os-core-common.version>0.22.0-rc4</os-core-common.version> <snakeyaml.version>2.0</snakeyaml.version> <hibernate-validator.version>6.1.5.Final</hibernate-validator.version> <jackson-databind.version>2.14.1</jackson-databind.version> @@ -256,7 +256,7 @@ <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> - <version>0.8.3</version> + <version>0.8.10</version> <executions> <execution> <goals> diff --git a/provider/indexer-aws/README.md b/provider/indexer-aws/README.md index 01b9d492c12801e3b6adfb002eabff7b3ae2a3d2..c7ce9c86485c059e53af5bea69c9b432d0e9f853 100644 --- a/provider/indexer-aws/README.md +++ b/provider/indexer-aws/README.md @@ -8,9 +8,9 @@ These instructions will get you a copy of the project up and running on your loc ### Prerequisites Pre-requisites -* JDK 8 (https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/downloads-list.html) +* JDK 17 (https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/downloads-list.html) * Maven 3.8.3 or later -* Lombok 1.16 or later +* Lombok 1.28 or later * OSDU Instance deployed on AWS ### Service Configuration @@ -44,7 +44,7 @@ example: $ mvn --version Apache Maven 3.8.3 (ff8e977a158738155dc465c6a97ffaf31982d739) Maven home: /usr/local/Cellar/maven/3.8.3/libexec -Java version: 1.8.0_312, vendor: Amazon.com Inc., runtime: /Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home/jre +Java version: 17.0.7, vendor: Amazon.com Inc. ... ``` diff --git a/provider/indexer-aws/build-aws/Dockerfile b/provider/indexer-aws/build-aws/Dockerfile index 2885b3f2ed9c1ac30a89b0c99d351c57b5fdedbf..42259f386334d5969f0ec2a91afb02e527ad695f 100644 --- a/provider/indexer-aws/build-aws/Dockerfile +++ b/provider/indexer-aws/build-aws/Dockerfile @@ -13,7 +13,7 @@ # limitations under the License. # https://docs.spring.io/spring-boot/docs/current/reference/html/deployment.html -FROM amazoncorretto:8 +FROM amazoncorretto:17 ARG JAR_FILE=provider/indexer-aws/target/*spring-boot.jar @@ -23,4 +23,4 @@ COPY ${JAR_FILE} app.jar COPY /provider/indexer-aws/build-aws/entrypoint.sh /entrypoint.sh EXPOSE 8080 -ENTRYPOINT ["/bin/sh", "-c", ". /entrypoint.sh"] \ No newline at end of file +ENTRYPOINT ["/bin/sh", "-c", ". /entrypoint.sh"] diff --git a/provider/indexer-aws/build-aws/buildspec.yaml b/provider/indexer-aws/build-aws/buildspec.yaml index 9fb114e537457c8e2fd1fafa5479361759f9412a..966c6201a9a50caef7d817c725536fbac697728e 100644 --- a/provider/indexer-aws/build-aws/buildspec.yaml +++ b/provider/indexer-aws/build-aws/buildspec.yaml @@ -30,10 +30,8 @@ env: phases: install: runtime-versions: - java: corretto8 + java: corretto17 commands: - # fix error noted here: https://github.com/yarnpkg/yarn/issues/7866 - - curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - - if [ $(echo $CODEBUILD_SOURCE_VERSION | grep -c ^refs/heads.*) -eq 1 ]; then echo "Branch name found"; else echo "This build only supports branch builds" && exit 1; fi - apt-get update -y - apt-get install -y maven @@ -45,17 +43,15 @@ phases: - export AWS_ACCOUNT_ID=`aws sts get-caller-identity | grep Account | cut -d':' -f 2 | cut -d'"' -f 2` - export AWS_OSDU_DEV_MAVEN_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain $AWS_OSDU_DEV_MAVEN_DOMAIN --domain-owner $AWS_ACCOUNT_ID --query authorizationToken --output text` # Install git secrets - #TODO temporarily adding hotfix, due to https://github.com/awslabs/git-secrets/issues/220 - - export SAY_LOCATION=`ln -s "$(which echo)" say` - - export PATH="$PATH:$SAY_LOCATION" - - git clone https://github.com/awslabs/git-secrets.git - cd git-secrets && make install && cd .. - git secrets --install && git secrets --register-aws pre_build: commands: - echo "Logging in to Amazon ECR..." - - $(aws ecr get-login --no-include-email --region $AWS_REGION) # authenticate with ECR via the AWS CLI + - aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin ${ECR_REGISTRY} + - echo "Logging into Docker Hub..." + - docker login -u ${DOCKER_USERNAME} -p ${DOCKER_PASSWORD} build: commands: - export REPO_NAME=${PWD##*/} @@ -86,9 +82,6 @@ phases: - echo "--Copying Helm Charts to ${OUTPUT_DIR:-dist}--" - rsync -r devops/aws/* "${OUTPUT_DIR:-dist}" - - echo "Logging into Docker Hub..." - - docker login -u ${DOCKER_USERNAME} -p ${DOCKER_PASSWORD} - - echo "Building docker image..." - docker build -f provider/indexer-aws/build-aws/Dockerfile -t ${ECR_IMAGE} . - docker tag ${ECR_IMAGE} ${ECR_IMAGE_BRANCH_LATEST} diff --git a/provider/indexer-aws/build-aws/entrypoint.sh b/provider/indexer-aws/build-aws/entrypoint.sh index 412f71afd92e9c2ed3e50a2863cb5675c8a69b43..aaa9f8f93e6e4fc6f919c2c68d75689ccba1a8f4 100755 --- a/provider/indexer-aws/build-aws/entrypoint.sh +++ b/provider/indexer-aws/build-aws/entrypoint.sh @@ -1,4 +1,4 @@ -java $JAVA_OPTS -jar /app.jar \ No newline at end of file +java $JAVA_OPTS --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED -jar /app.jar diff --git a/provider/indexer-aws/pom.xml b/provider/indexer-aws/pom.xml index bfb455e7a250fd68e21b0c36a1b458f35c7d5155..a379f9358d366c783eebf356caeb831d53b6268e 100644 --- a/provider/indexer-aws/pom.xml +++ b/provider/indexer-aws/pom.xml @@ -34,7 +34,8 @@ <netty.version>4.1.51.Final</netty.version> <jackson-databind.version>2.13.2.2</jackson-databind.version> <jackson.version>2.13.2</jackson.version> - <spring-webmvc.version>5.3.22</spring-webmvc.version> + <spring-webmvc.version>5.3.22</spring-webmvc.version> + <argLine>--add-opens java.base/java.lang=ALL-UNNAMED</argLine> </properties> <dependencyManagement> @@ -157,7 +158,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -166,11 +167,6 @@ <version>1.10.19</version> <scope>test</scope> </dependency> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-module-junit4</artifactId> - <version>2.0.2</version> - </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> diff --git a/provider/indexer-azure/README.md b/provider/indexer-azure/README.md index 03a4a114ea9dad4923f4289cba4b59f152c0acd8..6aec4046b219903eadfb7c10987d3a9994bb85aa 100644 --- a/provider/indexer-azure/README.md +++ b/provider/indexer-azure/README.md @@ -8,8 +8,8 @@ os-indexer-azure is a [Spring Boot](https://spring.io/projects/spring-boot) serv In order to run this service locally, you will need the following: -- [Maven 3.6.0+](https://maven.apache.org/download.cgi) -- [AdoptOpenJDK8](https://adoptopenjdk.net/) +- [Maven 3.8.0+](https://maven.apache.org/download.cgi) +- [Java 17](https://adoptopenjdk.net/) - Infrastructure dependencies, deployable through the relevant [infrastructure template](https://community.opengroup.org/osdu/platform/deployment-and-operations/infra-azure-provisioning/-/blob/master/docs/service-automation.md) - While not a strict dependency, example commands in this document use [bash](https://www.gnu.org/software/bash/) @@ -92,9 +92,9 @@ az keyvault secret show --vault-name $KEY_VAULT_NAME --name $KEY_VAULT_SECRET_NA Check that maven is installed: ```bash $ mvn --version -Apache Maven 3.6.0 +Apache Maven 3.8.0 Maven home: /usr/share/maven -Java version: 1.8.0_212, vendor: AdoptOpenJDK, runtime: /usr/lib/jvm/jdk8u212-b04/jre +Java version: 17.0.7 ... ``` @@ -113,7 +113,7 @@ $ (cd provider/indexer-azure/ && mvn clean package) # # Note: this assumes that the environment variables for running the service as outlined # above are already exported in your environment. -$ java -jar $(find provider/indexer-azure/target/ -name *-spring-boot.jar) +$ java -jar $(find provider/indexer-azure/target/ -name *-spring-boot.jar) --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED # Alternately you can run using the Mavan Task $ mvn spring-boot:run diff --git a/provider/indexer-azure/pom.xml b/provider/indexer-azure/pom.xml index 6dd9ec5fe6dd40cf2a6f4fcf7d5bcd3f575d926e..bae0cf4e82aa84919e6fc9bab1e2642b92da202b 100644 --- a/provider/indexer-azure/pom.xml +++ b/provider/indexer-azure/pom.xml @@ -42,10 +42,9 @@ <indexer-core.version>0.23.0-SNAPSHOT</indexer-core.version> <spring-security-jwt.version>1.1.1.RELEASE</spring-security-jwt.version> <osdu.corelibazure.version>0.20.0-rc5</osdu.corelibazure.version> - <os-core-common.version>0.21.0</os-core-common.version> + <os-core-common.version>0.22.0-rc4</os-core-common.version> <reactor-netty.version>0.9.12.RELEASE</reactor-netty.version> <java-jwt.version>3.8.1</java-jwt.version> - <powermock.version>2.0.2</powermock.version> <mockito.version>3.11.2</mockito.version> <cobertura-maven-plugin.version>2.7</cobertura-maven-plugin.version> <spring-security-oauth2.version>2.3.6.RELEASE</spring-security-oauth2.version> @@ -293,21 +292,6 @@ <artifactId>junit</artifactId> <scope>test</scope> </dependency> - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-api-mockito2</artifactId> - <version>${powermock.version}</version> - <scope>test</scope> - </dependency> - - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-module-junit4</artifactId> - <version>${powermock.version}</version> - <scope>test</scope> - </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> @@ -319,6 +303,18 @@ <artifactId>cobertura-maven-plugin</artifactId> <version>${cobertura-maven-plugin.version}</version> <scope>test</scope> + <exclusions> + <exclusion> + <groupId>com.sun</groupId> + <artifactId>tools</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>1.18.26</version> + <scope>provided</scope> </dependency> <dependency> <groupId>xerces</groupId> @@ -397,7 +393,7 @@ <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> - <version>0.8.2</version> + <version>0.8.10</version> <executions> <execution> <goals> @@ -447,7 +443,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> - <version>2.4.2</version> + <version>3.0.0</version> <configuration> <useSystemClassLoader>false</useSystemClassLoader> <threadCount>1</threadCount> diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/CronServiceImplTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/CronServiceImplTest.java index 4e14ed7038f7073a798c5c89a7addfd50c20ea81..9aacba3c2cab5f10db475129866acc7400a24233 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/CronServiceImplTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/CronServiceImplTest.java @@ -30,7 +30,6 @@ import org.opengroup.osdu.core.common.model.search.IndexInfo; import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; import org.opengroup.osdu.indexer.service.IndicesService; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -43,7 +42,6 @@ import static org.mockito.Mockito.*; @Ignore @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class}) public class CronServiceImplTest { @Mock @@ -139,4 +137,4 @@ public class CronServiceImplTest { verify(this.indicesService, times(0)).deleteIndex(any(), any()); } -} \ No newline at end of file +} diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/IndexerMappingServiceTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/IndexerMappingServiceTest.java index faf5b53af92eb0b65bf15667c577307a09964c3e..4eacdf60f3a2f8774e3b4bf984983c4c2eebdb07 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/IndexerMappingServiceTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/IndexerMappingServiceTest.java @@ -32,8 +32,6 @@ import org.mockito.Mock; import org.opengroup.osdu.core.common.model.indexer.IndexSchema; import org.opengroup.osdu.core.common.model.search.RecordMetaAttribute; import org.opengroup.osdu.indexer.service.IndexerMappingServiceImpl; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -43,11 +41,12 @@ import java.util.Map; import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; import static org.mockito.Mockito.doReturn; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.when; @Ignore @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class, IndicesClient.class}) public class IndexerMappingServiceTest { private final String kind = "tenant:test:test:1.0.0"; @@ -85,8 +84,8 @@ public class IndexerMappingServiceTest { this.indexSchema = IndexSchema.builder().kind(kind).type(type).dataSchema(dataMapping).metaSchema(metaMapping) .build(); - this.indicesClient = PowerMockito.mock(IndicesClient.class); - this.restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); + this.indicesClient = mock(IndicesClient.class); + this.restHighLevelClient = mock(RestHighLevelClient.class); when(this.restHighLevelClient.getLowLevelClient()).thenReturn(restClient); when(this.restClient.performRequest(ArgumentMatchers.any())).thenReturn(response); @@ -123,7 +122,7 @@ public class IndexerMappingServiceTest { doReturn(this.indicesClient).when(this.restHighLevelClient).indices(); doReturn(mappingResponse).when(this.indicesClient).putMapping(ArgumentMatchers.any(PutMappingRequest.class), ArgumentMatchers.any(RequestOptions.class)); - IndexerMappingServiceImpl indexerMappingServiceLocal = PowerMockito.spy(new IndexerMappingServiceImpl()); + IndexerMappingServiceImpl indexerMappingServiceLocal = spy(new IndexerMappingServiceImpl()); doReturn(false).when(indexerMappingServiceLocal).isTypeExist(ArgumentMatchers.any(), ArgumentMatchers.any(), ArgumentMatchers.any()); String mapping = this.sut.createMapping(this.restHighLevelClient, this.indexSchema, this.index, true); assertEquals(this.mappingValid, mapping); diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/PublisherImplTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/PublisherImplTest.java index cd3f7333d33ef68caeb1b70c65eece302d917095..04c75b92d3defea4af9d5f61578156fae3207628 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/PublisherImplTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/PublisherImplTest.java @@ -8,10 +8,7 @@ import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.model.http.DpsHeaders; import org.opengroup.osdu.core.common.model.indexer.JobStatus; import org.opengroup.osdu.indexer.azure.publish.PublisherImpl; -import org.powermock.modules.junit4.PowerMockRunner; - -import javax.inject.Inject; -import javax.inject.Named; +import org.mockito.junit.MockitoJUnitRunner; import java.util.HashMap; import java.util.Map; @@ -19,7 +16,7 @@ import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; -@RunWith(PowerMockRunner.class) +@RunWith(MockitoJUnitRunner.class) public class PublisherImplTest { @InjectMocks private PublisherImpl publisher = new PublisherImpl(); diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/ReindexServiceTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/ReindexServiceTest.java index 4cca1d431c0374d040ab8945f15ca4fb35b57c2c..6e6e52d896ae6712c93b7957b7947fc7c0002ae4 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/ReindexServiceTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/service/ReindexServiceTest.java @@ -15,6 +15,7 @@ package org.opengroup.osdu.indexer.azure.service; +import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Ignore; @@ -23,6 +24,7 @@ import org.junit.runner.RunWith; import org.mockito.ArgumentMatchers; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.MockedStatic; import org.opengroup.osdu.core.common.model.http.DpsHeaders; import org.opengroup.osdu.core.common.model.indexer.RecordQueryResponse; import org.opengroup.osdu.core.common.model.indexer.RecordReindexRequest; @@ -33,24 +35,23 @@ import org.opengroup.osdu.indexer.service.ReindexServiceImpl; import org.opengroup.osdu.indexer.service.StorageService; import org.opengroup.osdu.indexer.util.IndexerQueueTaskBuilder; import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; -import org.powermock.modules.junit4.PowerMockRunner; -import org.powermock.modules.junit4.PowerMockRunnerDelegate; -import org.springframework.test.context.junit4.SpringRunner; +import org.mockito.junit.MockitoJUnitRunner; import java.net.URISyntaxException; import java.util.*; import static org.junit.Assert.fail; +import static org.mockito.Mockito.mockStatic; import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.mockStatic; -import static org.powermock.api.mockito.PowerMockito.when; @Ignore -@RunWith(PowerMockRunner.class) -@PowerMockRunnerDelegate(SpringRunner.class) +@RunWith(MockitoJUnitRunner.class) public class ReindexServiceTest { + private static MockedStatic<UUID> mockedUUIDs; + private final String cursor = "100"; private final String correlationId = UUID.randomUUID().toString(); @@ -79,7 +80,7 @@ public class ReindexServiceTest { public void setup() { initMocks(this); - mockStatic(UUID.class); + mockedUUIDs = mockStatic(UUID.class); recordReindexRequest = RecordReindexRequest.builder().kind("tenant:test:test:1.0.0").cursor(cursor).build(); recordQueryResponse = new RecordQueryResponse(); @@ -92,6 +93,11 @@ public class ReindexServiceTest { when(requestInfo.getHeadersMapWithDwdAuthZ()).thenReturn(httpHeaders); } + @After + public void close() { + mockedUUIDs.close(); + } + @Test public void should_returnNull_givenNullResponseResult_reIndexRecordsTest() { try { diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java index b9abb87b68e61f9c3078e25f4abec6dfde23e042..db860cf1310506baa9a9d146f63fe1108ead600e 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java @@ -15,7 +15,7 @@ import java.util.*; import static junit.framework.TestCase.*; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.when; @RunWith(MockitoJUnitRunner.class) public class RequestInfoImplTest { diff --git a/provider/indexer-gc/cloudbuild/Dockerfile.cloudbuild b/provider/indexer-gc/cloudbuild/Dockerfile.cloudbuild index 3ebc13d397e1af9ee4e2cb1324d904c7017123fe..101e50f3f6618144c5a19017a9c5e08429737c1e 100644 --- a/provider/indexer-gc/cloudbuild/Dockerfile.cloudbuild +++ b/provider/indexer-gc/cloudbuild/Dockerfile.cloudbuild @@ -1,4 +1,4 @@ -FROM azul/zulu-openjdk:8-latest +FROM azul/zulu-openjdk:17 WORKDIR /app @@ -19,4 +19,5 @@ RUN groupadd -g 10001 -r nonroot \ USER 10001:10001 # Run the web service on container startup. -CMD java -Djava.security.egd=indexer:/dev/./urandom -Dserver.port=${PORT} -Dlog4j.formatMsgNoLookups=true -jar /app/indexer-${PROVIDER_NAME}.jar +#--add-opens args used to open modules and allow illegal(reflection\private classes and fields) access from the code. +CMD java --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED -Djava.security.egd=indexer:/dev/./urandom -Dserver.port=${PORT} -Dlog4j.formatMsgNoLookups=true -jar /app/indexer-${PROVIDER_NAME}.jar diff --git a/provider/indexer-gc/docs/anthos/README.md b/provider/indexer-gc/docs/baremetal/README.md similarity index 98% rename from provider/indexer-gc/docs/anthos/README.md rename to provider/indexer-gc/docs/baremetal/README.md index e8755d005d7663280058ff087e742b09a12e415a..270fa50708bab4c0087ea77c4a9a4a338e7abdec 100644 --- a/provider/indexer-gc/docs/anthos/README.md +++ b/provider/indexer-gc/docs/baremetal/README.md @@ -1,5 +1,19 @@ ## Service Configuration for Anthos +## Run args + +In order to run Indexer with Java 17 additional run args must be provided: + +```bash +--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED +``` + +Full command: + +```bash +java -jar indexer.jar --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED +``` + ## Environment variables: Define the following environment variables. diff --git a/provider/indexer-gc/docs/anthos/pics/client.png b/provider/indexer-gc/docs/baremetal/pics/client.png similarity index 100% rename from provider/indexer-gc/docs/anthos/pics/client.png rename to provider/indexer-gc/docs/baremetal/pics/client.png diff --git a/provider/indexer-gc/docs/anthos/pics/indexer.png b/provider/indexer-gc/docs/baremetal/pics/indexer.png similarity index 100% rename from provider/indexer-gc/docs/anthos/pics/indexer.png rename to provider/indexer-gc/docs/baremetal/pics/indexer.png diff --git a/provider/indexer-gc/docs/anthos/pics/rabbit.PNG b/provider/indexer-gc/docs/baremetal/pics/rabbit.PNG similarity index 100% rename from provider/indexer-gc/docs/anthos/pics/rabbit.PNG rename to provider/indexer-gc/docs/baremetal/pics/rabbit.PNG diff --git a/provider/indexer-gc/docs/anthos/pics/sa.png b/provider/indexer-gc/docs/baremetal/pics/sa.png similarity index 100% rename from provider/indexer-gc/docs/anthos/pics/sa.png rename to provider/indexer-gc/docs/baremetal/pics/sa.png diff --git a/provider/indexer-gc/docs/gc/README.md b/provider/indexer-gc/docs/gc/README.md index cac8344500587a8fbcf827ba972527f54f280499..97c9c832c9fc65c2cfce882a0772a00ac5f04c0f 100644 --- a/provider/indexer-gc/docs/gc/README.md +++ b/provider/indexer-gc/docs/gc/README.md @@ -1,5 +1,19 @@ ## Service Configuration for Google Cloud +## Run args + +In order to run Indexer with Java 17 additional run args must be provided: + +```bash +--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED +``` + +Full command: + +```bash +java -jar indexer.jar --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED +``` + ## Environment variables Define the following environment variables. @@ -42,7 +56,7 @@ Usage of spring profiles is preferred. ## Pubsub configuration - + Pubsub should have topics and subscribers with names and configs: diff --git a/provider/indexer-gc/pom.xml b/provider/indexer-gc/pom.xml index 3f448207e76f92f47caaf503a48ed232f00e070d..95c57efbd03ec0966dae22083cd966606438d4a1 100644 --- a/provider/indexer-gc/pom.xml +++ b/provider/indexer-gc/pom.xml @@ -95,20 +95,6 @@ <version>4.12</version> <scope>test</scope> </dependency> - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-api-mockito2</artifactId> - <version>2.0.2</version> - <scope>test</scope> - </dependency> - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-module-junit4</artifactId> - <version>2.0.2</version> - <scope>test</scope> - </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> @@ -120,6 +106,18 @@ <artifactId>cobertura-maven-plugin</artifactId> <version>2.7</version> <scope>test</scope> + <exclusions> + <exclusion> + <groupId>com.sun</groupId> + <artifactId>tools</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>1.18.26</version> + <scope>provided</scope> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> @@ -196,7 +194,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> - <version>2.4.2</version> + <version>3.0.0</version> <configuration> <useSystemClassLoader>false</useSystemClassLoader> <threadCount>1</threadCount> @@ -205,7 +203,7 @@ <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> - <version>0.7.7.201606060606</version> + <version>0.8.10</version> <executions> <execution> <goals> diff --git a/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/CronServiceImplTest.java b/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/CronServiceImplTest.java index 1038c1f9376f8a0a877700394633e0340c2e2018..3c2c82581b1e6b5ac16e9a8fb4ec403f0ffef072 100644 --- a/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/CronServiceImplTest.java +++ b/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/CronServiceImplTest.java @@ -27,7 +27,6 @@ import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; import org.opengroup.osdu.indexer.config.IndexerConfigurationProperties; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -38,7 +37,6 @@ import static org.mockito.Mockito.*; @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class}) public class CronServiceImplTest { @Mock @@ -133,4 +131,4 @@ public class CronServiceImplTest { verify(this.indicesService, times(0)).deleteIndex(any(), any()); } -} \ No newline at end of file +} diff --git a/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java b/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java index 4d77b8d4ce9bf63cdca9c36ec0b5cd77a8c0f304..a7dbfec5d0056577008a596b26341525b91c75f4 100644 --- a/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java +++ b/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/IndexerMappingServiceTest.java @@ -17,8 +17,6 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.opengroup.osdu.core.common.model.indexer.IndexSchema; import org.opengroup.osdu.core.common.model.search.RecordMetaAttribute; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -28,11 +26,12 @@ import java.util.Map; import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; import static org.mockito.Mockito.doReturn; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.when; @Ignore @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class, IndicesClient.class}) public class IndexerMappingServiceTest { private final String kind = "tenant:test:test:1.0.0"; @@ -70,8 +69,8 @@ public class IndexerMappingServiceTest { this.indexSchema = IndexSchema.builder().kind(kind).type(type).dataSchema(dataMapping).metaSchema(metaMapping) .build(); - this.indicesClient = PowerMockito.mock(IndicesClient.class); - this.restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); + this.indicesClient = mock(IndicesClient.class); + this.restHighLevelClient = mock(RestHighLevelClient.class); when(this.restHighLevelClient.getLowLevelClient()).thenReturn(restClient); when(this.restClient.performRequest(ArgumentMatchers.any())).thenReturn(response); @@ -108,7 +107,7 @@ public class IndexerMappingServiceTest { doReturn(this.indicesClient).when(this.restHighLevelClient).indices(); doReturn(mappingResponse).when(this.indicesClient).putMapping(ArgumentMatchers.any(PutMappingRequest.class), ArgumentMatchers.any(RequestOptions.class)); - IndexerMappingServiceImpl indexerMappingServiceLocal = PowerMockito.spy(new IndexerMappingServiceImpl()); + IndexerMappingServiceImpl indexerMappingServiceLocal = spy(new IndexerMappingServiceImpl()); doReturn(false).when(indexerMappingServiceLocal).isTypeExist(ArgumentMatchers.any(), ArgumentMatchers.any(), ArgumentMatchers.any()); String mapping = this.sut.createMapping(this.restHighLevelClient, this.indexSchema, this.index, true); assertEquals(this.mappingValid, mapping); diff --git a/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/ReindexServiceTest.java b/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/ReindexServiceTest.java index aab33b30c1eb11aa41b810022472ac46ba1d2329..9c00144b66f6c31fa5861cd8bb918eaff09bb64e 100644 --- a/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/ReindexServiceTest.java +++ b/provider/indexer-gc/src/test/java/org/opengroup/osdu/indexer/service/ReindexServiceTest.java @@ -14,6 +14,7 @@ package org.opengroup.osdu.indexer.service; +import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Ignore; @@ -21,6 +22,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.MockedStatic; import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.model.http.DpsHeaders; import org.opengroup.osdu.core.common.model.indexer.RecordQueryResponse; @@ -28,22 +30,21 @@ import org.opengroup.osdu.core.common.model.indexer.RecordReindexRequest; import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; import org.opengroup.osdu.indexer.config.IndexerConfigurationProperties; import org.opengroup.osdu.indexer.util.IndexerQueueTaskBuilder; -import org.powermock.modules.junit4.PowerMockRunner; -import org.powermock.modules.junit4.PowerMockRunnerDelegate; -import org.springframework.test.context.junit4.SpringRunner; +import org.mockito.junit.MockitoJUnitRunner; import java.util.*; import static org.junit.Assert.fail; import static org.mockito.Matchers.any; +import static org.mockito.Mockito.mockStatic; +import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.mockStatic; -import static org.powermock.api.mockito.PowerMockito.when; -@RunWith(PowerMockRunner.class) -@PowerMockRunnerDelegate(SpringRunner.class) +@RunWith(MockitoJUnitRunner.class) public class ReindexServiceTest { + private static MockedStatic<UUID> mockedUUIDs; + private final String cursor = "100"; private final String correlationId = UUID.randomUUID().toString(); @@ -70,7 +71,7 @@ public class ReindexServiceTest { public void setup() { initMocks(this); - mockStatic(UUID.class); + mockedUUIDs = mockStatic(UUID.class); recordReindexRequest = RecordReindexRequest.builder().kind("tenant:test:test:1.0.0").cursor(cursor).build(); recordQueryResponse = new RecordQueryResponse(); @@ -84,6 +85,11 @@ public class ReindexServiceTest { when(requestInfo.getHeadersWithDwdAuthZ()).thenReturn(standardHeaders); } + @After + public void close() { + mockedUUIDs.close(); + } + @Test public void should_returnNull_givenNullResponseResult_reIndexRecordsTest() { try { diff --git a/provider/indexer-ibm/pom.xml b/provider/indexer-ibm/pom.xml index d8ef4ca6dd8021b2f34938bcf4fc93df58e21aee..aea2cbe08d5c09cd5ca4d678f92e750df6729e64 100644 --- a/provider/indexer-ibm/pom.xml +++ b/provider/indexer-ibm/pom.xml @@ -186,27 +186,18 @@ <artifactId>junit</artifactId> <scope>test</scope> </dependency> - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-api-mockito2</artifactId> - <version>2.0.2</version> - <scope>test</scope> - </dependency> - - <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 --> - <dependency> - <groupId>org.powermock</groupId> - <artifactId>powermock-module-junit4</artifactId> - <version>2.0.2</version> - <scope>test</scope> - </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>3.12.0</version> <scope>test</scope> </dependency> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>1.18.26</version> + <scope>provided</scope> + </dependency> </dependencies> diff --git a/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/CronServiceImplTest.java b/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/CronServiceImplTest.java index 56fa2033b16112284ff0817a21606484a0397a1c..14cc8acf913ae0b658ccfee491db352f3692b08f 100644 --- a/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/CronServiceImplTest.java +++ b/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/CronServiceImplTest.java @@ -19,7 +19,6 @@ import org.opengroup.osdu.core.common.model.search.IndexInfo; import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; import org.opengroup.osdu.indexer.service.IndicesService; import org.opengroup.osdu.indexer.util.ElasticClientHandler; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -32,7 +31,6 @@ import static org.mockito.Mockito.*; @Ignore @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class}) public class CronServiceImplTest { @Mock @@ -126,4 +124,4 @@ public class CronServiceImplTest { verify(this.indicesService, times(0)).deleteIndex(any(), any()); } -} \ No newline at end of file +} diff --git a/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/IndexerMappingServiceTest.java b/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/IndexerMappingServiceTest.java index 7f1f5a7d587538f3b376e1002224831b20f42871..268e132fc7b8408052ecb83498834f730c33866d 100644 --- a/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/IndexerMappingServiceTest.java +++ b/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/IndexerMappingServiceTest.java @@ -20,8 +20,6 @@ import org.mockito.Mock; import org.opengroup.osdu.core.common.model.indexer.IndexSchema; import org.opengroup.osdu.core.common.model.search.RecordMetaAttribute; import org.opengroup.osdu.indexer.service.IndexerMappingServiceImpl; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PrepareForTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.IOException; @@ -31,11 +29,12 @@ import java.util.Map; import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; import static org.mockito.Mockito.doReturn; -import static org.powermock.api.mockito.PowerMockito.when; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.when; @Ignore @RunWith(SpringRunner.class) -@PrepareForTest({RestHighLevelClient.class, IndicesClient.class}) public class IndexerMappingServiceTest { private final String kind = "tenant:test:test:1.0.0"; @@ -73,8 +72,8 @@ public class IndexerMappingServiceTest { this.indexSchema = IndexSchema.builder().kind(kind).type(type).dataSchema(dataMapping).metaSchema(metaMapping) .build(); - this.indicesClient = PowerMockito.mock(IndicesClient.class); - this.restHighLevelClient = PowerMockito.mock(RestHighLevelClient.class); + this.indicesClient = mock(IndicesClient.class); + this.restHighLevelClient = mock(RestHighLevelClient.class); when(this.restHighLevelClient.getLowLevelClient()).thenReturn(restClient); when(this.restClient.performRequest(ArgumentMatchers.any())).thenReturn(response); @@ -109,7 +108,7 @@ public class IndexerMappingServiceTest { try { doReturn(this.indicesClient).when(this.restHighLevelClient).indices(); doReturn(mappingResponse).when(this.indicesClient).putMapping(ArgumentMatchers.any(PutMappingRequest.class), ArgumentMatchers.any(RequestOptions.class)); - IndexerMappingServiceImpl indexerMappingServiceLocal = PowerMockito.spy(new IndexerMappingServiceImpl()); + IndexerMappingServiceImpl indexerMappingServiceLocal = spy(new IndexerMappingServiceImpl()); doReturn(false).when(indexerMappingServiceLocal).isTypeExist(ArgumentMatchers.any(), ArgumentMatchers.any(), ArgumentMatchers.any()); String mapping = this.sut.createMapping(this.restHighLevelClient, this.indexSchema, this.index, true); assertEquals(this.mappingValid, mapping); @@ -118,4 +117,3 @@ public class IndexerMappingServiceTest { } } } - diff --git a/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/ReindexServiceTest.java b/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/ReindexServiceTest.java index 2067d75f0a8b4ef7bc5c7cb5351d0ef443e09282..1d562afe6e2c2525c8a41e0a3b58f49d89ad0dbf 100644 --- a/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/ReindexServiceTest.java +++ b/provider/indexer-ibm/src/test/java/org/opengroup/osdu/indexer/ibm/service/ReindexServiceTest.java @@ -2,6 +2,7 @@ /* (c) Copyright IBM Corp. 2020. All Rights Reserved.*/ package org.opengroup.osdu.indexer.ibm.service; +import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Ignore; @@ -10,6 +11,7 @@ import org.junit.runner.RunWith; import org.mockito.ArgumentMatchers; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.MockedStatic; import org.opengroup.osdu.core.common.model.http.DpsHeaders; import org.opengroup.osdu.core.common.model.indexer.RecordQueryResponse; import org.opengroup.osdu.core.common.model.indexer.RecordReindexRequest; @@ -19,24 +21,21 @@ import org.opengroup.osdu.indexer.service.ReindexServiceImpl; import org.opengroup.osdu.indexer.service.StorageService; import org.opengroup.osdu.indexer.util.IndexerQueueTaskBuilder; import org.opengroup.osdu.core.common.provider.interfaces.IRequestInfo; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; -import org.powermock.modules.junit4.PowerMockRunnerDelegate; -import org.springframework.test.context.junit4.SpringRunner; +import org.mockito.junit.MockitoJUnitRunner; import java.util.*; import static org.junit.Assert.fail; +import static org.mockito.Mockito.mockStatic; +import static org.mockito.Mockito.when; import static org.mockito.MockitoAnnotations.initMocks; -import static org.powermock.api.mockito.PowerMockito.mockStatic; -import static org.powermock.api.mockito.PowerMockito.when; @Ignore -@RunWith(PowerMockRunner.class) -@PowerMockRunnerDelegate(SpringRunner.class) -@PrepareForTest({IndexerConfigurationProperties.class}) +@RunWith(MockitoJUnitRunner.class) public class ReindexServiceTest { + private static MockedStatic<UUID> mockedUUIDs; + private final String cursor = "100"; private final String correlationId = UUID.randomUUID().toString(); @@ -65,7 +64,7 @@ public class ReindexServiceTest { public void setup() { initMocks(this); - mockStatic(UUID.class); + mockedUUIDs = mockStatic(UUID.class); recordReindexRequest = RecordReindexRequest.builder().kind("tenant:test:test:1.0.0").cursor(cursor).build(); recordQueryResponse = new RecordQueryResponse(); @@ -78,6 +77,11 @@ public class ReindexServiceTest { when(requestInfo.getHeadersMapWithDwdAuthZ()).thenReturn(httpHeaders); } + @After + public void close() { + mockedUUIDs.close(); + } + @Test public void should_returnNull_givenNullResponseResult_reIndexRecordsTest() { try { diff --git a/testing/indexer-test-aws/pom.xml b/testing/indexer-test-aws/pom.xml index c58946aba9e6f2b60c8a603367293f3e892e207c..5d36983ecd524c496858dca2fdb1f9a110acf33a 100644 --- a/testing/indexer-test-aws/pom.xml +++ b/testing/indexer-test-aws/pom.xml @@ -31,11 +31,18 @@ <packaging>jar</packaging> <properties> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <cucumber.version>1.2.5</cucumber.version> <jackson-databind.version>2.13.2.2</jackson-databind.version> <jackson.version>2.13.2</jackson.version> + <argLine> + --add-opens java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + --add-opens java.base/java.lang.reflect=ALL-UNNAMED + --add-opens java.base/java.text=ALL-UNNAMED + --add-opens java.desktop/java.awt.font=ALL-UNNAMED + </argLine> </properties> <dependencies> @@ -58,7 +65,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -115,7 +122,7 @@ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> - <version>1.18.2</version> + <version>1.18.28</version> <scope>provided</scope> </dependency> <dependency> diff --git a/testing/indexer-test-azure/pom.xml b/testing/indexer-test-azure/pom.xml index f4f575ed5c04cc37bf46a952109c0ddb591f92fa..f11b1af1b8671e2aadefb35f454b345656e6ca65 100644 --- a/testing/indexer-test-azure/pom.xml +++ b/testing/indexer-test-azure/pom.xml @@ -31,13 +31,20 @@ <packaging>jar</packaging> <properties> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <cucumber.version>1.2.5</cucumber.version> <junit.jupiter.version>5.6.0</junit.jupiter.version> <elasticsearch.version>7.8.1</elasticsearch.version> <os-core-common.version>0.14.0-rc8</os-core-common.version> <jackson.version>2.13.2</jackson.version> + <argLine> + --add-opens java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + --add-opens java.base/java.lang.reflect=ALL-UNNAMED + --add-opens java.base/java.text=ALL-UNNAMED + --add-opens java.desktop/java.awt.font=ALL-UNNAMED + </argLine> </properties> <dependencies> @@ -104,7 +111,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -157,7 +164,7 @@ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> - <version>1.18.2</version> + <version>1.18.28</version> <scope>provided</scope> </dependency> <dependency> diff --git a/testing/indexer-test-baremetal/pom.xml b/testing/indexer-test-baremetal/pom.xml index 46ca241d0e6e87b342605726f73921c507bae621..3bff4b71d38226bef242969a2b54f9b5ec2768e9 100644 --- a/testing/indexer-test-baremetal/pom.xml +++ b/testing/indexer-test-baremetal/pom.xml @@ -27,9 +27,16 @@ <artifactId>indexer-test-baremetal</artifactId> <properties> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <cucumber.version>1.2.5</cucumber.version> + <argLine> + --add-opens java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + --add-opens java.base/java.lang.reflect=ALL-UNNAMED + --add-opens java.base/java.text=ALL-UNNAMED + --add-opens java.desktop/java.awt.font=ALL-UNNAMED + </argLine> </properties> <dependencies> @@ -46,14 +53,14 @@ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> - <version>1.18.16</version> + <version>1.18.28</version> <scope>provided</scope> </dependency> <!-- Cucumber --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -81,4 +88,4 @@ </dependency> </dependencies> -</project> \ No newline at end of file +</project> diff --git a/testing/indexer-test-core/pom.xml b/testing/indexer-test-core/pom.xml index 56e013eb41f00144b2b91b6f818fa5eb8f3e1c9d..063a6b1fbc7af6e56e33f8fbc2f3121c8479fe9a 100644 --- a/testing/indexer-test-core/pom.xml +++ b/testing/indexer-test-core/pom.xml @@ -14,8 +14,8 @@ <version>0.23.0-SNAPSHOT</version> <properties> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <cucumber.version>1.2.5</cucumber.version> <os-core-common.version>0.14.0-rc8</os-core-common.version> <jackson-databind.version>2.13.2.2</jackson-databind.version> @@ -45,7 +45,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> </dependency> <dependency> <groupId>info.cukes</groupId> @@ -85,7 +85,7 @@ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> - <version>1.18.26</version> + <version>1.18.28</version> <scope>provided</scope> </dependency> diff --git a/testing/indexer-test-gc/pom.xml b/testing/indexer-test-gc/pom.xml index a6680b43457546002c272a2f534e1ccf2ec664c5..97edfa96368a194a42e673305c9e6f63b19015bd 100644 --- a/testing/indexer-test-gc/pom.xml +++ b/testing/indexer-test-gc/pom.xml @@ -16,9 +16,16 @@ <packaging>jar</packaging> <properties> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <cucumber.version>1.2.5</cucumber.version> + <argLine> + --add-opens java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + --add-opens java.base/java.lang.reflect=ALL-UNNAMED + --add-opens java.base/java.text=ALL-UNNAMED + --add-opens java.desktop/java.awt.font=ALL-UNNAMED + </argLine> </properties> <dependencies> @@ -44,7 +51,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -87,7 +94,7 @@ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> - <version>1.18.26</version> + <version>1.18.28</version> <scope>provided</scope> </dependency> diff --git a/testing/indexer-test-ibm/pom.xml b/testing/indexer-test-ibm/pom.xml index 892304b96410c584307afaf28d910829fc89066a..0081512dd517b2bde28de0ddad79e30a7de1197b 100644 --- a/testing/indexer-test-ibm/pom.xml +++ b/testing/indexer-test-ibm/pom.xml @@ -16,10 +16,17 @@ <packaging>jar</packaging> <properties> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>17</maven.compiler.target> + <maven.compiler.source>17</maven.compiler.source> <cucumber.version>1.2.5</cucumber.version> <os-core-lib-ibm.version>0.13.0</os-core-lib-ibm.version> + <argLine> + --add-opens java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + --add-opens java.base/java.lang.reflect=ALL-UNNAMED + --add-opens java.base/java.text=ALL-UNNAMED + --add-opens java.desktop/java.awt.font=ALL-UNNAMED + </argLine> </properties> <dependencies> @@ -57,7 +64,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>4.12</version> + <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> @@ -100,7 +107,7 @@ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> - <version>1.18.2</version> + <version>1.18.28</version> <scope>provided</scope> </dependency>