summaryrefslogtreecommitdiffstats
path: root/cps-rest
diff options
context:
space:
mode:
authorClaudio D. Gasparini <claudio.gasparini@pantheon.tech>2021-01-28 15:36:37 +0100
committerClaudio D. Gasparini <claudio.gasparini@pantheon.tech>2021-02-01 18:08:30 +0100
commitb77bf2529f15e60c852cf83d5150e75d30068bb0 (patch)
tree74556b527ac48ac608db2d420929785c797a6a07 /cps-rest
parent850e3ecdecbedd30e65ae7cbaa81fc5301766f45 (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')
-rwxr-xr-xcps-rest/pom.xml64
-rw-r--r--cps-rest/src/main/java/org/onap/cps/Application.java32
-rwxr-xr-xcps-rest/src/main/java/org/onap/cps/config/CpsConfig.java7
-rw-r--r--cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java2
-rw-r--r--cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java2
-rw-r--r--cps-rest/src/main/resources/application.yml51
-rw-r--r--cps-rest/src/test/groovy/org/onap/cps/rest/controller/AdminRestControllerSpec.groovy2
-rw-r--r--cps-rest/src/test/groovy/org/onap/cps/rest/exceptions/CpsRestExceptionHandlerSpec.groovy2
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