From d410e10b43cdc631a21a3e04edf3257231ddc92e Mon Sep 17 00:00:00 2001 From: "Aliaksandr Ramanovich (EPAM)" <aliaksandr_ramanovich1@epam.com> Date: Wed, 11 Jan 2023 23:19:13 +0000 Subject: [PATCH] GONRG-5894 - upd gc names --- .fossa.yml | 48 ++++---- .gitlab-ci.yml | 8 +- NOTICE | 8 +- README.md | 4 +- devops/{gcp => gc}/deploy/Chart.yaml | 2 +- devops/{gcp => gc}/deploy/README.md | 4 +- .../deploy/templates/register-deploy.yml | 0 .../templates/register-service-account.yml | 0 .../deploy/templates/register-service.yml | 0 .../deploy/templates/register-variables.yml | 0 .../templates/register-virtual-service.yml | 0 devops/{gcp => gc}/deploy/values.yaml | 0 devops/gc/pipeline/override-stages.yml | 11 ++ devops/gcp/pipeline/override-stages.yml | 9 -- docs/tutorial/ActionService.md | 2 +- pom.xml | 2 +- .../{register-gcp => register-gc}/README.md | 81 +++++++++----- .../cloudbuild/Dockerfile.cloudbuild | 0 .../cloudbuild/cloudbuild.yaml | 29 +++-- .../docs/anthos/README.md | 4 +- .../gcp => register-gc/docs/gc}/README.md | 35 ++++-- .../{register-gcp => register-gc}/pom.xml | 2 +- .../src/main/appengine/app.yaml | 0 .../provider/gcp/RegisterApplication.java | 0 .../provider/gcp/action/OsmActionRepo.java | 0 .../provider/gcp/action/model/ActionDto.java | 0 .../RegisterConfigurationProperties.java | 0 .../provider/gcp/ddms/OsmDdmsRepository.java | 0 .../gcp/encryption/AnthosKmsClient.java | 0 .../gcp/encryption/AnthosKmsProperties.java | 0 .../gcp/encryption/KmsClientConfig.java | 0 .../gcp/logging/AppengineLogFactory.java | 0 .../oqm/OqmConfigurationProperties.java | 0 .../gcp/mappers/osm/OsmTypeMapperImpl.java | 0 .../gcp/security/GSuiteSecurityConfig.java | 0 .../gcp/subscriber/IDatastoreAccess.java | 0 .../gcp/subscriber/OqmOqmSubscription.java | 0 .../gcp/subscriber/OqmSubscriberManager.java | 0 .../provider/gcp/subscriber/OsmAccess.java | 0 .../subscriber/SubscriptionRepository.java | 0 .../gcp/subscriber/model/SubscriptionDto.java | 0 .../gcp/util/GoogleServiceAccountImpl.java | 0 .../gcp/verifier/GsaTokenVerifierImpl.java | 0 .../resources/application-anthos.properties | 0 .../main/resources/application-gcp.properties | 0 .../resources/application-local.properties | 0 .../src/main/resources/application.properties | 0 .../src/main/resources/logback.xml | 0 .../src/main/resources/topics.json | 0 .../subscriber/OqmSubscriberManagerTest.java | 0 .../verifier/GsaTokenVerifierImplTest.java | 0 provider/register-gcp/scripts/deploy.sh | 104 ------------------ .../register-gcp/scripts/private-deploy.sh | 17 --- testing/README.md | 4 +- testing/pom.xml | 2 +- .../pom.xml | 4 +- .../register/action/TestCreateActionApi.java | 0 .../register/action/TestDeleteActionApi.java | 0 .../register/action/TestGetActionByIdApi.java | 0 .../action/TestRetrieveActionApi.java | 0 .../ddms/TestCreateRegistrationApi.java | 0 .../ddms/TestDeleteRegistrationApi.java | 0 .../ddms/TestGetConsumptionByIdApi.java | 0 .../ddms/TestGetRegistrationByIdApi.java | 0 .../register/ddms/TestQueryDdmsByType.java | 0 .../subscriber/TestCreateSubscriberApi.java | 0 .../subscriber/TestDeleteSubscriberApi.java | 0 .../subscriber/TestGetSubscriberByIdApi.java | 0 .../subscriber/TestListTopicsApi.java | 0 .../subscriber/TestQuerySubscriber.java | 0 .../osdu/register/util/GCPTestUtils.java | 0 .../register/util/GoogleServiceAccount.java | 0 .../src/test/resources/logback-test.xml | 0 73 files changed, 149 insertions(+), 231 deletions(-) rename devops/{gcp => gc}/deploy/Chart.yaml (97%) rename devops/{gcp => gc}/deploy/README.md (98%) rename devops/{gcp => gc}/deploy/templates/register-deploy.yml (100%) rename devops/{gcp => gc}/deploy/templates/register-service-account.yml (100%) rename devops/{gcp => gc}/deploy/templates/register-service.yml (100%) rename devops/{gcp => gc}/deploy/templates/register-variables.yml (100%) rename devops/{gcp => gc}/deploy/templates/register-virtual-service.yml (100%) rename devops/{gcp => gc}/deploy/values.yaml (100%) create mode 100644 devops/gc/pipeline/override-stages.yml delete mode 100644 devops/gcp/pipeline/override-stages.yml rename provider/{register-gcp => register-gc}/README.md (77%) rename provider/{register-gcp => register-gc}/cloudbuild/Dockerfile.cloudbuild (100%) rename provider/{register-gcp => register-gc}/cloudbuild/cloudbuild.yaml (51%) rename provider/{register-gcp => register-gc}/docs/anthos/README.md (99%) rename provider/{register-gcp/docs/gcp => register-gc/docs/gc}/README.md (87%) rename provider/{register-gcp => register-gc}/pom.xml (99%) rename provider/{register-gcp => register-gc}/src/main/appengine/app.yaml (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/RegisterApplication.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/action/OsmActionRepo.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/action/model/ActionDto.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/config/RegisterConfigurationProperties.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/ddms/OsmDdmsRepository.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsClient.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsProperties.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/KmsClientConfig.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/logging/AppengineLogFactory.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/oqm/OqmConfigurationProperties.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/osm/OsmTypeMapperImpl.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/security/GSuiteSecurityConfig.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/IDatastoreAccess.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmOqmSubscription.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManager.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OsmAccess.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/SubscriptionRepository.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/model/SubscriptionDto.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java (100%) rename provider/{register-gcp => register-gc}/src/main/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImpl.java (100%) rename provider/{register-gcp => register-gc}/src/main/resources/application-anthos.properties (100%) rename provider/{register-gcp => register-gc}/src/main/resources/application-gcp.properties (100%) rename provider/{register-gcp => register-gc}/src/main/resources/application-local.properties (100%) rename provider/{register-gcp => register-gc}/src/main/resources/application.properties (100%) rename provider/{register-gcp => register-gc}/src/main/resources/logback.xml (100%) rename provider/{register-gcp => register-gc}/src/main/resources/topics.json (100%) rename provider/{register-gcp => register-gc}/src/test/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManagerTest.java (100%) rename provider/{register-gcp => register-gc}/src/test/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImplTest.java (100%) delete mode 100644 provider/register-gcp/scripts/deploy.sh delete mode 100644 provider/register-gcp/scripts/private-deploy.sh rename testing/{register-test-gcp => register-test-gc}/pom.xml (97%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/action/TestCreateActionApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/action/TestDeleteActionApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/action/TestGetActionByIdApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/action/TestRetrieveActionApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/ddms/TestCreateRegistrationApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/ddms/TestDeleteRegistrationApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/ddms/TestGetConsumptionByIdApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/ddms/TestGetRegistrationByIdApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/ddms/TestQueryDdmsByType.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/subscriber/TestCreateSubscriberApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/subscriber/TestDeleteSubscriberApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/subscriber/TestGetSubscriberByIdApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/subscriber/TestListTopicsApi.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/subscriber/TestQuerySubscriber.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/util/GCPTestUtils.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/java/org/opengroup/osdu/register/util/GoogleServiceAccount.java (100%) rename testing/{register-test-gcp => register-test-gc}/src/test/resources/logback-test.xml (100%) diff --git a/.fossa.yml b/.fossa.yml index cc8a5637d..185712f51 100644 --- a/.fossa.yml +++ b/.fossa.yml @@ -8,27 +8,27 @@ cli: project: Register analyze: modules: - - name: os-register - type: mvn - target: pom.xml - path: . - - name: register-core - type: mvn - target: register-core/pom.xml - path: . - - name: register-gcp - type: mvn - target: provider/register-gcp/pom.xml - path: . - - name: register-ibm - type: mvn - target: provider/register-ibm/pom.xml - path: . - - name: register-azure - type: mvn - target: provider/register-azure/pom.xml - path: . - - name: register-aws - type: mvn - target: provider/register-aws/pom.xml - path: . + - name: os-register + type: mvn + target: pom.xml + path: . + - name: register-core + type: mvn + target: register-core/pom.xml + path: . + - name: register-gc + type: mvn + target: provider/register-gc/pom.xml + path: . + - name: register-ibm + type: mvn + target: provider/register-ibm/pom.xml + path: . + - name: register-azure + type: mvn + target: provider/register-azure/pom.xml + path: . + - name: register-aws + type: mvn + target: provider/register-aws/pom.xml + path: . diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8d9495b53..d962809a4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,9 +18,6 @@ variables: AZURE_TEST_SUBDIR: testing/register-test-azure AZURE_SWAGGER_PATH: api/register/v1/swagger-ui/index.html#/ - # FIXME remove when all services are migrated to a single helm - OSDU_GCP_ENABLE_HELM_CONFIG: "false" - include: - project: "osdu/platform/ci-cd-pipelines" file: "standard-setup.yml" @@ -40,17 +37,16 @@ include: - project: "osdu/platform/ci-cd-pipelines" file: "cloud-providers/ibm.yml" - - project: "osdu/platform/ci-cd-pipelines" file: "scanners/gitlab-ultimate.yml" - project: "osdu/platform/ci-cd-pipelines" - file: "cloud-providers/osdu-gcp-global.yml" + file: "cloud-providers/gc-global.yml" - project: "osdu/platform/ci-cd-pipelines" file: "cloud-providers/azure.yml" - - local: "devops/gcp/pipeline/override-stages.yml" + - local: "devops/gc/pipeline/override-stages.yml" # disable the eslint scanner # I think this is being generated from the presence of an HTML file, but there diff --git a/NOTICE b/NOTICE index 89696a31e..de074d685 100644 --- a/NOTICE +++ b/NOTICE @@ -321,8 +321,8 @@ The following software have components provided under the terms of this license: - proto-google-cloud-iamcredentials-v1 (from https://github.com/googleapis/google-cloud-java, https://github.com/googleapis/java-iamcredentials/proto-google-cloud-iamcredentials-v1, https://repo1.maven.org/maven2/com/google/api/grpc/proto-google-cloud-iamcredentials-v1) - proto-google-cloud-logging-v2 (from https://github.com/googleapis/java-logging/proto-google-cloud-logging-v2, https://repo1.maven.org/maven2/com/google/api/grpc/proto-google-cloud-logging-v2) - proto-google-cloud-pubsub-v1 (from https://github.com/googleapis/googleapis, https://github.com/googleapis/java-pubsub/proto-google-cloud-pubsub-v1) -- proto-google-common-protos (from https://github.com/googleapis/api-client-staging, https://github.com/googleapis/googleapis, https://github.com/googleapis/java-iam/proto-google-common-protos) -- proto-google-iam-v1 (from https://github.com/googleapis/googleapis, https://github.com/googleapis/java-iam/proto-google-iam-v1) +- proto-google-common-protos (from https://github.com/googleapis/api-client-staging, https://github.com/googleapis/gapic-generator-java, https://github.com/googleapis/googleapis, https://github.com/googleapis/java-iam/proto-google-common-protos) +- proto-google-iam-v1 (from https://github.com/googleapis/gapic-generator-java, https://github.com/googleapis/googleapis, https://github.com/googleapis/java-iam/proto-google-iam-v1) - resilience4j (from https://github.com/resilience4j/resilience4j, https://resilience4j.readme.io, ttps://resilience4j.readme.io) - spring-security-crypto (from http://spring.io/spring-security, https://spring.io/projects/spring-security, https://spring.io/spring-security) - spring-security-oauth2-client (from http://spring.io/spring-security, https://spring.io/projects/spring-security, https://spring.io/spring-security) @@ -345,7 +345,7 @@ BSD-2-Clause ======================================================================== The following software have components provided under the terms of this license: -- API Common (from https://github.com/googleapis, https://github.com/googleapis/api-common-java) +- API Common (from https://github.com/googleapis, https://github.com/googleapis/api-common-java, https://repo1.maven.org/maven2/com/google/api/api-common) - GAX (Google Api eXtensions) for Java (Core) (from https://repo1.maven.org/maven2/com/google/api/gax) - GAX (Google Api eXtensions) for Java (HTTP JSON) (from https://repo1.maven.org/maven2/com/google/api/gax-httpjson) - GAX (Google Api eXtensions) for Java (gRPC) (from https://repo1.maven.org/maven2/com/google/api/gax-grpc) @@ -363,7 +363,7 @@ BSD-3-Clause ======================================================================== The following software have components provided under the terms of this license: -- API Common (from https://github.com/googleapis, https://github.com/googleapis/api-common-java) +- API Common (from https://github.com/googleapis, https://github.com/googleapis/api-common-java, https://repo1.maven.org/maven2/com/google/api/api-common) - ASM Analysis (from http://asm.ow2.io/) - ASM Commons (from http://asm.ow2.io/, https://repo1.maven.org/maven2/org/ow2/asm/asm-commons) - ASM Core (from http://asm.ow2.io/, http://asm.ow2.org/) diff --git a/README.md b/README.md index 8e1268f6d..238cfcf1b 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ The Register Service is a Maven multi-module project with each cloud implementat ## Google Cloud -Instructions for running the Google Cloud implementation locally can be found [here](./provider/register-gcp/README.md). +Instructions for running the Google Cloud implementation locally can be found [here](./provider/register-gc/README.md). ## Running integration tests See Integration-Testing [Readme](./testing/README.md). @@ -26,4 +26,4 @@ See Integration-Testing [Readme](./testing/README.md). # Updated github url test2 ## AWS -Instructions for running and testing this service can be found [here](./provider/register-aws/README.md) \ No newline at end of file +Instructions for running and testing this service can be found [here](./provider/register-aws/README.md) diff --git a/devops/gcp/deploy/Chart.yaml b/devops/gc/deploy/Chart.yaml similarity index 97% rename from devops/gcp/deploy/Chart.yaml rename to devops/gc/deploy/Chart.yaml index 622503acf..94f074ce5 100644 --- a/devops/gcp/deploy/Chart.yaml +++ b/devops/gc/deploy/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -name: gcp-register-deploy +name: gc-register-deploy description: A Helm chart for Kubernetes # A chart can be either an 'application' or a 'library' chart. diff --git a/devops/gcp/deploy/README.md b/devops/gc/deploy/README.md similarity index 98% rename from devops/gcp/deploy/README.md rename to devops/gc/deploy/README.md index ebc9e8ebf..6fdd7d736 100644 --- a/devops/gcp/deploy/README.md +++ b/devops/gc/deploy/README.md @@ -83,7 +83,7 @@ First you need to set variables in **values.yaml** file using any code editor. S Run this command from within this directory: ```console -helm install gcp-register-deploy . +helm install gc-register-deploy . ``` ## Uninstalling the Chart @@ -91,7 +91,7 @@ helm install gcp-register-deploy . To uninstall the helm deployment: ```console -helm uninstall gcp-register-deploy +helm uninstall gc-register-deploy ``` To delete secrets and PVCs: diff --git a/devops/gcp/deploy/templates/register-deploy.yml b/devops/gc/deploy/templates/register-deploy.yml similarity index 100% rename from devops/gcp/deploy/templates/register-deploy.yml rename to devops/gc/deploy/templates/register-deploy.yml diff --git a/devops/gcp/deploy/templates/register-service-account.yml b/devops/gc/deploy/templates/register-service-account.yml similarity index 100% rename from devops/gcp/deploy/templates/register-service-account.yml rename to devops/gc/deploy/templates/register-service-account.yml diff --git a/devops/gcp/deploy/templates/register-service.yml b/devops/gc/deploy/templates/register-service.yml similarity index 100% rename from devops/gcp/deploy/templates/register-service.yml rename to devops/gc/deploy/templates/register-service.yml diff --git a/devops/gcp/deploy/templates/register-variables.yml b/devops/gc/deploy/templates/register-variables.yml similarity index 100% rename from devops/gcp/deploy/templates/register-variables.yml rename to devops/gc/deploy/templates/register-variables.yml diff --git a/devops/gcp/deploy/templates/register-virtual-service.yml b/devops/gc/deploy/templates/register-virtual-service.yml similarity index 100% rename from devops/gcp/deploy/templates/register-virtual-service.yml rename to devops/gc/deploy/templates/register-virtual-service.yml diff --git a/devops/gcp/deploy/values.yaml b/devops/gc/deploy/values.yaml similarity index 100% rename from devops/gcp/deploy/values.yaml rename to devops/gc/deploy/values.yaml diff --git a/devops/gc/pipeline/override-stages.yml b/devops/gc/pipeline/override-stages.yml new file mode 100644 index 000000000..8348068e8 --- /dev/null +++ b/devops/gc/pipeline/override-stages.yml @@ -0,0 +1,11 @@ +variables: + GC_SERVICE: register + GC_VENDOR: gc + GC_HELM_SETS: "--set data.recordsChangedPubsubEndpoint=$GC_RECORDS_CHANGED_PUBSUB_ENDPOINT" + # FIXME remove when all services are migrated to a single helm + GC_ENABLE_HELM_CONFIG: "false" + +gc-anthos-test: + variables: + CLIENT_TENANT: nonexistenttenant + GC_VENDOR: anthos diff --git a/devops/gcp/pipeline/override-stages.yml b/devops/gcp/pipeline/override-stages.yml deleted file mode 100644 index 3c2f3fa9a..000000000 --- a/devops/gcp/pipeline/override-stages.yml +++ /dev/null @@ -1,9 +0,0 @@ -variables: - OSDU_GCP_SERVICE: register - OSDU_GCP_VENDOR: gcp - OSDU_GCP_HELM_SETS: "--set data.recordsChangedPubsubEndpoint=$OSDU_GCP_RECORDS_CHANGED_PUBSUB_ENDPOINT" - -osdu-gcp-anthos-test: - variables: - CLIENT_TENANT: nonexistenttenant - OSDU_GCP_VENDOR: anthos diff --git a/docs/tutorial/ActionService.md b/docs/tutorial/ActionService.md index 7d4e01688..ec312a73c 100644 --- a/docs/tutorial/ActionService.md +++ b/docs/tutorial/ActionService.md @@ -309,7 +309,7 @@ For deployment available public `/info` endpoint, which provides build and git r ```json { "groupId": "org.opengroup.osdu", - "artifactId": "storage-gcp", + "artifactId": "storage-gc", "version": "0.10.0-SNAPSHOT", "buildTime": "2021-07-09T14:29:51.584Z", "branch": "feature/GONRG-2681_Build_info", diff --git a/pom.xml b/pom.xml index 6b3664fe7..d139a0933 100644 --- a/pom.xml +++ b/pom.xml @@ -196,7 +196,7 @@ <modules> <module>register-core</module> - <module>provider/register-gcp</module> + <module>provider/register-gc</module> <module>provider/register-ibm</module> <module>provider/register-azure</module> <module>provider/register-aws</module> diff --git a/provider/register-gcp/README.md b/provider/register-gc/README.md similarity index 77% rename from provider/register-gcp/README.md rename to provider/register-gc/README.md index 74af06cd6..d7ca79d05 100644 --- a/provider/register-gcp/README.md +++ b/provider/register-gc/README.md @@ -1,10 +1,13 @@ # Register Service -os-register-gcp is a [Spring Boot](https://spring.io/projects/spring-boot) service that hosts CRUD APIs that allows consumers to register a push endpoint that can be triggered when data change events happen within the OSDU R2 ecosystem. + +Register-gc is a [Spring Boot](https://spring.io/projects/spring-boot) service that hosts CRUD APIs that allows consumers to register a push endpoint that can be triggered when data change events happen within the OSDU R2 ecosystem. ## Getting Started + These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system. # Features of implementation + This is a universal solution created using EPAM OSM and OQM mappers technology. It allows you to work with various implementations of data stores and message brokers. @@ -27,47 +30,58 @@ They switch between datasources of different tenants due to the work of a bunch - DestinationResolution – contains a ready-made connection, the mapper uses it to get to data # Settings and Configuration + ## Requirements + ### Mandatory + * Java 8 -* [Maven 3.6.0+](https://maven.apache.org/download.cgi) +- [Maven 3.6.0+](https://maven.apache.org/download.cgi) ### for Google Cloud only + * GCloud command line tool -* GCloud access to opendes project +- GCloud access to opendes project ## General Tips + **Environment Variable Management** The following tools make environment variable configuration simpler - - [direnv](https://direnv.net/) - for a shell/terminal environment - - [EnvFile](https://plugins.jetbrains.com/plugin/7861-envfile) - for [Intellij IDEA](https://www.jetbrains.com/idea/) +- [direnv](https://direnv.net/) - for a shell/terminal environment +- [EnvFile](https://plugins.jetbrains.com/plugin/7861-envfile) - for [Intellij IDEA](https://www.jetbrains.com/idea/) **Lombok** This project uses [Lombok](https://projectlombok.org/) for code generation. You may need to configure your IDE to take advantage of this tool. - - [Intellij configuration](https://projectlombok.org/setup/intellij) - - [VSCode configuration](https://projectlombok.org/setup/vscode) + +- [Intellij configuration](https://projectlombok.org/setup/intellij) +- [VSCode configuration](https://projectlombok.org/setup/vscode) ## Mapper tuning mechanisms This service uses specific implementations of DestinationResolvers based on the tenant information provided by the OSDU Partition service. A total of 4 resolvers are implemented, which are divided into two groups: -### for universal technologies: + +### for universal technologies + - for Postgres: mappers/osm/PgTenantOsmDestinationResolver.java - for RabbitMQ: mappers/oqm/MqTenantOqmDestinationResolver.java -#### Their algorithms are as follows: +#### Their algorithms are as follows + - incoming Destination carries data-partition-id - resolver accesses the Partition service and gets PartitionInfo - from PartitionInfo resolver retrieves properties for the connection: URL, username, password etc. - resolver creates a data source, connects to the resource, remembers the datasource - resolver gives the datasource to the mapper in the Resolution object -### for native Google Cloud technologies: +### for native Google Cloud technologies + - for Datastore: mappers/osm/DsTenantOsmDestinationResolver.java - for PubSub: mappers/oqm/PsTenantOqmDestinationResolver.java -#### Their algorithms are similar, +#### Their algorithms are similar + Except that they do not receive special properties from the Partition service for connection, because the location of the resources is unambiguously known - they are in the Google Cloud project. And credentials are also not needed - access to data is made on behalf of the Google Identity SA under which the service itself is launched. Therefore, resolver takes only the value of the **projectId** property from PartitionInfo and uses it to connect to a resource in the corresponding Google Cloud project. # Configuration @@ -77,14 +91,20 @@ Except that they do not receive special properties from the Partition service fo Define the following environment variables. Most of them are common to all hosting environments, but there are properties that are only necessary when running in Google Cloud. -### Anthos Service Configuration: -[Anthos service configuration ](docs/anthos/README.md) -### Google Cloud Service Configuration: -[Google Cloud service configuration ](docs/gcp/README.md) +### Anthos Service Configuration + +[Anthos service configuration](docs/anthos/README.md) + +### Google Cloud Service Configuration + +[Google Cloud service configuration](docs/gc/README.md) # Run and test the service + ## Running Locally + Check that maven is installed: + ```bash $ mvn --version Apache Maven 3.6.0 @@ -112,24 +132,25 @@ $ cat ~/.m2/settings.xml </settings> ``` -* Update the Google cloud SDK to the latest version: +- Update the Google cloud SDK to the latest version: ```bash gcloud components update ``` + * Set Google Project Id: ```bash gcloud config set project <YOUR-PROJECT-ID> ``` -* Perform a basic authentication in the selected project: +- Perform a basic authentication in the selected project: ```bash gcloud auth application-default login ``` -* Navigate to register service's root folder and run: +- Navigate to register service's root folder and run: ```bash mvn jetty:run @@ -141,9 +162,9 @@ mvn jetty:run mvn clean install ``` -* If you wish to see the coverage report then go to testing/target/site/jacoco-aggregate and open index.html +- If you wish to see the coverage report then go to testing/target/site/jacoco-aggregate and open index.html -* If you wish to build the project without running tests +- If you wish to build the project without running tests ```bash mvn clean install -DskipTests @@ -152,26 +173,30 @@ mvn clean install -DskipTests After configuring your environment as specified above, you can follow these steps to build and run the application. These steps should be invoked from the *repository root.* ```bash -cd provider/register-gcp/ && mvn spring-boot:run -Dspring-boot.run.profiles=local +cd provider/register-gc/ && mvn spring-boot:run -Dspring-boot.run.profiles=local ``` ## Testing -#### Anthos: +#### Anthos + [Anthos Testing](docs/anthos/README.md) -#### Google Cloud: -[Google Cloud Testing](docs/gcp/README.md) + +#### Google Cloud + +[Google Cloud Testing](docs/gc/README.md) ## Deployment Register Service is compatible with Cloud Run. -* To deploy into Cloud run, please, use this documentation: - https://cloud.google.com/run/docs/quickstarts/build-and-deploy -* To deploy into GKE, please, use this documentation: - https://cloud.google.com/cloud-build/docs/deploying-builds/deploy-gke +- To deploy into Cloud run, please, use this documentation: + <https://cloud.google.com/run/docs/quickstarts/build-and-deploy> +- To deploy into GKE, please, use this documentation: + <https://cloud.google.com/cloud-build/docs/deploying-builds/deploy-gke> ## License + Copyright © Google LLC Copyright © EPAM Systems diff --git a/provider/register-gcp/cloudbuild/Dockerfile.cloudbuild b/provider/register-gc/cloudbuild/Dockerfile.cloudbuild similarity index 100% rename from provider/register-gcp/cloudbuild/Dockerfile.cloudbuild rename to provider/register-gc/cloudbuild/Dockerfile.cloudbuild diff --git a/provider/register-gcp/cloudbuild/cloudbuild.yaml b/provider/register-gc/cloudbuild/cloudbuild.yaml similarity index 51% rename from provider/register-gcp/cloudbuild/cloudbuild.yaml rename to provider/register-gc/cloudbuild/cloudbuild.yaml index 1573c3826..61563cdfa 100644 --- a/provider/register-gcp/cloudbuild/cloudbuild.yaml +++ b/provider/register-gc/cloudbuild/cloudbuild.yaml @@ -15,17 +15,22 @@ # limitations under the License. steps: - - name: 'gcr.io/cloud-builders/docker' - args: [ - 'build', - '--build-arg', 'PROVIDER_NAME=${_PROVIDER_NAME}', - '--build-arg', 'PORT=${_PORT}', - '-t', 'gcr.io/$PROJECT_ID/${_APPLICATION_NAME}/${_GCP_SERVICE}-${_PROVIDER_NAME}:${_SHORT_SHA}', - '-t', 'gcr.io/$PROJECT_ID/${_APPLICATION_NAME}/${_GCP_SERVICE}-${_PROVIDER_NAME}:latest', - '-f', 'provider/${_GCP_SERVICE}-${_PROVIDER_NAME}/cloudbuild/Dockerfile.cloudbuild', - '.' - ] + - name: "gcr.io/cloud-builders/docker" + args: + [ + "build", + "--build-arg", + "PROVIDER_NAME=${_PROVIDER_NAME}", + "--build-arg", + "PORT=${_PORT}", + "-t", + "gcr.io/$PROJECT_ID/${_APPLICATION_NAME}/${_GC_SERVICE}-${_PROVIDER_NAME}:${_SHORT_SHA}", + "-t", + "gcr.io/$PROJECT_ID/${_APPLICATION_NAME}/${_GC_SERVICE}-${_PROVIDER_NAME}:latest", + "-f", + "provider/${_GC_SERVICE}-${_PROVIDER_NAME}/cloudbuild/Dockerfile.cloudbuild", + ".", + ] images: - - 'gcr.io/$PROJECT_ID/${_APPLICATION_NAME}/${_GCP_SERVICE}-${_PROVIDER_NAME}' - + - "gcr.io/$PROJECT_ID/${_APPLICATION_NAME}/${_GC_SERVICE}-${_PROVIDER_NAME}" diff --git a/provider/register-gcp/docs/anthos/README.md b/provider/register-gc/docs/anthos/README.md similarity index 99% rename from provider/register-gcp/docs/anthos/README.md rename to provider/register-gc/docs/anthos/README.md index 43b43948d..34341ec00 100644 --- a/provider/register-gcp/docs/anthos/README.md +++ b/provider/register-gc/docs/anthos/README.md @@ -30,7 +30,7 @@ Defined in default application property file but possible to override: | `ENVIRONMENT` | ex `dev` | Service environment config | no | - | | `PARTITION_API` | ex `http://partition/api/partition/v1` | Partition service endpoint | no | - | -These variables define service behavior, and are used to switch between `anthos` or `gcp` environments, their overriding +These variables define service behavior, and are used to switch between `Reference` or `Google Cloud` environments, their overriding and usage in mixed mode was not tested. Usage of spring profiles is preferred. | name | value | description | sensitive? | source | @@ -315,7 +315,7 @@ If necessary, the name of the topic can be overridden through: A topic is created, in its absence, when any of Register or Notification services starts. -See in Notification service repository in the `provider/notification-gcp/README.md` file for information +See in Notification service repository in the `provider/notification-gc/README.md` file for information on how the Notification service at its start restores its Subscribers to all already registered Subscriptions, and also how it listens to the "command" topic and adds its Subscribers upon registration of new Subscriptions by the Register Service. diff --git a/provider/register-gcp/docs/gcp/README.md b/provider/register-gc/docs/gc/README.md similarity index 87% rename from provider/register-gcp/docs/gcp/README.md rename to provider/register-gc/docs/gc/README.md index 020a22700..0e364bc89 100644 --- a/provider/register-gcp/docs/gcp/README.md +++ b/provider/register-gc/docs/gc/README.md @@ -1,6 +1,6 @@ ## Service Configuration for Google Cloud -## Environment variables: +## Environment variables Define the following environment variables. @@ -8,6 +8,10 @@ Must have: | name | value | description | sensitive? | source | | --- | --- | --- | --- | --- | +<<<<<<< HEAD:provider/register-gcp/docs/gcp/README.md +======= +| `GOOGLE_AUDIENCES` | ex `*****.apps.googleusercontent.com` | Client ID for getting access to cloud resources | yes | <https://console.cloud.google.com/apis/credentials> | +>>>>>>> 71f1ee9 (GONRG-5894 - upd gc names):provider/register-gc/docs/gc/README.md | `GOOGLE_CLOUD_PROJECT` | ex `project-id` | Google Cloud Project Id | no | - | | `SPRING_PROFILES_ACTIVE` | ex `gcp` | Spring profile that activate default configuration for Google Cloud environment | false | - | | `SUBSCRIBER_PRIVATE_KEY_ID` | `********` | Private key id of DE_OPS_TESTER from notification int tests, required only for integration test| yes | output of infrastructure deployment | @@ -24,9 +28,9 @@ Defined in default application property file but possible to override: | `SUBSCRIBER_SECRET` | ex`7a786376626e` | HMAC_SECRET from notification int tests in HEX , pattern(^[a-zA-Z0-9]{8,30}+$) | yes | output of infrastructure deployment | | `ENVIRONMENT` | ex `dev` | Service environment config | no | - | | `PARTITION_API` | ex `http://partition/api/partition/v1` | Partition service endpoint | no | - | -| `SERVICE_IDENTITY`| ex `osdu-gcp-sa` | Service account identity "**osdu-gcp-sa**@iam.gserviceaccount.com" | yes | https://console.cloud.google.com/apis/credentials | +| `SERVICE_IDENTITY`| ex `osdu-gcp-sa` | Service account identity "**osdu-gcp-sa**@iam.gserviceaccount.com" | yes | <https://console.cloud.google.com/apis/credentials> | -These variables define service behavior, and are used to switch between `anthos` or `gcp` environments, their overriding +These variables define service behavior, and are used to switch between `Reference` or `Google Cloud` environments, their overriding and usage in mixed mode was not tested. Usage of spring profiles is preferred. | name | value | description | sensitive? | source | @@ -38,6 +42,7 @@ and usage in mixed mode was not tested. Usage of spring profiles is preferred. | `KMSCLIENT` | `gcp-kms`| Kms client mode that defines which encryption mechanism will be used. In case of `gcp-kms` Cloud KMS is used | no | - | ## Testing + Navigate to register service's root folder and run all the tests: ```bash @@ -51,19 +56,23 @@ After the service has started it should be accessible via a web browser by visit ### Running E2E Tests -This section describes how to run cloud OSDU E2E tests (testing/register-test-gcp). +This section describes how to run cloud OSDU E2E tests (testing/register-test-gc). You will need to have the following environment variables defined. | name | value | description | sensitive? | source | | --- | --- | --- | --- | --- | -| `DE_OPS_TESTER` | `********` | A base64 encoded google service account json credentials with _ops_ level authorization for OSDU services | yes | https://console.cloud.google.com/iam-admin/serviceaccounts | -| `DE_ADMIN_TESTER` | `********` | A base64 encoded google service account json credentials with _admin_ level authorization for OSDU services | yes | https://console.cloud.google.com/iam-admin/serviceaccounts | -| `DE_EDITOR_TESTER` | `********` | A base64 encoded google service account json credentials with _editor_ level authorization for OSDU services | yes | https://console.cloud.google.com/iam-admin/serviceaccounts | -| `DE_NO_ACCESS_TESTER` | `********` | A base64 encoded google service account json credentials with no authorization for OSDU services | yes | https://console.cloud.google.com/iam-admin/serviceaccounts | +| `DE_OPS_TESTER` | `********` | A base64 encoded google service account json credentials with _ops_ level authorization for OSDU services | yes | <https://console.cloud.google.com/iam-admin/serviceaccounts> | +| `DE_ADMIN_TESTER` | `********` | A base64 encoded google service account json credentials with _admin_ level authorization for OSDU services | yes | <https://console.cloud.google.com/iam-admin/serviceaccounts> | +| `DE_EDITOR_TESTER` | `********` | A base64 encoded google service account json credentials with _editor_ level authorization for OSDU services | yes | <https://console.cloud.google.com/iam-admin/serviceaccounts> | +| `DE_NO_ACCESS_TESTER` | `********` | A base64 encoded google service account json credentials with no authorization for OSDU services | yes | <https://console.cloud.google.com/iam-admin/serviceaccounts> | | `REGISTER_BASE_URL` | ex `https://os-register-dot-opendes.appspot.com/` | Register API endpoint | no | output of infrastructure deployment | | `ENVIRONMENT` | ex `local` OR `dev` | 'local' for local testing or 'dev' for dev testing | no | - | | `SUBSCRIBER_SECRET` | ex `********` | String in hex , must match pattern ^[a-zA-Z0-9]{8,30}+$ & be in register variable SUBSCRIBER_SECRET | yes | - | +<<<<<<< HEAD:provider/register-gcp/docs/gcp/README.md +======= +| `INTEGRATION_TEST_AUDIENCES` | ex `*****.apps.googleusercontent.com` | Client ID for getting access to cloud resources | yes | <https://console.cloud.google.com/apis/credentials> | +>>>>>>> 71f1ee9 (GONRG-5894 - upd gc names):provider/register-gc/docs/gc/README.md | `SUBSCRIBER_PRIVATE_KEY_ID` | `********` | Private key id of DE_OPS_TESTER from notification int tests, required only for integration test| yes | output of infrastructure deployment | | `CLIENT_TENANT` | ex `nonexistenttenant` | Client tenant, it is supposed to be tenant that we do not have access to, it can be not existing tenant| no | - | | `OSDU_TENANT` | ex `osdu` | Osdu tenant | no | - | @@ -82,7 +91,7 @@ Execute following command to build code and run all the integration tests: # Note: this assumes that the environment variables for integration tests as outlined # above are already exported in your environment. $ (cd testing/register-test-core/ && mvn clean test) -$ (cd testing/register-test-gcp/ && mvn clean test) +$ (cd testing/register-test-gc/ && mvn clean test) ``` ## Datastore configuration @@ -110,11 +119,12 @@ It can be overridden by: - through the Spring Boot property `oqm.register-subscriber-control-topic-name` - environment variable `OQM_REGISTER_SUBSCRIBER_CONTROL_TOPIC_NAME` -See in Notification service repository in the `provider/notification-gcp/README.md` file for information +See in Notification service repository in the `provider/notification-gc/README.md` file for information on how the Notification service at its start restores its Subscribers to all already registered Subscriptions, and also how it listens to the "command" topic and adds its Subscribers upon registration of new Subscriptions by the Registerservice. ## Google cloud service account configuration + TBD | Required roles | @@ -133,8 +143,8 @@ Create king ring and key in the ***master project*** export CRYPTOKEY_NAME="registerService" gcloud kms keyrings create $KEYRING_NAME --location global gcloud kms keys create $CRYPTOKEY_NAME --location global \ - --keyring $KEYRING_NAME \ - --purpose encryption + --keyring $KEYRING_NAME \ + --purpose encryption ``` Add **Cloud KMS CryptoKey Encrypter/Decrypter** role to the **App Engine default service account** of the ***master project*** through IAM - Role tab @@ -142,6 +152,7 @@ Add **Cloud KMS CryptoKey Encrypter/Decrypter** role to the **App Engine default Add **Cloud KMS Encrypt/Decrypt** role to the **App Engine default service account** of ***master project*** ## License + Copyright © Google LLC Copyright © EPAM Systems diff --git a/provider/register-gcp/pom.xml b/provider/register-gc/pom.xml similarity index 99% rename from provider/register-gcp/pom.xml rename to provider/register-gc/pom.xml index acc519a2a..c039cedf2 100644 --- a/provider/register-gcp/pom.xml +++ b/provider/register-gc/pom.xml @@ -17,7 +17,7 @@ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> - <artifactId>register-gcp</artifactId> + <artifactId>register-gc</artifactId> <version>0.19.0-SNAPSHOT</version> <description>Register service</description> diff --git a/provider/register-gcp/src/main/appengine/app.yaml b/provider/register-gc/src/main/appengine/app.yaml similarity index 100% rename from provider/register-gcp/src/main/appengine/app.yaml rename to provider/register-gc/src/main/appengine/app.yaml diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/RegisterApplication.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/RegisterApplication.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/RegisterApplication.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/RegisterApplication.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/action/OsmActionRepo.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/action/OsmActionRepo.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/action/OsmActionRepo.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/action/OsmActionRepo.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/action/model/ActionDto.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/action/model/ActionDto.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/action/model/ActionDto.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/action/model/ActionDto.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/config/RegisterConfigurationProperties.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/config/RegisterConfigurationProperties.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/config/RegisterConfigurationProperties.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/config/RegisterConfigurationProperties.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/ddms/OsmDdmsRepository.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/ddms/OsmDdmsRepository.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/ddms/OsmDdmsRepository.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/ddms/OsmDdmsRepository.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsClient.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsClient.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsClient.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsClient.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsProperties.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsProperties.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsProperties.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/AnthosKmsProperties.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/KmsClientConfig.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/KmsClientConfig.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/KmsClientConfig.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/encryption/KmsClientConfig.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/logging/AppengineLogFactory.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/logging/AppengineLogFactory.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/logging/AppengineLogFactory.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/logging/AppengineLogFactory.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/oqm/OqmConfigurationProperties.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/oqm/OqmConfigurationProperties.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/oqm/OqmConfigurationProperties.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/oqm/OqmConfigurationProperties.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/osm/OsmTypeMapperImpl.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/osm/OsmTypeMapperImpl.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/osm/OsmTypeMapperImpl.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/mappers/osm/OsmTypeMapperImpl.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/security/GSuiteSecurityConfig.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/security/GSuiteSecurityConfig.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/security/GSuiteSecurityConfig.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/security/GSuiteSecurityConfig.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/IDatastoreAccess.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/IDatastoreAccess.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/IDatastoreAccess.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/IDatastoreAccess.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmOqmSubscription.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmOqmSubscription.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmOqmSubscription.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmOqmSubscription.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManager.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManager.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManager.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManager.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OsmAccess.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OsmAccess.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OsmAccess.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/OsmAccess.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/SubscriptionRepository.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/SubscriptionRepository.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/SubscriptionRepository.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/SubscriptionRepository.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/model/SubscriptionDto.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/model/SubscriptionDto.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/model/SubscriptionDto.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/model/SubscriptionDto.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImpl.java b/provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImpl.java similarity index 100% rename from provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImpl.java rename to provider/register-gc/src/main/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImpl.java diff --git a/provider/register-gcp/src/main/resources/application-anthos.properties b/provider/register-gc/src/main/resources/application-anthos.properties similarity index 100% rename from provider/register-gcp/src/main/resources/application-anthos.properties rename to provider/register-gc/src/main/resources/application-anthos.properties diff --git a/provider/register-gcp/src/main/resources/application-gcp.properties b/provider/register-gc/src/main/resources/application-gcp.properties similarity index 100% rename from provider/register-gcp/src/main/resources/application-gcp.properties rename to provider/register-gc/src/main/resources/application-gcp.properties diff --git a/provider/register-gcp/src/main/resources/application-local.properties b/provider/register-gc/src/main/resources/application-local.properties similarity index 100% rename from provider/register-gcp/src/main/resources/application-local.properties rename to provider/register-gc/src/main/resources/application-local.properties diff --git a/provider/register-gcp/src/main/resources/application.properties b/provider/register-gc/src/main/resources/application.properties similarity index 100% rename from provider/register-gcp/src/main/resources/application.properties rename to provider/register-gc/src/main/resources/application.properties diff --git a/provider/register-gcp/src/main/resources/logback.xml b/provider/register-gc/src/main/resources/logback.xml similarity index 100% rename from provider/register-gcp/src/main/resources/logback.xml rename to provider/register-gc/src/main/resources/logback.xml diff --git a/provider/register-gcp/src/main/resources/topics.json b/provider/register-gc/src/main/resources/topics.json similarity index 100% rename from provider/register-gcp/src/main/resources/topics.json rename to provider/register-gc/src/main/resources/topics.json diff --git a/provider/register-gcp/src/test/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManagerTest.java b/provider/register-gc/src/test/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManagerTest.java similarity index 100% rename from provider/register-gcp/src/test/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManagerTest.java rename to provider/register-gc/src/test/java/org/opengroup/osdu/register/provider/gcp/subscriber/OqmSubscriberManagerTest.java diff --git a/provider/register-gcp/src/test/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImplTest.java b/provider/register-gc/src/test/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImplTest.java similarity index 100% rename from provider/register-gcp/src/test/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImplTest.java rename to provider/register-gc/src/test/java/org/opengroup/osdu/register/provider/gcp/verifier/GsaTokenVerifierImplTest.java diff --git a/provider/register-gcp/scripts/deploy.sh b/provider/register-gcp/scripts/deploy.sh deleted file mode 100644 index b3a38e810..000000000 --- a/provider/register-gcp/scripts/deploy.sh +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/bash - -# Exit as soon as a command fails -set -e - -{{$definitionName := getenv "BUILD_DEFINITIONNAME" -}} -{{$sourceBranchName := getenv "BUILD_SOURCEBRANCHNAME" -}} -{{$buildNumber := getenv "BUILD_BUILDNUMBER" -}} - -SUBSCRIBER_SECRET=$1 -SUBSCRIBER_PRIVATE_KEY_ID=$2 - -if [ -z "$SUBSCRIBER_SECRET" ] -then - echo "SUBSCRIBER_SECRET can not be empty" - exit 1 -fi - -BUILD_DEFINITIONNAME={{$definitionName}} -BUILD_SOURCEBRANCHNAME={{$sourceBranchName}} -BUILD_BUILDNUMBER={{$buildNumber}} -SCRIPT_DIR=$(dirname $0) - -echo "This script will deploy the app to $GCLOUD_PROJECT" - -if [ "$GCLOUD_PROJECT" = "" ] -then - export GCLOUD_PROJECT=$(gcloud config get-value project) -fi - -echo " Environment = $ENVIRONMENT" -echo " Project = $GCLOUD_PROJECT" -echo " Build definition = $BUILD_DEFINITIONNAME" -echo " Source branch = $BUILD_SOURCEBRANCHNAME" -echo " Build number = $BUILD_BUILDNUMBER" -echo " Directory = $SCRIPT_DIR" - -echo "Print Directory contents" -ls $SCRIPT_DIR - -VERSION_NUMBER=$BUILD_BUILDNUMBER -VERSION_NUMBER=$(echo "$VERSION_NUMBER" | tr _ - | tr '[:upper:]' '[:lower:]') -## UGLY.. removes '.' from string. -VERSION_NUMBER=${VERSION_NUMBER//.} -SERVICE_NAME="os-register" - -count=$(gcloud app services list --project $GCLOUD_PROJECT | grep $SERVICE_NAME | wc -l) -if [ $count -gt 0 ]; then - CURRENT_VERSION=$(gcloud app services describe $SERVICE_NAME --project $GCLOUD_PROJECT --format=json | jq --raw-output '.split.allocations | keys[0]') -else - CURRENT_VERSION="" -fi -echo "Current version = $CURRENT_VERSION" -echo "Version to be deployed = $VERSION_NUMBER" - -if [ "$VERSION_NUMBER" != "$CURRENT_VERSION" -o "$BUILD_FORCE_DEPLOY" = "true" -o "$BUILD_FORCE_DEPLOY" = "True" -o "$BUILD_FORCE_DEPLOY" = "TRUE" ] -then - if [ "$BUILD_SOURCEBRANCHNAME" = "master" -o "$BUILD_FORCE_DEPLOY" = "true" -o "$BUILD_FORCE_DEPLOY" = "True" -o "$BUILD_FORCE_DEPLOY" = "TRUE" ] - then - APPYAML=app.yaml - - echo "apply sed on app yaml" - sed -i -e "s|GOOGLE-AUDIENCES|$GOOGLE_AUDIENCES|g" $APPYAML - sed -i -e "s|SUBSCRIBER-SECRET|$SUBSCRIBER_SECRET|g" $APPYAML - sed -i -e "s|SUBSCRIBER-PRIVATE-KEY-ID|$SUBSCRIBER_PRIVATE_KEY_ID|g" $APPYAML - - echo "print app yaml after sed" - cat $APPYAML - - # If the version $VERSION_NUMBER already exists, but not serving traffic, gcloud app deploy will fail. In this case, simply start that version and migrate traffic to it - doesVersionExist=`gcloud app versions list --service=$SERVICE_NAME --project=$GCLOUD_PROJECT | grep $VERSION_NUMBER | wc -l` - if [ "$doesVersionExist" -eq "1" ] - then - echo "Starting version $VERSION_NUMBER" - gcloud app versions start $VERSION_NUMBER --service=$SERVICE_NAME --project=$GCLOUD_PROJECT --quiet - echo "Migrating all traffic to version $VERSION_NUMBER" - gcloud app services set-traffic $SERVICE_NAME --splits $VERSION_NUMBER=1 --project=$GCLOUD_PROJECT --quiet - else - echo "Deploying service to Google project $GCLOUD_PROJECT" - gcloud app deploy --quiet --version=$VERSION_NUMBER --project=$GCLOUD_PROJECT $APPYAML --log-http --verbosity=debug - echo "Service deployed successfully" - - fi - else - echo "Not deploying the application because build source branch was not master" - fi -else - echo "Not deploying the application because $VERSION_NUMBER is already deployed and force deploy flag is not set to true" -fi - -# disable exit on error -set +e -echo "Creating service account identity to used by service" -result=$(gcloud beta iam service-accounts create de-notification-service --project $GCLOUD_PROJECT --description "Service account used on push notifications sent from the Data Ecosystem" --display-name "DE notification-service account" 2>&1) - -echo $result - -if echo $result | grep -q -e "Service account de-notification-service already exists" -e "Created service account \[de-notification-service\]"; then - echo "Successfully created or service account already exists." - gcloud projects add-iam-policy-binding "$GCLOUD_PROJECT" --member "serviceAccount:de-notification-service@$GCLOUD_PROJECT.iam.gserviceaccount.com" --role roles/iam.serviceAccountUser -else - echo "Unexpected error creating service account." - exit 2 -fi \ No newline at end of file diff --git a/provider/register-gcp/scripts/private-deploy.sh b/provider/register-gcp/scripts/private-deploy.sh deleted file mode 100644 index 384b32348..000000000 --- a/provider/register-gcp/scripts/private-deploy.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash - -# Exit as soon as a command fails -set -e - -# Deploy register to a private project if an env variable with name 'PRIVATE_DEPLOY_PROJECT' -if [ "$PRIVATE_DEPLOY_PROJECT" = "" ] -then - echo "No private deployment project specified, continuing to the next step in build" -else - echo "Deploying Register to Google project $PRIVATE_DEPLOY_PROJECT" - export GCLOUD_PROJECT=$PRIVATE_DEPLOY_PROJECT - export BUILD_FORCE_DEPLOY=true - echo "##vso[build.addbuildtag]Private Deploy - $PRIVATE_DEPLOY_PROJECT" - ./deploy.sh - echo "Register service deployed successfully" -fi \ No newline at end of file diff --git a/testing/README.md b/testing/README.md index dcce633b1..e2669eb9c 100644 --- a/testing/README.md +++ b/testing/README.md @@ -14,7 +14,7 @@ limitations under the License. # Register service integration tests -Register integration tests are refactored so that the business logic for integration tests resides in the `register-test-core` module and provider specific logic and execution steps reside in provider module (e.g. `register-test-gcp`). To run the integration tests, the core module is built first and then the provider module is executed. Please read further to know more details. +Register integration tests are refactored so that the business logic for integration tests resides in the `register-test-core` module and provider specific logic and execution steps reside in provider module (e.g. `register-test-gc`). To run the integration tests, the core module is built first and then the provider module is executed. Please read further to know more details. ### Dependencies needed to run the integration tests * JDK8 @@ -30,7 +30,7 @@ Register integration tests are refactored so that the business logic for integra ENVIRONMENT ('local' for local testing or 'dev' for dev testing) SUBSCRIBER_SECRET (sensitive secret to run HMAC tests) REGISTER_BASE_URL (register service endpoint) - *Only for gcp INTEGRATION_TEST_AUDIENCE (oauth client ID) + *Only for Google Cloud INTEGRATION_TEST_AUDIENCE (oauth client ID) ``` diff --git a/testing/pom.xml b/testing/pom.xml index 2b1611432..0de8972a9 100644 --- a/testing/pom.xml +++ b/testing/pom.xml @@ -37,7 +37,7 @@ <module>register-test-core</module> <module>register-test-azure</module> <module>register-test-ibm</module> - <module>register-test-gcp</module> + <module>register-test-gc</module> <module>register-test-anthos</module> <module>register-test-aws</module> </modules> diff --git a/testing/register-test-gcp/pom.xml b/testing/register-test-gc/pom.xml similarity index 97% rename from testing/register-test-gcp/pom.xml rename to testing/register-test-gc/pom.xml index 04797aecb..96f50c671 100644 --- a/testing/register-test-gcp/pom.xml +++ b/testing/register-test-gc/pom.xml @@ -25,11 +25,11 @@ <relativePath>../pom.xml</relativePath> </parent> - <artifactId>register-test-gcp</artifactId> + <artifactId>register-test-gc</artifactId> <version>0.19.0-SNAPSHOT</version> <packaging>jar</packaging> - <description>Register service GCP integration tests</description> + <description>Register service Google Cloud integration tests</description> <properties> <maven.compiler.target>1.8</maven.compiler.target> diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestCreateActionApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestCreateActionApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestCreateActionApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestCreateActionApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestDeleteActionApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestDeleteActionApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestDeleteActionApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestDeleteActionApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestGetActionByIdApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestGetActionByIdApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestGetActionByIdApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestGetActionByIdApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestRetrieveActionApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestRetrieveActionApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/action/TestRetrieveActionApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/action/TestRetrieveActionApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestCreateRegistrationApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestCreateRegistrationApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestCreateRegistrationApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestCreateRegistrationApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestDeleteRegistrationApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestDeleteRegistrationApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestDeleteRegistrationApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestDeleteRegistrationApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestGetConsumptionByIdApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestGetConsumptionByIdApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestGetConsumptionByIdApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestGetConsumptionByIdApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestGetRegistrationByIdApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestGetRegistrationByIdApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestGetRegistrationByIdApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestGetRegistrationByIdApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestQueryDdmsByType.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestQueryDdmsByType.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/ddms/TestQueryDdmsByType.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/ddms/TestQueryDdmsByType.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestCreateSubscriberApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestCreateSubscriberApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestCreateSubscriberApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestCreateSubscriberApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestDeleteSubscriberApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestDeleteSubscriberApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestDeleteSubscriberApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestDeleteSubscriberApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestGetSubscriberByIdApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestGetSubscriberByIdApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestGetSubscriberByIdApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestGetSubscriberByIdApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestListTopicsApi.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestListTopicsApi.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestListTopicsApi.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestListTopicsApi.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestQuerySubscriber.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestQuerySubscriber.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/subscriber/TestQuerySubscriber.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/subscriber/TestQuerySubscriber.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/util/GCPTestUtils.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/util/GCPTestUtils.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/util/GCPTestUtils.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/util/GCPTestUtils.java diff --git a/testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/util/GoogleServiceAccount.java b/testing/register-test-gc/src/test/java/org/opengroup/osdu/register/util/GoogleServiceAccount.java similarity index 100% rename from testing/register-test-gcp/src/test/java/org/opengroup/osdu/register/util/GoogleServiceAccount.java rename to testing/register-test-gc/src/test/java/org/opengroup/osdu/register/util/GoogleServiceAccount.java diff --git a/testing/register-test-gcp/src/test/resources/logback-test.xml b/testing/register-test-gc/src/test/resources/logback-test.xml similarity index 100% rename from testing/register-test-gcp/src/test/resources/logback-test.xml rename to testing/register-test-gc/src/test/resources/logback-test.xml -- GitLab