diff --git a/.github/workflows/run-unit-tests.yaml b/.github/workflows/run-unit-tests.yaml index 793def3e2..09ae82187 100644 --- a/.github/workflows/run-unit-tests.yaml +++ b/.github/workflows/run-unit-tests.yaml @@ -5,6 +5,7 @@ on: - "investigation-service/**" - "ldfdata-service/**" - "person-service/**" + - "reporting-pipeline-service/**" - "post-processing-service/**" - "observation-service/**" - "organization-service/**" diff --git a/.gitignore b/.gitignore index 0db25b6ea..c64e28bb6 100644 --- a/.gitignore +++ b/.gitignore @@ -43,4 +43,3 @@ hs_err_pid* # Ignore Gradle build output directory build application-local.yaml -NEDSSDev/ diff --git a/docker-compose.yaml b/docker-compose.yaml index 70e64c768..7f3218336 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -234,12 +234,12 @@ services: liquibase: condition: service_completed_successfully - reporting-hydration-service: + reporting-pipeline-service: build: - dockerfile: ./reporting-hydration-service/Dockerfile + dockerfile: ./reporting-pipeline-service/Dockerfile environment: - - DB_USERNAME=reporting_hydration_service_rdb - - DB_PASSWORD=reporting_hydration_service + - DB_USERNAME=reporting_pipeline_service_rdb + - DB_PASSWORD=reporting_pipeline_service - DB_HOST=jdbc:sqlserver://nbs-mssql:1433;databaseName=RDB_MODERN;encrypt=true;trustServerCertificate=true; - KAFKA_BOOTSTRAP_SERVER=kafka:29092 depends_on: diff --git a/documentation/DevSetup.md b/documentation/DevSetup.md index 9d7a995cc..56ed5a211 100644 --- a/documentation/DevSetup.md +++ b/documentation/DevSetup.md @@ -19,7 +19,7 @@ 1. [organization-service](../organization-service/Dockerfile) - Processes Kafka message for Organization data 1. [person-service](../person-service/Dockerfile) - Processes Kafka message for Person data 1. [post-processing-service](../post-processing-service/Dockerfile) - Handles mapping key-uid mappings -1. [reporting-hydration-service](../reporting-hydration-service/Dockerfile) - **FUTURE** service for consolidating all the DataReporting microserices +1. [reporting-pipeline-service](../reporting-pipeline-service/Dockerfile) - **FUTURE** service for consolidating all the DataReporting microserices ### Prerequisites: diff --git a/liquibase-service/src/main/resources/db/001-master/01_onboarding_scripts_user_creation/009-user-reporting_hydration_service_rdb.sql b/liquibase-service/src/main/resources/db/001-master/01_onboarding_scripts_user_creation/009-user-reporting_pipeline_service_rdb.sql similarity index 92% rename from liquibase-service/src/main/resources/db/001-master/01_onboarding_scripts_user_creation/009-user-reporting_hydration_service_rdb.sql rename to liquibase-service/src/main/resources/db/001-master/01_onboarding_scripts_user_creation/009-user-reporting_pipeline_service_rdb.sql index 83ca16b51..7519135da 100644 --- a/liquibase-service/src/main/resources/db/001-master/01_onboarding_scripts_user_creation/009-user-reporting_hydration_service_rdb.sql +++ b/liquibase-service/src/main/resources/db/001-master/01_onboarding_scripts_user_creation/009-user-reporting_pipeline_service_rdb.sql @@ -1,11 +1,11 @@ -- ========================================== --- USER: reporting_hydration_service_rdb --- SERVICE: reporting-hydration-service +-- USER: reporting_pipeline_service_rdb +-- SERVICE: reporting-pipeline-service -- ========================================== USE [master]; -DECLARE @UserName NVARCHAR(150) = 'reporting_hydration_service_rdb'; -DECLARE @UserPassword NVARCHAR(128) = N'reporting_hydration_service'; --Please provide your generated password. +DECLARE @UserName NVARCHAR(150) = 'reporting_pipeline_service_rdb'; +DECLARE @UserPassword NVARCHAR(128) = N'reporting_pipeline_service'; --Please provide your generated password. -- Check if login already exists before creating IF NOT EXISTS (SELECT * FROM sys.server_principals WHERE name = @UserName) @@ -103,4 +103,4 @@ IF EXISTS (SELECT * FROM sys.database_principals WHERE name = @UserName) PRINT 'Granted EXECUTE permission to [' + @UserName + ']'; END -PRINT 'Reporting hydration service permission grants completed.'; +PRINT 'Reporting pipeline service permission grants completed.'; diff --git a/reporting-hydration-service/Dockerfile b/reporting-hydration-service/Dockerfile deleted file mode 100644 index 0bf69b8ad..000000000 --- a/reporting-hydration-service/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -FROM amazoncorretto:21 as builder - -RUN yum update -y && yum clean all - -#Copy project config -COPY gradle /usr/src/gradle -COPY gradlew /usr/src/gradlew -COPY settings.gradle /usr/src/settings.gradle - -#Copy sources -COPY common-util /usr/src/common-util -COPY reporting-hydration-service /usr/src/reporting-hydration-service - -#cd to root directory -WORKDIR /usr/src/ - -#Build service along with any required libraries -RUN ./gradlew :reporting-hydration-service:buildNeeded -x test --no-daemon -FROM amazoncorretto:21 -RUN yum update -y && yum clean all -COPY --from=builder /usr/src/reporting-hydration-service/build/libs/reporting-hydration-service*.jar reporting-hydration-service.jar - -# Run jar -ENTRYPOINT ["java", "-jar", "reporting-hydration-service.jar"] -CMD ["java", "-jar", "reporting-hydration-service.jar"] diff --git a/reporting-hydration-service/settings.gradle b/reporting-hydration-service/settings.gradle deleted file mode 100644 index 378a0070a..000000000 --- a/reporting-hydration-service/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -rootProject.name = 'reporting-hydration-service' diff --git a/reporting-hydration-service/.dockerignore b/reporting-pipeline-service/.dockerignore similarity index 100% rename from reporting-hydration-service/.dockerignore rename to reporting-pipeline-service/.dockerignore diff --git a/reporting-hydration-service/.gitignore b/reporting-pipeline-service/.gitignore similarity index 100% rename from reporting-hydration-service/.gitignore rename to reporting-pipeline-service/.gitignore diff --git a/reporting-pipeline-service/Dockerfile b/reporting-pipeline-service/Dockerfile new file mode 100644 index 000000000..c2938854a --- /dev/null +++ b/reporting-pipeline-service/Dockerfile @@ -0,0 +1,31 @@ +FROM amazoncorretto:21 as builder + +RUN yum update -y && yum clean all + +#Copy project config +COPY gradle /usr/src/gradle +COPY gradlew /usr/src/gradlew +COPY settings.gradle /usr/src/settings.gradle + +#Copy sources +COPY common-util /usr/src/common-util +COPY reporting-pipeline-service /usr/src/reporting-pipeline-service + +#cd to root directory +WORKDIR /usr/src/ + +#Build service along with any required libraries +RUN ./gradlew :reporting-pipeline-service:buildNeeded -x test --no-daemon + +FROM amazoncorretto:21 +RUN yum update -y && yum install -y curl && yum clean all +COPY --from=builder /usr/src/reporting-pipeline-service/build/libs/reporting-pipeline-service*.jar reporting-pipeline-service.jar + +EXPOSE 8095 + +HEALTHCHECK --interval=30s --timeout=3s --retries=3 \ + CMD curl -f http://localhost:8095/actuator/health || exit 1 + +# Run jar +ENTRYPOINT ["java", "-jar", "reporting-pipeline-service.jar"] +CMD ["java", "-jar", "reporting-pipeline-service.jar"] diff --git a/reporting-hydration-service/build.gradle b/reporting-pipeline-service/build.gradle similarity index 100% rename from reporting-hydration-service/build.gradle rename to reporting-pipeline-service/build.gradle diff --git a/reporting-hydration-service/gradle/wrapper/wrapper/gradle-wrapper.jar b/reporting-pipeline-service/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from reporting-hydration-service/gradle/wrapper/wrapper/gradle-wrapper.jar rename to reporting-pipeline-service/gradle/wrapper/gradle-wrapper.jar diff --git a/reporting-hydration-service/gradle/wrapper/wrapper/gradle-wrapper.properties b/reporting-pipeline-service/gradle/wrapper/gradle-wrapper.properties similarity index 100% rename from reporting-hydration-service/gradle/wrapper/wrapper/gradle-wrapper.properties rename to reporting-pipeline-service/gradle/wrapper/gradle-wrapper.properties diff --git a/reporting-hydration-service/gradlew b/reporting-pipeline-service/gradlew similarity index 100% rename from reporting-hydration-service/gradlew rename to reporting-pipeline-service/gradlew diff --git a/reporting-hydration-service/gradlew.bat b/reporting-pipeline-service/gradlew.bat similarity index 100% rename from reporting-hydration-service/gradlew.bat rename to reporting-pipeline-service/gradlew.bat diff --git a/reporting-hydration-service/lombok.config b/reporting-pipeline-service/lombok.config similarity index 100% rename from reporting-hydration-service/lombok.config rename to reporting-pipeline-service/lombok.config diff --git a/reporting-pipeline-service/settings.gradle b/reporting-pipeline-service/settings.gradle new file mode 100644 index 000000000..c3a392f51 --- /dev/null +++ b/reporting-pipeline-service/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'reporting-pipeline-service' diff --git a/reporting-hydration-service/src/main/java/gov/cdc/etldatapipeline/reportinghydration/ReportingHydrationServiceApplication.java b/reporting-pipeline-service/src/main/java/gov/cdc/etldatapipeline/pipeline/ReportingPipelineServiceApplication.java similarity index 51% rename from reporting-hydration-service/src/main/java/gov/cdc/etldatapipeline/reportinghydration/ReportingHydrationServiceApplication.java rename to reporting-pipeline-service/src/main/java/gov/cdc/etldatapipeline/pipeline/ReportingPipelineServiceApplication.java index dad22aeb9..b752ce9c0 100644 --- a/reporting-hydration-service/src/main/java/gov/cdc/etldatapipeline/reportinghydration/ReportingHydrationServiceApplication.java +++ b/reporting-pipeline-service/src/main/java/gov/cdc/etldatapipeline/pipeline/ReportingPipelineServiceApplication.java @@ -1,21 +1,21 @@ -package gov.cdc.etldatapipeline.reportinghydration; +package gov.cdc.etldatapipeline.pipeline; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /** - * Main entry point for the Reporting Hydration Service. This service is intended to consolidate + * Main entry point for the Reporting Pipeline Service. This service is intended to consolidate * various reporting microservices into a single application to simplify the ETL data pipeline. */ @SpringBootApplication -public class ReportingHydrationServiceApplication { +public class ReportingPipelineServiceApplication { /** - * Starts the Reporting Hydration Service application. + * Starts the Reporting Pipeline Service application. * * @param args command-line arguments */ public static void main(String[] args) { - SpringApplication.run(ReportingHydrationServiceApplication.class, args); + SpringApplication.run(ReportingPipelineServiceApplication.class, args); } } diff --git a/reporting-hydration-service/src/main/resources/application.yaml b/reporting-pipeline-service/src/main/resources/application.yaml similarity index 88% rename from reporting-hydration-service/src/main/resources/application.yaml rename to reporting-pipeline-service/src/main/resources/application.yaml index 76c1eb9e3..defe9fae1 100644 --- a/reporting-hydration-service/src/main/resources/application.yaml +++ b/reporting-pipeline-service/src/main/resources/application.yaml @@ -1,6 +1,6 @@ spring: application: - name: reporting-hydration-service + name: reporting-pipeline-service kafka: bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVER} datasource: diff --git a/reporting-hydration-service/src/test/java/gov/cdc/etldatapipeline/reportinghydration/ReportingHydrationServiceApplicationTests.java b/reporting-pipeline-service/src/test/java/gov/cdc/etldatapipeline/pipeline/ReportingPipelineServiceApplicationTests.java similarity index 76% rename from reporting-hydration-service/src/test/java/gov/cdc/etldatapipeline/reportinghydration/ReportingHydrationServiceApplicationTests.java rename to reporting-pipeline-service/src/test/java/gov/cdc/etldatapipeline/pipeline/ReportingPipelineServiceApplicationTests.java index 29e69ae40..0542c5ae1 100644 --- a/reporting-hydration-service/src/test/java/gov/cdc/etldatapipeline/reportinghydration/ReportingHydrationServiceApplicationTests.java +++ b/reporting-pipeline-service/src/test/java/gov/cdc/etldatapipeline/pipeline/ReportingPipelineServiceApplicationTests.java @@ -1,4 +1,4 @@ -package gov.cdc.etldatapipeline.reportinghydration; +package gov.cdc.etldatapipeline.pipeline; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.mockito.Mockito.mock; @@ -15,7 +15,7 @@ import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; @SpringBootTest -class ReportingHydrationServiceApplicationTests { +class ReportingPipelineServiceApplicationTests { @Autowired private ApplicationContext context; @@ -25,13 +25,12 @@ void testMain() { mocked .when( () -> - SpringApplication.run( - ReportingHydrationServiceApplication.class, new String[] {})) + SpringApplication.run(ReportingPipelineServiceApplication.class, new String[] {})) .thenReturn(null); - ReportingHydrationServiceApplication.main(new String[] {}); + ReportingPipelineServiceApplication.main(new String[] {}); mocked.verify( - () -> SpringApplication.run(ReportingHydrationServiceApplication.class, new String[] {}), + () -> SpringApplication.run(ReportingPipelineServiceApplication.class, new String[] {}), Mockito.times(1)); } } diff --git a/settings.gradle b/settings.gradle index 01c4cef8e..378d669b5 100644 --- a/settings.gradle +++ b/settings.gradle @@ -18,4 +18,4 @@ include 'ldfdata-service' include 'liquibase-service' -include 'reporting-hydration-service' +include 'reporting-pipeline-service'