diff options
author | Claudio D. Gasparini <claudio.gasparini@pantheon.tech> | 2021-01-28 15:36:37 +0100 |
---|---|---|
committer | Claudio D. Gasparini <claudio.gasparini@pantheon.tech> | 2021-02-01 18:08:30 +0100 |
commit | b77bf2529f15e60c852cf83d5150e75d30068bb0 (patch) | |
tree | 74556b527ac48ac608db2d420929785c797a6a07 /cps-rest | |
parent | 850e3ecdecbedd30e65ae7cbaa81fc5301766f45 (diff) |
Decouple configuration from application
- Decouple configuration from application
- Generate all 3 types of docker variations
Issue-ID: CPS-175
Signed-off-by: Claudio D. Gasparini <claudio.gasparini@pantheon.tech>
Change-Id: I1e2e0577c5911f7c79801e4c691d196515dc02a1
Diffstat (limited to 'cps-rest')
8 files changed, 35 insertions, 127 deletions
diff --git a/cps-rest/pom.xml b/cps-rest/pom.xml index 49c3267dd9..6ee0c4fdd1 100755 --- a/cps-rest/pom.xml +++ b/cps-rest/pom.xml @@ -12,7 +12,7 @@ <artifactId>cps-rest</artifactId>
<properties>
- <minimum-coverage>0.88</minimum-coverage>
+ <minimum-coverage>0.53</minimum-coverage>
</properties>
<dependencies>
@@ -51,6 +51,10 @@ <artifactId>springfox-boot-starter</artifactId>
</dependency>
<dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
@@ -94,48 +98,32 @@ <build>
<plugins>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- </plugin>
<!-- Swagger code generation. -->
<plugin>
<groupId>io.swagger.codegen.v3</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ <configuration>
+ <inputSpec>${project.basedir}/docs/api/swagger/openapi.yml</inputSpec>
+ <invokerPackage>org.onap.cps.rest.controller</invokerPackage>
+ <modelPackage>org.onap.cps.rest.model</modelPackage>
+ <apiPackage>org.onap.cps.rest.api</apiPackage>
+ <language>spring</language>
+ <generateSupportingFiles>false</generateSupportingFiles>
+ <configOptions>
+ <sourceFolder>src/gen/java</sourceFolder>
+ <dateLibrary>java11</dateLibrary>
+ <interfaceOnly>true</interfaceOnly>
+ <useTags>true</useTags>
+ </configOptions>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
</plugins>
</build>
-
- <profiles>
- <profile>
- <id>docker</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>com.google.cloud.tools</groupId>
- <artifactId>jib-maven-plugin</artifactId>
- <executions>
- <execution>
- <phase>package</phase>
- <id>build</id>
- <goals>
- <goal>dockerBuild</goal>
- </goals>
- </execution>
- <execution>
- <phase>deploy</phase>
- <id>buildAndPush</id>
- <goals>
- <goal>build</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
</project>
diff --git a/cps-rest/src/main/java/org/onap/cps/Application.java b/cps-rest/src/main/java/org/onap/cps/Application.java deleted file mode 100644 index d8e849d53d..0000000000 --- a/cps-rest/src/main/java/org/onap/cps/Application.java +++ /dev/null @@ -1,32 +0,0 @@ -/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2020 Nordix Foundation. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.cps;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-
-@SpringBootApplication
-public class Application {
-
- public static void main(final String[] args) {
- SpringApplication.run(Application.class, args);
- }
-}
\ No newline at end of file diff --git a/cps-rest/src/main/java/org/onap/cps/config/CpsConfig.java b/cps-rest/src/main/java/org/onap/cps/config/CpsConfig.java index cca5fe7d8d..419a218930 100755 --- a/cps-rest/src/main/java/org/onap/cps/config/CpsConfig.java +++ b/cps-rest/src/main/java/org/onap/cps/config/CpsConfig.java @@ -34,9 +34,12 @@ public class CpsConfig { /**
* Swagger configuration.
*/
- @Bean
+ @Bean("cps-docket")
public Docket api() {
- return new Docket(DocumentationType.OAS_30).select().apis(RequestHandlerSelectors.any())
+ return new Docket(DocumentationType.OAS_30)
+ .groupName("cps-docket")
+ .select()
+ .apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any()).build();
}
diff --git a/cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java b/cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java index 1b6f56a211..8f4bdb716f 100644 --- a/cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java +++ b/cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java @@ -38,7 +38,7 @@ import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; @RestController -@RequestMapping("${rest.api.base-path}") +@RequestMapping("${rest.api.cps-base-path}") public class AdminRestController implements CpsAdminApi { @Autowired diff --git a/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java b/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java index 2ecbd4f544..61f9399e7e 100644 --- a/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java +++ b/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java @@ -30,7 +30,7 @@ import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; @RestController -@RequestMapping("${rest.api.base-path}") +@RequestMapping("${rest.api.cps-base-path}") public class DataRestController implements CpsDataApi { @Autowired diff --git a/cps-rest/src/main/resources/application.yml b/cps-rest/src/main/resources/application.yml deleted file mode 100644 index 22948c3c30..0000000000 --- a/cps-rest/src/main/resources/application.yml +++ /dev/null @@ -1,51 +0,0 @@ -server:
- port: 8080
-
-rest:
- api:
- base-path: /cps/api
-
-spring:
- main:
- banner-mode: "off"
-# for POC only, later this should move to cpi-ri module
- jpa:
- ddl-auto: create
- open-in-view: false
- properties:
- hibernate:
- enable_lazy_load_no_trans: true
- dialect: org.hibernate.dialect.PostgreSQLDialect
-
- datasource:
- url: jdbc:postgresql://${DB_HOST}:5432/cpsdb
- username: ${DB_USERNAME}
- password: ${DB_PASSWORD}
- driverClassName: org.postgresql.Driver
- initialization-mode: always
-
- cache:
- type: caffeine
- cache-names: yangSchema
- caffeine:
- spec: maximumSize=10000,expireAfterAccess=10m
-# Actuator
-management:
- endpoints:
- web:
- base-path: /manage
- exposure:
- include: health,info,loggers
- endpoint:
- health:
- show-details: always
- # kubernetes probes: liveness and readiness
- probes:
- enabled: true
- loggers:
- enabled: true
-
-logging:
- level:
- org:
- springframework: INFO
diff --git a/cps-rest/src/test/groovy/org/onap/cps/rest/controller/AdminRestControllerSpec.groovy b/cps-rest/src/test/groovy/org/onap/cps/rest/controller/AdminRestControllerSpec.groovy index 540d6224aa..88adf10efa 100644 --- a/cps-rest/src/test/groovy/org/onap/cps/rest/controller/AdminRestControllerSpec.groovy +++ b/cps-rest/src/test/groovy/org/onap/cps/rest/controller/AdminRestControllerSpec.groovy @@ -61,7 +61,7 @@ class AdminRestControllerSpec extends Specification { @Autowired MockMvc mvc - @Value('${rest.api.base-path}') + @Value('${rest.api.cps-base-path}') def basePath def anchorsEndpoint = '/v1/dataspaces/my_dataspace/anchors' diff --git a/cps-rest/src/test/groovy/org/onap/cps/rest/exceptions/CpsRestExceptionHandlerSpec.groovy b/cps-rest/src/test/groovy/org/onap/cps/rest/exceptions/CpsRestExceptionHandlerSpec.groovy index edc484b14a..45f6102a2f 100644 --- a/cps-rest/src/test/groovy/org/onap/cps/rest/exceptions/CpsRestExceptionHandlerSpec.groovy +++ b/cps-rest/src/test/groovy/org/onap/cps/rest/exceptions/CpsRestExceptionHandlerSpec.groovy @@ -61,7 +61,7 @@ class CpsRestExceptionHandlerSpec extends Specification { @Autowired MockMvc mvc - @Value('${rest.api.base-path}') + @Value('${rest.api.cps-base-path}') def basePath @Shared |