Add swagger.json as discovery release artifacts 53/40353/4
authorLizi <li.zi30@zte.com.cn>
Fri, 30 Mar 2018 09:32:21 +0000 (09:32 +0000)
committerDenes Nemeth <denes.nemeth@nokia.com>
Tue, 3 Apr 2018 12:20:29 +0000 (14:20 +0200)
Change-Id: I1c2d023dce35a4e74b7f2b0e91b8e3c0423b18da
Issue-ID: MSB-187
Signed-off-by: Lizi <li.zi30@zte.com.cn>
sdclient/discovery-service/pom.xml
sdclient/discovery-service/src/main/resources/swagger.properties [new file with mode: 0644]

index 982338d..a1b93ec 100644 (file)
                        <artifactId>guava</artifactId>
                        <version>${guava.version}</version>
                </dependency>
-
        </dependencies>
        <build>
                <plugins>
+                       <!-- JSON -->
+                       <plugin>
+                               <groupId>org.codehaus.mojo</groupId>
+                               <artifactId>properties-maven-plugin</artifactId>
+                               <version>1.0.0</version>
+                               <executions>
+                                       <execution>
+                                               <phase>initialize</phase>
+                                               <goals>
+                                                       <goal>read-project-properties</goal>
+                                               </goals>
+                                               <configuration>
+                                                       <files>
+                                                               <file>${basedir}/src/main/resources/swagger.properties</file>
+                                                       </files>
+                                               </configuration>
+                                       </execution>
+                               </executions>
+                       </plugin>
+                       <plugin>
+                               <groupId>com.github.kongchen</groupId>
+                               <artifactId>swagger-maven-plugin</artifactId>
+                               <version>3.1.4</version>
+                               <configuration>
+                                       <apiSources>
+                                               <apiSource>
+                                                       <locations>${api-rest-package}</locations>
+                                                       <schemes>
+                                                               <scheme>http</scheme>
+                                                               <scheme>https</scheme>
+                                                       </schemes>
+                                                       <host>${api-host-ip}:${api-host-port}</host>
+                                                       <basePath>${api-base-path}</basePath>
+                                                       <info>
+                                                               <title>${api-title}</title>
+                                                               <version>${api-version}</version>
+                                                               <description>${api-description}</description>
+                                                               <license>
+                                                                       <name>${api-license}</name>
+                                                               </license>
+                                                       </info>
+                                                       <!--<swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>-->
+                                                       <swaggerDirectory>${basedir}/target/classes</swaggerDirectory>
+                                               </apiSource>
+                                       </apiSources>
+                               </configuration>
+                               <executions>
+                                       <execution>
+                                               <phase>compile</phase>
+                                               <goals>
+                                                       <goal>generate</goal>
+                                               </goals>
+                                       </execution>
+                               </executions>
+                       </plugin>
+                       <plugin>
+                               <groupId>org.codehaus.mojo</groupId>
+                               <artifactId>build-helper-maven-plugin</artifactId>
+                               <executions>
+                                       <execution>
+                                               <id>attach-artifacts</id>
+                                               <phase>package</phase>
+                                               <goals>
+                                                       <goal>attach-artifact</goal>
+                                               </goals>
+                                               <configuration>
+                                                       <artifacts>
+                                                               <artifact>
+                                                                       <file>target/classes/swagger.json</file>
+                                                                       <type>json</type>
+                                                                       <classifier>schema</classifier>
+                                                               </artifact>
+                                                       </artifacts>
+                                               </configuration>
+                                       </execution>
+                               </executions>
+                       </plugin>
                        <plugin>
                                <groupId>org.apache.maven.plugins</groupId>
                                <artifactId>maven-jar-plugin</artifactId>
diff --git a/sdclient/discovery-service/src/main/resources/swagger.properties b/sdclient/discovery-service/src/main/resources/swagger.properties
new file mode 100644 (file)
index 0000000..22f31e3
--- /dev/null
@@ -0,0 +1,50 @@
+#    Copyright 2017 Huawei Technologies Co., Ltd.
+#
+#    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.
+
+# Used to do swagger configuration.
+# ONAP Service REST API version
+api-version=1.0.0
+
+# ONAP Service REST API swagger document title
+api-title=MicroService Bus Discovery rest API
+
+# ONAP Service REST API swagger document description
+api-description=MicroService Bus Discovery rest API
+
+# ONAP Service REST API supported protocols
+api-schemas=http,https
+
+# ONAP Service REST API ROOT URI
+api-base-path=/api/microservices/v1
+
+# swagger.json URI on top of api-base-path. so final URI would as follows
+#<api-base-path>/<api-swagger-uri>/swagger.json
+api-swagger-uri=
+
+# Set the root level java package path, where REST API implemented.
+api-rest-package=org.onap.msb.sdclient.resources
+
+# Enables swagger to scan the ROA defining the REST API
+api-rest-package-scan=true
+
+# License details emebeded in generated swagger.json
+api-license=https://wiki.onap.org/display/DW/Apache+2.0+License
+
+# if service-config-file-path does not have api-host-ip and api-host-port,
+# then ip and port defined here will be used as default
+api-host-ip=127.0.0.1
+api-host-port=80
+
+# Set the below file path to service specific configuration file path
+service-config-file-path=