diff options
author | da490c <dave.adams@amdocs.com> | 2018-07-17 14:04:07 -0400 |
---|---|---|
committer | da490c <dave.adams@amdocs.com> | 2018-07-17 14:12:36 -0400 |
commit | f42670da77dabfb638c6b180ac7133ec869ecc69 (patch) | |
tree | f788f5ab8461f1f7a72089d31673e7ec11bb7902 /sparkybe-onap-application | |
parent | 6977125bf359dbea3533052007930b18fa988976 (diff) |
Implement Spring Profile Sparky Config
Issue-ID: AAI-1379
Change-Id: I5d56b766f681452abe7e61b307e008bc5a695814
Signed-off-by: da490c <dave.adams@amdocs.com>
Diffstat (limited to 'sparkybe-onap-application')
58 files changed, 1928 insertions, 113 deletions
diff --git a/sparkybe-onap-application/config/application-camel.properties b/sparkybe-onap-application/config/application-camel.properties new file mode 100644 index 0000000..03a7f20 --- /dev/null +++ b/sparkybe-onap-application/config/application-camel.properties @@ -0,0 +1,3 @@ +camel.springboot.name = SparkyCamelContext +#camel.springboot.xmlRests = file:${CONFIG_HOME}/camel-rests/*.xml +camel.component.servlet.mapping.context-path=/rest/*
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-fe-dev.properties b/sparkybe-onap-application/config/application-fe-dev.properties new file mode 100644 index 0000000..bba6656 --- /dev/null +++ b/sparkybe-onap-application/config/application-fe-dev.properties @@ -0,0 +1,7 @@ + +server.servlet.context-path=/services/aai/webapp/ + +# +# attempt to externalize ui JS classes + resources +# +spring.resources.static-locations=file:${APP_HOME}/target/static/
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-fe-prod.properties b/sparkybe-onap-application/config/application-fe-prod.properties new file mode 100644 index 0000000..b332358 --- /dev/null +++ b/sparkybe-onap-application/config/application-fe-prod.properties @@ -0,0 +1,7 @@ + +server.servlet.context-path=/services/aai/webapp/ + +# +# attempt to externalize ui JS classes + resources +# +spring.resources.static-locations=file:${APP_HOME}/static/
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-gizmo.properties b/sparkybe-onap-application/config/application-gizmo.properties new file mode 100644 index 0000000..e988873 --- /dev/null +++ b/sparkybe-onap-application/config/application-gizmo.properties @@ -0,0 +1,7 @@ +gizmo.hostname=127.0.0.1 +gizmo.port=9520 +gizmo.authType=SSL_CERT +gizmo.client-cert=client-cert-onap.p12 +gizmo.client-cert-password=1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10 +gizmo.trust-store=tomcat_keystore +gizmo.apiVersion=v12 diff --git a/sparkybe-onap-application/config/application-http.properties b/sparkybe-onap-application/config/application-http.properties new file mode 100644 index 0000000..f81a597 --- /dev/null +++ b/sparkybe-onap-application/config/application-http.properties @@ -0,0 +1 @@ +server.port = 9517
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-oxm-override.properties b/sparkybe-onap-application/config/application-oxm-override.properties new file mode 100644 index 0000000..1fa006e --- /dev/null +++ b/sparkybe-onap-application/config/application-oxm-override.properties @@ -0,0 +1 @@ +oxm.apiVersionOverride=V11
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-oxm-schema-dev.properties b/sparkybe-onap-application/config/application-oxm-schema-dev.properties new file mode 100644 index 0000000..66efe1d --- /dev/null +++ b/sparkybe-onap-application/config/application-oxm-schema-dev.properties @@ -0,0 +1 @@ +oxm.schemaNodeDir=${APP_HOME}/target/oxm
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-oxm-schema-prod.properties b/sparkybe-onap-application/config/application-oxm-schema-prod.properties new file mode 100644 index 0000000..111a63f --- /dev/null +++ b/sparkybe-onap-application/config/application-oxm-schema-prod.properties @@ -0,0 +1 @@ +oxm.schemaNodeDir=${APP_HOME}/oxm
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-portal.properties b/sparkybe-onap-application/config/application-portal.properties new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/sparkybe-onap-application/config/application-portal.properties diff --git a/sparkybe-onap-application/config/application-resources.properties b/sparkybe-onap-application/config/application-resources.properties new file mode 100644 index 0000000..2a7770f --- /dev/null +++ b/sparkybe-onap-application/config/application-resources.properties @@ -0,0 +1,8 @@ +resources.hostname=127.0.0.1 +resources.port=8443 +resources.authType=SSL_BASIC +resources.basicAuthUserName=AAI +resources.basicAuthPassword=AAI +resources.client-cert=client-cert-onap.p12 +resources.client-cert-password=1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10 +resources.trust-store=tomcat_keystore diff --git a/sparkybe-onap-application/config/application-ssl.properties b/sparkybe-onap-application/config/application-ssl.properties new file mode 100644 index 0000000..04ff25b --- /dev/null +++ b/sparkybe-onap-application/config/application-ssl.properties @@ -0,0 +1,3 @@ +server.port = 8000 +server.ssl.key-store=file:${CONFIG_HOME}/auth/tomcat_keystore +server.ssl.key-store-password=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application-sync.properties b/sparkybe-onap-application/config/application-sync.properties new file mode 100644 index 0000000..4fb10a2 --- /dev/null +++ b/sparkybe-onap-application/config/application-sync.properties @@ -0,0 +1,6 @@ +aggregationSyncEnabled=true +historicalEntitySyncEnabled=true +autoSuggestSyncEnabled=true +vnfAliasSyncEnabled=true +geoSyncEnabled=true +viewInspectSyncEnabled=true
\ No newline at end of file diff --git a/sparkybe-onap-application/config/application.properties b/sparkybe-onap-application/config/application.properties new file mode 100644 index 0000000..54f4f40 --- /dev/null +++ b/sparkybe-onap-application/config/application.properties @@ -0,0 +1,16 @@ +# +# disable the default thyme leaf icon on web-pages +# +spring.mvc.favicon.enabled=false + +#possible values: camel,http,ssl,portal,fe-dev,fe-prod,oxm-default,oxm-override,[resources|gizmo],sync,oxm-schema-prod +spring.profiles.active=camel,ssl,fe-dev,oxm-schema-dev,resources,sync + +elasticsearch.hostname=127.0.0.1 +elasticsearch.port=9200 + +searchservice.hostname=127.0.0.1 +searchservice.port=9502 +searchservice.client-cert=client-cert-onap.p12 +searchservice.client-cert-password=1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10 +searchservice.truststore=tomcat_keystore diff --git a/sparkybe-onap-application/config/auth/client-cert-onap.p12 b/sparkybe-onap-application/config/auth/client-cert-onap.p12 Binary files differnew file mode 100644 index 0000000..dbf4fca --- /dev/null +++ b/sparkybe-onap-application/config/auth/client-cert-onap.p12 diff --git a/sparkybe-onap-application/config/auth/csp-cookie-filter.properties b/sparkybe-onap-application/config/auth/csp-cookie-filter.properties new file mode 100644 index 0000000..48984cd --- /dev/null +++ b/sparkybe-onap-application/config/auth/csp-cookie-filter.properties @@ -0,0 +1,18 @@ +# AT&T Global login page. This is the redirect URL +# Production login page: +# https://www.e-access.att.com/empsvcs/hrpinmgt/pagLogin/ +# +# Test login page: +# https://webtest.csp.att.com/empsvcs/hrpinmgt/pagLogin/ +global.login.url=<%= @GLOBAL_LOGIN_URL %> + +# MOTS ID of the application +application.id=24153 + +# valid domains for open redirect +redirect-domain=<%= @VALID_REDIRECT_DOMAIN %> + +# Required by esGateKeeper. Valid values are: +# DEVL - used during development +# PROD - used in production +gatekeeper.environment=<%= @GATEKEEPER_ENV %>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/auth/tomcat_keystore b/sparkybe-onap-application/config/auth/tomcat_keystore Binary files differnew file mode 100644 index 0000000..9eec841 --- /dev/null +++ b/sparkybe-onap-application/config/auth/tomcat_keystore diff --git a/sparkybe-onap-application/config/descriptors/aaiEntityNodeDescriptors.json b/sparkybe-onap-application/config/descriptors/aaiEntityNodeDescriptors.json new file mode 100644 index 0000000..e72bab0 --- /dev/null +++ b/sparkybe-onap-application/config/descriptors/aaiEntityNodeDescriptors.json @@ -0,0 +1,218 @@ +{ + "generalNodeClass": { + "class": "aai-entity-node general-node", + "visualElements": [{ + "type": "circle", + "class": "outer", + "svgAttributes": { + "r": "16" + } + }, + { + "type": "circle", + "class": "inner", + "svgAttributes": { + "r": "10" + } + }, + { + "type": "text", + "class": "id-type-label", + "displayKey": "itemType", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "33" + } + } + }, + { + "type": "text", + "class": "id-value-label", + "displayKey": "itemNameValue", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "48" + } + } + }] + }, + "searchedNodeClass": { + "class": "aai-entity-node search-node", + "visualElements": [{ + "type": "circle", + "class": "outer", + "svgAttributes": { + "r": "16" + } + }, + { + "type": "circle", + "class": "inner", + "svgAttributes": { + "r": "10" + } + }, + { + "type": "text", + "class": "id-type-label", + "displayKey": "itemType", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "33" + } + } + }, + { + "type": "text", + "class": "id-value-label", + "displayKey": "itemNameValue", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "48" + } + } + }] + }, + "selectedSearchedNodeClass": { + "class": "aai-entity-node selected-search-node", + "visualElements": [{ + "type": "circle", + "class": "outer", + "svgAttributes": { + "r": "31" + } + }, + { + "type": "circle", + "class": "inner", + "svgAttributes": { + "r": "20" + } + }, + { + "type": "text", + "class": "id-type-label", + "displayKey": "itemType", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "48" + } + } + }, + { + "type": "text", + "class": "id-value-label", + "displayKey": "itemNameValue", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "63" + } + } + }, + { + "type": "button", + "name": "icon_ellipses", + "class": "node-button", + "shapeAttributes": { + "offset": { + "x": "33", + "y": "-35" + } + }, + "svgAttributes": { + "className": "node-button", + "r": "10" + } + }, + { + "type": "button", + "name": "icon_triangle_warning", + "class": "node-button", + "shapeAttributes": { + "offset": { + "x": "46", + "y": "-12" + } + }, + "svgAttributes": { + "className": "node-button", + "r": "10" + } + }] + }, + "selectedNodeClass": { + "class": "aai-entity-node selected-node", + "visualElements": [{ + "type": "circle", + "class": "outer", + "svgAttributes": { + "r": "31" + } + }, + { + "type": "circle", + "class": "inner", + "svgAttributes": { + "r": "20" + } + }, + { + "type": "text", + "class": "id-type-label", + "displayKey": "itemType", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "48" + } + } + }, + { + "type": "text", + "class": "id-value-label", + "displayKey": "itemNameValue", + "shapeAttributes": { + "offset": { + "x": "0", + "y": "63" + } + } + }, + { + "type": "button", + "name": "icon_ellipses", + "class": "node-button", + "shapeAttributes": { + "offset": { + "x": "33", + "y": "-35" + } + }, + "svgAttributes": { + "className": "node-button", + "r": "10" + } + }, + { + "type": "button", + "name": "icon_triangle_warning", + "class": "node-button", + "shapeAttributes": { + "offset": { + "x": "46", + "y": "-12" + } + }, + "svgAttributes": { + "className": "node-button", + "r": "10" + } + }] + } +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/filters/aaiui_filters.json b/sparkybe-onap-application/config/filters/aaiui_filters.json new file mode 100644 index 0000000..e053442 --- /dev/null +++ b/sparkybe-onap-application/config/filters/aaiui_filters.json @@ -0,0 +1,95 @@ +{ + "filters": [{ + "filterId": "1", + "filterName": "Orchestration-Status", + "displayName": "Orchestration Status", + "dataType": "dropDown", + "multiSelect": "false", + "watermark": "Any Orchestration Status", + "optionsType": "options", + "dataSource": { + "indexName": "aggregate_generic-vnf_index", + "docType": "default", + "fieldName": "orchestration-status" + } + }, + { + "filterId": "2", + "filterName": "Prov-Status", + "displayName": "Provisioning Status", + "dataType": "dropDown", + "multiSelect": "false", + "watermark": "Any Provisioning Status", + "optionsType": "options", + "dataSource": { + "indexName": "aggregate_generic-vnf_index", + "docType": "default", + "fieldName": "prov-status" + } + }, + { + "filterId": "5", + "filterName": "Date", + "displayName": "Date", + "dataType": "date", + "multiSelect": "false", + "watermark": "Choose Date Range", + "defaultValue": { + "decode": "Today", + "code": "last_0_hours" + }, + "optionsType": "dynamicOptions", + "optionsValues": [{ + "decode": "Today", + "code": "last_0_hours" + }, + { + "decode": "Since Yesterday", + "code": "last_1_days" + }, + { + "decode": "Since Last Week", + "code": "last_1_weeks" + }, + { + "decode": "Since Last Month", + "code": "last_1_months" + }, + { + "decode": "Since Last Year", + "code": "last_1_years" + }, + { + "decode": "Custom Range", + "code": "custom_range" + }] + }, + { + "filterId": "7", + "filterName": "nf-type", + "displayName": "Network Function Type", + "dataType": "dropDown", + "multiSelect": "false", + "watermark": "Any Network Function Type", + "optionsType": "options", + "dataSource": { + "indexName": "aggregate_generic-vnf_index", + "docType": "default", + "fieldName": "nf-type" + } + }, + { + "filterId": "8", + "filterName": "nf-role", + "displayName": "Network Function Role", + "dataType": "dropDown", + "multiSelect": "false", + "watermark": "Any Network Function Role", + "optionsType": "options", + "dataSource": { + "indexName": "aggregate_generic-vnf_index", + "docType": "default", + "fieldName": "nf-role" + } + }] +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/filters/aaiui_views.json b/sparkybe-onap-application/config/filters/aaiui_views.json new file mode 100644 index 0000000..74206fb --- /dev/null +++ b/sparkybe-onap-application/config/filters/aaiui_views.json @@ -0,0 +1,17 @@ +{ + "views": [{ + "viewName": "vnfSearch", + "filters": [{ + "filterId": "2" + }, + { + "filterId": "1" + }, + { + "filterId": "7" + }, + { + "filterId": "8" + }] + }] +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/filters/subscription_object_inspector_mapping.json b/sparkybe-onap-application/config/filters/subscription_object_inspector_mapping.json new file mode 100644 index 0000000..ad2ab7a --- /dev/null +++ b/sparkybe-onap-application/config/filters/subscription_object_inspector_mapping.json @@ -0,0 +1,16 @@ +{ + "target": "", + "origin": "", + "messageType": "", + "topic": "", + "message": { + "applicationName": "", + "payload": { + "action": "", + "params": { + "objectName": "", + "externalClassId": "" + } + } + } +} diff --git a/sparkybe-onap-application/config/logging/logback.xml b/sparkybe-onap-application/config/logging/logback.xml new file mode 100644 index 0000000..3d132b7 --- /dev/null +++ b/sparkybe-onap-application/config/logging/logback.xml @@ -0,0 +1,172 @@ +<configuration scan="true" scanPeriod="3 seconds" debug="false"> + <!--<jmxConfigurator /> --> + <!-- directory path for all other type logs --> + + <property name="logDir" value="/var/log/onap" /> + + <!-- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" + | "SDNC" | "AC" --> + <property name="componentName" value="AAI-UI"></property> + + <!-- default eelf log file names --> + <property name="generalLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + + <property name="errorLogPattern" + value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{RequestId}|%thread|AAIUI|%mdc{PartnerName}|%logger|%.-5level|%msg%n" /> + <property name="auditMetricPattern" value="%m%n" /> + + <property name="logDirectory" value="${logDir}/${componentName}" /> + + + <!-- Example evaluator filter applied against console appender --> + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>${errorLogPattern}</pattern> + </encoder> + </appender> + + <!-- ============================================================================ --> + <!-- EELF Appenders --> + <!-- ============================================================================ --> + + <!-- The EELFAppender is used to record events to the general application + log --> + + <appender name="EELF" + class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${logDirectory}/${generalLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip + </fileNamePattern> + <maxHistory>60</maxHistory> + </rollingPolicy> + <encoder> + <pattern>${errorLogPattern}</pattern> + </encoder> + </appender> + <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender"> + <!-- deny all events with a level below INFO, that is TRACE and DEBUG --> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> + <level>INFO</level> + </filter> + <queueSize>256</queueSize> + <appender-ref ref="EELF" /> + </appender> + + + <!-- EELF Audit Appender. This appender is used to record audit engine related + logging events. The audit logger and appender are specializations of the + EELF application root logger and appender. This can be used to segregate + Policy engine events from other components, or it can be eliminated to record + these events as part of the application root log. --> + + <appender name="EELFAudit" + class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${logDirectory}/${auditLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip + </fileNamePattern> + <maxHistory>60</maxHistory> + </rollingPolicy> + <encoder> + <pattern>${auditMetricPattern}</pattern> + </encoder> + </appender> + <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender"> + <queueSize>256</queueSize> + <appender-ref ref="EELFAudit" /> + </appender> + + <appender name="EELFMetrics" + class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${logDirectory}/${metricsLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip + </fileNamePattern> + <maxHistory>60</maxHistory> + </rollingPolicy> + <encoder> + <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n"</pattern> --> + <pattern>${auditMetricPattern}</pattern> + </encoder> + </appender> + + + <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender"> + <queueSize>256</queueSize> + <appender-ref ref="EELFMetrics" /> + </appender> + + <appender name="EELFDebug" + class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${logDirectory}/${debugLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip + </fileNamePattern> + <maxHistory>60</maxHistory> + </rollingPolicy> + <encoder> + <pattern>${errorLogPattern}</pattern> + </encoder> + </appender> + + <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender"> + <queueSize>256</queueSize> + <appender-ref ref="EELFDebug" /> + <includeCallerData>false</includeCallerData> + </appender> + + <!-- ============================================================================ --> + <!-- EELF loggers --> + <!-- ============================================================================ --> + <logger name="com.att.eelf" level="info" additivity="false"> + <appender-ref ref="asyncEELF" /> + <appender-ref ref="asyncEELFDebug" /> + </logger> + + <logger name="com.att.eelf.audit" level="info" additivity="false"> + <appender-ref ref="asyncEELFAudit" /> + </logger> + <logger name="com.att.eelf.metrics" level="info" additivity="false"> + <appender-ref ref="asyncEELFMetrics" /> + </logger> + + <!-- Spring related loggers --> + <logger name="org.springframework" level="WARN" /> + <logger name="org.springframework.beans" level="WARN" /> + <logger name="org.springframework.web" level="WARN" /> + <logger name="com.blog.spring.jms" level="WARN" /> + + <!-- Sparky loggers --> + <logger name="org.onap" level="INFO" /> + + <!-- Other Loggers that may help troubleshoot --> + <logger name="net.sf" level="WARN" /> + <logger name="org.apache.commons.httpclient" level="WARN" /> + <logger name="org.apache.commons" level="WARN" /> + <logger name="org.apache.coyote" level="WARN" /> + <logger name="org.apache.jasper" level="WARN" /> + + <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. + May aid in troubleshooting) --> + <logger name="org.apache.camel" level="WARN" /> + <logger name="org.apache.cxf" level="WARN" /> + <logger name="org.apache.camel.processor.interceptor" level="WARN" /> + <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" /> + <logger name="org.apache.cxf.service" level="WARN" /> + <logger name="org.restlet" level="WARN" /> + <logger name="org.apache.camel.component.restlet" level="WARN" /> + + <!-- logback internals logging --> + <logger name="ch.qos.logback.classic" level="WARN" /> + <logger name="ch.qos.logback.core" level="WARN" /> + + <root> + <appender-ref ref="asyncEELF" /> + <!-- <appender-ref ref="asyncEELFDebug" /> --> + </root> + +</configuration> diff --git a/sparkybe-onap-application/config/portal/BOOT-INF/classes/portal.properties b/sparkybe-onap-application/config/portal/BOOT-INF/classes/portal.properties new file mode 100644 index 0000000..ca6b34b --- /dev/null +++ b/sparkybe-onap-application/config/portal/BOOT-INF/classes/portal.properties @@ -0,0 +1,21 @@ +# Java class that implements the ECOMP role and user mgt API +portal.api.impl.class=org.openecomp.sparky.security.portal.PortalRestAPIServiceImpl +# Instance of ECOMP Portal where the app has been on-boarded +# ecomp_rest_url=http://ecomp.homer.att.com/ecompportal/auxapi +# use insecure http for dev purposes to avoid self-signed certificate +ecomp_rest_url=<%= @ECOMP_REST_URL %> + +### CSP-SSO +# Standard global logon page +ecomp_redirect_url=<%= @ECOMP_REDIRECT_URL %> +# Test global logon page only accepts registered users +# ecomp_redirect_url=https://webtest.csp.att.com/ecompportal/ecompportal/process_csp +# CSP settings +csp_cookie_name=<%= @CSP_COOKIE_NAME %> +# Alternate values: DEVL, V_DEVL, V_PROD +csp_gate_keeper_prod_key=PROD + +# No use of UEB; however, this key is used to identify the app. +ueb_listeners_enable=false +# cl778h demo app +ueb_app_key=<%= @UEB_APP_KEY %>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/portal/portal-authentication.properties b/sparkybe-onap-application/config/portal/portal-authentication.properties new file mode 100644 index 0000000..a49cc69 --- /dev/null +++ b/sparkybe-onap-application/config/portal/portal-authentication.properties @@ -0,0 +1,3 @@ +username=admin +password=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10 +onap_enabled=true
\ No newline at end of file diff --git a/sparkybe-onap-application/config/portal/roles.config b/sparkybe-onap-application/config/portal/roles.config new file mode 100644 index 0000000..b8313bd --- /dev/null +++ b/sparkybe-onap-application/config/portal/roles.config @@ -0,0 +1,6 @@ +[ + { + "id":1, + "name":"View" + } +]
\ No newline at end of file diff --git a/sparkybe-onap-application/config/schemaIngest.properties b/sparkybe-onap-application/config/schemaIngest.properties new file mode 100644 index 0000000..4d06763 --- /dev/null +++ b/sparkybe-onap-application/config/schemaIngest.properties @@ -0,0 +1,7 @@ +# Properties for the SchemaLocationsBean +# The AAI Schema jar will be unpacked +schemaConfig=NA +# Files named aai_oxm_v*.xml are unpacked here: +nodeDir=${oxm.schemaNodeDir} +# Dummy folder/directory: +edgeDir=
\ No newline at end of file diff --git a/sparkybe-onap-application/config/schemas/autoSuggestMappings.json b/sparkybe-onap-application/config/schemas/autoSuggestMappings.json new file mode 100644 index 0000000..7857617 --- /dev/null +++ b/sparkybe-onap-application/config/schemas/autoSuggestMappings.json @@ -0,0 +1,10 @@ +{ + "properties" : { + "entity_suggest" : { + "type" : "completion", + "payloads" : true, + "analyzer" : "custom_analyzer", + "preserve_position_increments": false + } + } +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/schemas/autoSuggestSettings.json b/sparkybe-onap-application/config/schemas/autoSuggestSettings.json new file mode 100644 index 0000000..4525be1 --- /dev/null +++ b/sparkybe-onap-application/config/schemas/autoSuggestSettings.json @@ -0,0 +1,21 @@ +{ + "analysis": { + "filter": { + "eng_stop": { + "type": "stop", + "stopwords": "_english_" + } + }, + "analyzer": { + "custom_analyzer": { + "type": "custom", + "tokenizer": "standard", + "filter": [ + "lowercase", + "asciifolding", + "eng_stop" + ] + } + } + } + }
\ No newline at end of file diff --git a/sparkybe-onap-application/config/schemas/dynamicMappings.json b/sparkybe-onap-application/config/schemas/dynamicMappings.json new file mode 100644 index 0000000..09a00ac --- /dev/null +++ b/sparkybe-onap-application/config/schemas/dynamicMappings.json @@ -0,0 +1,14 @@ +{ + "dynamic_templates": [ + { + "strings": { + "match_mapping_type": "string", + "match": "*", + "mapping": { + "type": "string", + "index": "not_analyzed" + } + } + } + ] +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/schemas/entityCountHistoryMappings.json b/sparkybe-onap-application/config/schemas/entityCountHistoryMappings.json new file mode 100644 index 0000000..84e3aec --- /dev/null +++ b/sparkybe-onap-application/config/schemas/entityCountHistoryMappings.json @@ -0,0 +1,16 @@ +{ + "properties": { + "count": { + "type": "long" + }, + "entityType": { + "type": "string", + "index": "not_analyzed" + }, + "timestamp": { + "type": "date", + "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ" + } + } +} + diff --git a/sparkybe-onap-application/config/schemas/es_mappings.json b/sparkybe-onap-application/config/schemas/es_mappings.json new file mode 100644 index 0000000..216e3d9 --- /dev/null +++ b/sparkybe-onap-application/config/schemas/es_mappings.json @@ -0,0 +1,32 @@ +{ + "properties": { + "entityType": { + "type": "string", + "analyzer": "ngram_analyzer", + "search_analyzer": "ngram_analyzer" + }, + "entityPrimaryKeyValue": { + "type": "string", + "index": "not_analyzed" + }, + "searchTagIDs": { + "type": "string" + }, + "searchTags": { + "type": "string", + "analyzer": "ngram_analyzer" + }, + "crossEntityReferenceValues": { + "type": "string", + "analyzer": "ngram_analyzer" + }, + "link": { + "type": "string", + "index": "not_analyzed" + }, + "lastmodTimestamp": { + "type": "date", + "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||yyyy-MM-dd HH:mm:ss||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ" + } + } +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/schemas/es_settings.json b/sparkybe-onap-application/config/schemas/es_settings.json new file mode 100644 index 0000000..21a357c --- /dev/null +++ b/sparkybe-onap-application/config/schemas/es_settings.json @@ -0,0 +1,36 @@ +{ + "analysis": { + "filter": { + "ngram_filter": { + "type": "nGram", + "min_gram": 1, + "max_gram": 50, + "token_chars": [ + "letter", + "digit", + "punctuation", + "symbol" + ] + } + }, + "analyzer": { + "ngram_analyzer": { + "type": "custom", + "tokenizer": "whitespace", + "filter": [ + "lowercase", + "asciifolding", + "ngram_filter" + ] + }, + "whitespace_analyzer": { + "type": "custom", + "tokenizer": "whitespace", + "filter": [ + "lowercase", + "asciifolding" + ] + } + } + } +}
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-aggregate-vnf-search-provider.xml b/sparkybe-onap-application/config/spring-beans/sparky-aggregate-vnf-search-provider.xml new file mode 100644 index 0000000..25da171 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-aggregate-vnf-search-provider.xml @@ -0,0 +1,34 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="aggregateVnfSearchProvider" + class="org.onap.aai.sparky.aggregatevnf.search.AggregateVnfSearchProvider"> + <constructor-arg ref="searchServiceAdapter" /> + <constructor-arg name="autoSuggestIndexName" value="entityautosuggestindex" /> + <constructor-arg name="vnfSearchSuggestionRoute" + value="vnfSearch" /> + </bean> + + <bean id="aggregateSummaryProcessor" + class="org.onap.aai.sparky.aggregatevnf.search.AggregateSummaryProcessor"> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="filtersConfig" /> + <property name="vnfAggregationIndexName" value="aggregate_generic-vnf_index" /> + </bean> + + <bean id="registerAggregateVnfSearchProvider" + class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> + <property name="targetObject" ref="searchProviderRegistry" /> + <property name="targetMethod"> + <value>addSearchProviders</value> + </property> + <property name="arguments"> + <list value-type="org.onap.aai.sparky.search.api.SearchProvider"> + <ref bean="aggregateVnfSearchProvider" /> + </list> + </property> + </bean> +</beans> diff --git a/sparkybe-onap-application/config/spring-beans/sparky-elasticsearch.xml b/sparkybe-onap-application/config/spring-beans/sparky-elasticsearch.xml new file mode 100644 index 0000000..b697fed --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-elasticsearch.xml @@ -0,0 +1,32 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="elasticSearchSchemaFactory" class="org.onap.aai.sparky.sync.ElasticSearchSchemaFactory"> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + </bean> + + <bean id="elasticSearchRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig"> + <property name="endpointIpAddress" value="${elasticsearch.hostname:127.0.0.1}" /> + <property name="endpointServerPort" value="${elasticsearch.port:9200}" /> + <property name="numRequestRetries" value="5" /> + <property name="restAuthenticationMode" value="HTTP_NOAUTH" /> + <property name="connectTimeoutInMs" value="60000" /> + <property name="readTimeoutInMs" value="30000" /> + </bean> + + <bean id="elasticSearchAdapter" class="org.onap.aai.sparky.dal.ElasticSearchAdapter"> + <constructor-arg ref="elasticSearchRestEndpointConfig" /> + </bean> + + <bean id="elasticSearchEndpointConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchEndpointConfig"> + <property name="esIpAddress" value="${elasticsearch.hostname:127.0.0.1}" /> + <property name="esServerPort" value="${elasticsearch.port:9200}" /> + <property name="scrollContextTimeToLiveInMinutes" value="5" /> + <property name="scrollContextBatchRequestSize" value="5000" /> + </bean> + +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-filters.xml b/sparkybe-onap-application/config/spring-beans/sparky-filters.xml new file mode 100644 index 0000000..2dc4936 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-filters.xml @@ -0,0 +1,27 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="filtersConfig" class="org.onap.aai.sparky.search.filters.config.FiltersConfig"> + <constructor-arg name="filtersFileName" value="/filters/aaiui_filters.json" /> + <constructor-arg name="viewsFileName" value="/filters/aaiui_views.json" /> + <constructor-arg name="resourceLoader" ref="sparkyResourceLoader" /> + </bean> + + <bean id="filterElasticSearchAdapter" + class="org.onap.aai.sparky.search.filters.FilterElasticSearchAdapter"> + <constructor-arg ref="elasticSearchAdapter" /> + </bean> + + <bean id="filteredSearchHelper" class="org.onap.aai.sparky.search.filters.FilteredSearchHelper"> + <constructor-arg ref="filtersConfig" /> + <constructor-arg ref="filterElasticSearchAdapter" /> + </bean> + + <bean id="filterProcessor" class="org.onap.aai.sparky.search.filters.FilterProcessor"> + <property name="filteredSearchHelper" ref="filteredSearchHelper" /> + </bean> + +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-gizmo.xml b/sparkybe-onap-application/config/spring-beans/sparky-gizmo.xml new file mode 100644 index 0000000..cc6031a --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-gizmo.xml @@ -0,0 +1,30 @@ +<beans profile="gizmo" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="gizmoRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig"> + <property name="endpointIpAddress" value="${gizmo.hostname:127.0.0.1}" /> + <property name="endpointServerPort" value="${gizmo.port:9520}" /> + <property name="numRequestRetries" value="5" /> + <property name="restAuthenticationMode" value="${gizmo.authType:SSL_CERT}" /> + <property name="connectTimeoutInMs" value="60000" /> + <property name="readTimeoutInMs" value="30000" /> + <property name="certFileName" value="/auth/${gizmo.client-cert}" /> + <property name="certPassword" value="OBF:${gizmo.client-cert-password}" /> + <property name="truststoreFileName" value="/auth/${gizmo.trust-store}" /> + <property name="validateServerCertChain" value="false" /> + <property name="validateServerHostname" value="false" /> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + </bean> + + <bean id="gizmoAdapter" class="org.onap.aai.sparky.dal.GizmoAdapter"> + <constructor-arg ref="oxmModelLoader" /> + <constructor-arg ref="gizmoRestEndpointConfig" /> + <property name="relationshipsBasePath" + value="/services/inventory/relationships/${gizmo.apiVersion:v12}/" /> + <property name="inventoryBasePath" value="/services/inventory/${gizmo.apiVersion:v12}/" /> + </bean> + +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-global-search.xml b/sparkybe-onap-application/config/spring-beans/sparky-global-search.xml new file mode 100644 index 0000000..4504f65 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-global-search.xml @@ -0,0 +1,26 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="searchServiceRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig"> + <property name="endpointIpAddress" value="${searchservice.hostname:127.0.0.1}" /> + <property name="endpointServerPort" value="${searchservice.port:9509}" /> + <property name="numRequestRetries" value="5" /> + <property name="restAuthenticationMode" value="SSL_CERT" /> + <property name="connectTimeoutInMs" value="60000" /> + <property name="readTimeoutInMs" value="30000" /> + <property name="certFileName" value="/auth/${searchservice.client-cert}" /> + <property name="certPassword" value="${searchservice.client-cert-password}" /> + <property name="truststoreFileName" value="/auth/${searchservice.truststore}" /> + <property name="validateServerCertChain" value="false" /> + <property name="validateServerHostname" value="false" /> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + </bean> + + <bean id="searchServiceAdapter" class="org.onap.aai.sparky.search.SearchServiceAdapter"> + <constructor-arg ref="searchServiceRestEndpointConfig" /> + <constructor-arg name="serviceApiVersion" value="v1" /> + </bean> +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-oxm-default.xml b/sparkybe-onap-application/config/spring-beans/sparky-oxm-default.xml new file mode 100644 index 0000000..98ce1ad --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-oxm-default.xml @@ -0,0 +1,13 @@ +<beans profile="oxm-default" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="oxmModelLoader" class="org.onap.aai.sparky.config.oxm.OxmModelLoader" + init-method="loadModel"> + <constructor-arg ref="oxmModelProcessorSet" /> + <constructor-arg ref="nodeIngestor" /> + </bean> + +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-oxm-override.xml b/sparkybe-onap-application/config/spring-beans/sparky-oxm-override.xml new file mode 100644 index 0000000..5c6839b --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-oxm-override.xml @@ -0,0 +1,14 @@ +<beans profile="oxm-override" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="oxmModelLoader" class="org.onap.aai.sparky.config.oxm.OxmModelLoader" + init-method="loadModel"> + <constructor-arg name="apiVersionOverride" value="${oxm.apiVersionOverride}" /> + <constructor-arg ref="oxmModelProcessorSet" /> + <constructor-arg ref="nodeIngestor" /> + </bean> + +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-oxm.xml b/sparkybe-onap-application/config/spring-beans/sparky-oxm.xml new file mode 100644 index 0000000..ed084dc --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-oxm.xml @@ -0,0 +1,185 @@ +<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" + xmlns:task="http://www.springframework.org/schema/task" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd + http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd + http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd"> + + <context:property-placeholder + location="file:${CONFIG_HOME}/schemaIngest.properties" + ignore-unresolvable="true" /> + + <bean id="crossEntityReferenceLookup" + class="org.onap.aai.sparky.config.oxm.CrossEntityReferenceLookup" /> + + <bean id="geoEntityLookup" class="org.onap.aai.sparky.config.oxm.GeoEntityLookup" /> + + <bean id="oxmEntityLookup" class="org.onap.aai.sparky.config.oxm.OxmEntityLookup" /> + + <bean id="searchableEntityLookup" class="org.onap.aai.sparky.config.oxm.SearchableEntityLookup" /> + + <bean id="suggestionEntityLookup" class="org.onap.aai.sparky.config.oxm.SuggestionEntityLookup"> + <constructor-arg ref="filtersConfig" /> + </bean> + + <bean id="oxmModelProcessorSet" class="org.springframework.beans.factory.config.SetFactoryBean"> + <property name="targetSetClass" value="java.util.HashSet" /> + <property name="sourceSet"> + <set> + <ref bean="crossEntityReferenceLookup" /> + <ref bean="geoEntityLookup" /> + <ref bean="oxmEntityLookup" /> + <ref bean="searchableEntityLookup" /> + <ref bean="suggestionEntityLookup" /> + </set> + </property> + </bean> + + <bean id="schemaLocationsBean" class="org.onap.aai.setup.SchemaLocationsBean"> + <!-- When running with AJSC these properties must be injected directly. + The reason for this is unknown. --> + <property name="nodeDirectory" value="${nodeDir}" /> + <property name="edgeDirectory" value="${edgeDir}" /> + </bean> + + <bean id="oxmConfigTranslator" class="org.onap.aai.sparky.config.oxm.OxmConfigTranslator"> + <constructor-arg ref="schemaLocationsBean" /> + </bean> + <bean id="nodeIngestor" class="org.onap.aai.nodes.NodeIngestor"> + <constructor-arg ref="oxmConfigTranslator" /> + </bean> + + <bean id="searchProviderRegistry" + class="org.onap.aai.sparky.search.registry.SearchProviderRegistry" /> + + <bean id="sparkyResourceLoader" class="org.onap.aai.sparky.config.SparkyResourceLoader"> + <property name="configHomeEnvVar" value="CONFIG_HOME" /> + </bean> + + <bean id="unifiedSearchProcessor" class="org.onap.aai.sparky.search.UnifiedSearchProcessor"> + <property name="searchProviderRegistry" ref="searchProviderRegistry" /> + </bean> + + <bean id="entityCountHistoryProcessor" class="org.onap.aai.sparky.search.EntityCountHistoryProcessor"> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg name="entityTypesToSummarizeDelimitedList" + value="customer,service-instance,complex,pserver,vserver,vnf" /> + <constructor-arg name="vnfEntityTypesDelimitedList" + value="vnf,newvce,vce,vpe" /> + <constructor-arg name="entityCountHistoryIndexName" + value="entitycounthistoryindex" /> + </bean> + + <bean id="attributeUpdater" class="org.onap.aai.sparky.editattributes.AttributeUpdater"> + <constructor-arg ref="oxmModelLoader" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="activeInventoryAdapter" /> + </bean> + + <bean id="attributeEditProcessor" + class="org.onap.aai.sparky.editattributes.AttributeEditProcessor"> + <constructor-arg ref="attributeUpdater" /> + </bean> + + <bean id="geoVisualizationProcessor" class="org.onap.aai.sparky.inventory.GeoVisualizationProcessor"> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg name="topographicalSearchIndexName" + value="topographicalsearchindex" /> + </bean> + + <bean id="pairingHashMap" class="org.springframework.beans.factory.config.MapFactoryBean"> + <property name="targetMapClass"> + <value>java.util.HashMap</value> + </property> + <property name="sourceMap"> + <map key-type="java.lang.String" value-type="java.lang.String"> + <entry key="volume-group-id" value="called" /> + <entry key="volume-group-name" value="called" /> + <entry key="physical-location-id" value="called" /> + <entry key="data-center-code" value="called" /> + <entry key="complex-name" value="called" /> + <entry key="tenant-id" value="called" /> + <entry key="tenant-name" value="called" /> + <entry key="vserver-id" value="called" /> + <entry key="vserver-name" value="called" /> + <entry key="vserver-name2" value="called" /> + <entry key="hostname" value="called" /> + <entry key="pserver-name2" value="called" /> + <entry key="pserver-id" value="called" /> + <entry key="global-customer-id" value="called" /> + <entry key="subscriber-name" value="called" /> + <entry key="service-instance-id" value="called" /> + <entry key="service-instance-name" value="called" /> + <entry key="link-name" value="called" /> + <entry key="vpn-id" value="called" /> + <entry key="vpn-name" value="called" /> + <entry key="vpe-id" value="called" /> + <entry key="vnf-id" value="called" /> + <entry key="vnf-name" value="called" /> + <entry key="vnf-name2" value="called" /> + <entry key="vnfc-name" value="called" /> + <entry key="network-id" value="called" /> + <entry key="network-name" value="called" /> + <entry key="network-policy-id" value="called" /> + <entry key="vf-module-id" value="called" /> + <entry key="vf-module-name" value="called" /> + <entry key="vnf-id2" value="called" /> + <entry key="pnf-name" value="called" /> + <entry key="circuit-id" value="called" /> + <entry key="id" value="called" /> + <entry key="group-id" value="called" /> + <entry key="group-name" value="called" /> + <entry key="street1" value="at" /> + <entry key="street2" value="at" /> + <entry key="code" value="at" /> + <entry key="ipv4-oam-address" value="at" /> + <entry key="network-policy-fqdn" value="at" /> + </map> + </property> + </bean> + + <bean id="suggestiveSearchConfigs" class="org.onap.aai.sparky.search.config.SuggestionConfig"> + <property name="defaultPairingValue" value="with" /> + <property name="pairingList" ref="pairingHashMap"></property> + <property name="stopWords"> + <list value-type="java.lang.String"> + <value>a</value> + <value>an</value> + <value>and</value> + <value>are</value> + <value>as</value> + <value>at</value> + <value>be</value> + <value>but</value> + <value>by</value> + <value>called</value> + <value>for</value> + <value>if</value> + <value>in</value> + <value>into</value> + <value>is</value> + <value>it</value> + <value>no</value> + <value>not</value> + <value>of</value> + <value>on</value> + <value>or</value> + <value>such</value> + <value>that</value> + <value>the</value> + <value>their</value> + <value>then</value> + <value>there</value> + <value>these</value> + <value>they</value> + <value>this</value> + <value>to</value> + <value>was</value> + <value>will</value> + <value>with</value> + </list> + </property> + + </bean> + +</beans> diff --git a/sparkybe-onap-application/config/spring-beans/sparky-resources.xml b/sparkybe-onap-application/config/spring-beans/sparky-resources.xml new file mode 100644 index 0000000..2395f82 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-resources.xml @@ -0,0 +1,30 @@ +<beans profile="resources" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="aaiRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig"> + <property name="endpointIpAddress" value="${resources.hostname:127.0.0.1}" /> + <property name="endpointServerPort" value="${resources.port:8443}" /> + <property name="numRequestRetries" value="5" /> + <property name="restAuthenticationMode" value="${resources.authType:SSL_BASIC}" /> + <property name="connectTimeoutInMs" value="60000" /> + <property name="readTimeoutInMs" value="30000" /> + <property name="basicAuthUserName" value="${resources.basicAuthUserName:}" /> + <property name="basicAuthPassword" value="${resources.basicAuthPassword:}" /> + <property name="certFileName" value="/auth/${resources.client-cert}" /> + <property name="certPassword" value="OBF:${resources.client-cert-password}" /> + <property name="truststoreFileName" value="/auth/${resources.trust-store}" /> + <property name="validateServerCertChain" value="false" /> + <property name="validateServerHostname" value="false" /> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + </bean> + + <bean id="activeInventoryAdapter" class="org.onap.aai.sparky.dal.ActiveInventoryAdapter"> + <constructor-arg ref="oxmModelLoader" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="aaiRestEndpointConfig" /> + </bean> + +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-search-service.xml b/sparkybe-onap-application/config/spring-beans/sparky-search-service.xml new file mode 100644 index 0000000..c8d20c6 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-search-service.xml @@ -0,0 +1,26 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="searchServiceRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig"> + <property name="endpointIpAddress" value="${searchservice.hostname:127.0.0.1}" /> + <property name="endpointServerPort" value="${searchservice.port:9509}" /> + <property name="numRequestRetries" value="5" /> + <property name="restAuthenticationMode" value="SSL_CERT" /> + <property name="connectTimeoutInMs" value="60000" /> + <property name="readTimeoutInMs" value="30000" /> + <property name="certFileName" value="/auth/${searchservice.client-cert:}" /> + <property name="certPassword" value="OBF:${searchservice.client-cert-password:}" /> + <property name="truststoreFileName" value="/auth/${searchservice.truststore:}" /> + <property name="validateServerCertChain" value="false" /> + <property name="validateServerHostname" value="false" /> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + </bean> + + <bean id="searchServiceAdapter" class="org.onap.aai.sparky.search.SearchServiceAdapter"> + <constructor-arg ref="searchServiceRestEndpointConfig" /> + <constructor-arg name="serviceApiVersion" value="v1" /> + </bean> +</beans>
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-subscription-service.xml b/sparkybe-onap-application/config/spring-beans/sparky-subscription-service.xml new file mode 100644 index 0000000..2057b9c --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-subscription-service.xml @@ -0,0 +1,38 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + + <bean id="subscriptionConfig" + class="org.onap.aai.sparky.subscription.config.SubscriptionConfig"> + <property name="subscriptionTarget" value="" /> + <property name="subscriptionOrigin" value="" /> + <property name="subscriptionMessageType" value="" /> + <property name="subscriptionTopic" value="" /> + <property name="launchOITarget" value="" /> + <property name="launchOIOrigin" value="" /> + <property name="launchOIMessageType" value="" /> + <property name="launchOITopic" value="" /> + <property name="annEntitiyTypes"> + <list value-type="java.lang.String"> + <value>pserver</value> + <value>pnf</value> + </list> + </property> + <property name="isLaunchOIEnabled" value="false" /> + </bean> + + <bean id="subscriptionService" + class="org.onap.aai.sparky.subscription.services.SubscriptionService"> + <constructor-arg ref="subscriptionConfig" /> + </bean> + + <bean id="subscriptionServiceProcessor" + class="org.onap.aai.sparky.subscription.SubscriptionServiceProcessor"> + <constructor-arg ref="subscriptionService" /> + </bean> + +</beans> +
\ No newline at end of file diff --git a/sparkybe-onap-application/config/spring-beans/sparky-sync.xml b/sparkybe-onap-application/config/spring-beans/sparky-sync.xml new file mode 100644 index 0000000..34c063b --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-sync.xml @@ -0,0 +1,328 @@ +<beans profile="sync" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="elasticSearchNetworkStatConfig" class="org.onap.aai.sparky.sync.config.NetworkStatisticsConfig"> + <property name="numSamplesPerThreadForRunningAverage" value="100" /> + <property name="bytesHistogramLabel" value="[Response Size In Bytes]" /> + <property name="bytesHistogramMaxYAxis" value="1000000" /> + <property name="bytesHistogramNumBins" value="20" /> + <property name="bytesHistogramNumDecimalPoints" value="2" /> + <property name="queueLengthHistogramLabel" value="[Queue Item Length]" /> + <property name="queueLengthHistogramMaxYAxis" value="20000" /> + <property name="queueLengthHistogramNumBins" value="20" /> + <property name="queueLengthHistogramNumDecimalPoints" value="2" /> + <property name="taskAgeHistogramLabel" value="[Task Age In Ms]" /> + <property name="taskAgeHistogramMaxYAxis" value="600000" /> + <property name="taskAgeHistogramNumBins" value="20" /> + <property name="taskAgeHistogramNumDecimalPoints" value="2" /> + <property name="responseTimeHistogramLabel" value="[Response Time In Ms]" /> + <property name="responseTimeHistogramMaxYAxis" value="1000" /> + <property name="responseTimeHistogramNumBins" value="20" /> + <property name="responseTimeHistogramNumDecimalPoints" value="2" /> + <property name="tpsHistogramLabel" value="[Transactions Per Second]" /> + <property name="tpsHistogramMaxYAxis" value="100" /> + <property name="tpsHistogramNumBins" value="20" /> + <property name="tpsHistogramNumDecimalPoints" value="2" /> + </bean> + + <bean id="aaiNetworkStatConfig" class="org.onap.aai.sparky.sync.config.NetworkStatisticsConfig"> + <property name="numSamplesPerThreadForRunningAverage" value="100" /> + <property name="bytesHistogramLabel" value="[Response Size In Bytes]" /> + <property name="bytesHistogramMaxYAxis" value="1000000" /> + <property name="bytesHistogramNumBins" value="20" /> + <property name="bytesHistogramNumDecimalPoints" value="2" /> + <property name="queueLengthHistogramLabel" value="[Queue Item Length]" /> + <property name="queueLengthHistogramMaxYAxis" value="20000" /> + <property name="queueLengthHistogramNumBins" value="20" /> + <property name="queueLengthHistogramNumDecimalPoints" value="2" /> + <property name="taskAgeHistogramLabel" value="[Task Age In Ms]" /> + <property name="taskAgeHistogramMaxYAxis" value="600000" /> + <property name="taskAgeHistogramNumBins" value="20" /> + <property name="taskAgeHistogramNumDecimalPoints" value="2" /> + <property name="responseTimeHistogramLabel" value="[Response Time In Ms]" /> + <property name="responseTimeHistogramMaxYAxis" value="10000" /> + <property name="responseTimeHistogramNumBins" value="20" /> + <property name="responseTimeHistogramNumDecimalPoints" value="2" /> + <property name="tpsHistogramLabel" value="[Transactions Per Second]" /> + <property name="tpsHistogramMaxYAxis" value="100" /> + <property name="tpsHistogramNumBins" value="20" /> + <property name="tpsHistogramNumDecimalPoints" value="2" /> + </bean> + + + + <bean id="syncControllerRegistry" class="org.onap.aai.sparky.sync.SyncControllerRegistry" /> + + <bean id="aggregationSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig"> + <property name="controllerName" value="Aggregation-Sync-Controller" /> + <property name="enabled" value="${aggregationSyncEnabled:true}" /> + <property name="syncTaskDelayInMs" value="5000" /> + <property name="syncTaskFrequencyInDays" value="1" /> + <property name="numSyncControllerWorkers" value="2" /> + <property name="runOnceSyncEnabled" value="true" /> + <property name="periodicSyncEnabled" value="false" /> + <property name="numInternalSyncWorkers" value="2" /> + <property name="numSyncElasticWorkers" value="5" /> + <property name="numSyncActiveInventoryWorkers" value="5" /> + <property name="targetSyncStartTimeStamp" value="06:00:00 UTC+00:00" /> + </bean> + + <bean id="aggregationSyncControllerFactory" + class="org.onap.aai.sparky.aggregation.sync.AggregationSyncControllerFactory" + init-method="registerController"> + + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="aggregationSyncControllerConfig" /> + <constructor-arg ref="syncControllerRegistry" /> + <constructor-arg ref="suggestionEntityLookup" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="elasticSearchSchemaFactory" /> + + <property name="esAdapter" ref="elasticSearchAdapter" /> + <property name="esStatConfig" ref="elasticSearchNetworkStatConfig" /> + + <property name="aaiAdapter" ref="activeInventoryAdapter" /> + <property name="aaiStatConfig" ref="aaiNetworkStatConfig" /> + + <property name="aggregationEntityToIndexMap"> + <map> + <entry key="generic-vnf" value="aggregate_generic-vnf_index" /> + </map> + </property> + + <property name="indexNameToSchemaConfigMap"> + <map> + <entry key="aggregate_generic-vnf_index"> + <bean class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="aggregate_generic-vnf_index" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/dynamicMappings.json" /> + </bean> + </entry> + </map> + </property> + + </bean> + + + <bean id="historicalEntitySyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig"> + + <property name="controllerName" value="Historical-Entity-Sync-Controller" /> + <property name="enabled" value="${historicalEntitySyncEnabled:true}" /> + <property name="syncTaskDelayInMs" value="5000" /> + <property name="syncTaskFrequencyInDays" value="1" /> + <property name="numSyncControllerWorkers" value="2" /> + <property name="runOnceSyncEnabled" value="true" /> + <property name="periodicSyncEnabled" value="false" /> + <property name="numInternalSyncWorkers" value="2" /> + <property name="numSyncElasticWorkers" value="5" /> + <property name="numSyncActiveInventoryWorkers" value="5" /> + <property name="targetSyncStartTimeStamp" value="06:00:00 UTC+00:00" /> + </bean> + + <bean id="historicalEntitySchemaConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="entitycounthistoryindex" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/entityCountHistoryMappings.json" /> + <property name="indexSettingsFileName" value="/schemas/es_settings.json" /> + </bean> + + <bean id="historicalEntitySyncController" + class="org.onap.aai.sparky.aggregation.sync.HistoricalEntitySyncController" + init-method="registerController"> + + <constructor-arg ref="historicalEntitySyncControllerConfig" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="historicalEntitySchemaConfig" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg value="60" /> + <constructor-arg ref="aaiNetworkStatConfig" /> + <constructor-arg ref="elasticSearchNetworkStatConfig" /> + <constructor-arg ref="searchableEntityLookup" /> + <constructor-arg ref="elasticSearchSchemaFactory" /> + + <property name="syncControllerRegistry" ref="syncControllerRegistry" /> + + </bean> + + + + <bean id="autoSuggestionSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig"> + + <property name="controllerName" value="Auto-Suggestion-Sync-Controller" /> + <property name="enabled" value="${autoSuggestSyncEnabled:true}" /> + <property name="syncTaskDelayInMs" value="5000" /> + <property name="syncTaskFrequencyInDays" value="1" /> + <property name="numSyncControllerWorkers" value="2" /> + <property name="runOnceSyncEnabled" value="true" /> + <property name="periodicSyncEnabled" value="false" /> + <property name="numInternalSyncWorkers" value="2" /> + <property name="numSyncElasticWorkers" value="5" /> + <property name="numSyncActiveInventoryWorkers" value="5" /> + <property name="targetSyncStartTimeStamp" value="06:00:00 UTC+00:00" /> + </bean> + + <bean id="autoSuggestionEntitySchemaConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="entityautosuggestindex" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/autoSuggestMappings.json" /> + <property name="indexSettingsFileName" value="/schemas/autoSuggestSettings.json" /> + </bean> + + <bean id="autoSuggestionEntitySyncController" + class="org.onap.aai.sparky.autosuggestion.sync.AutoSuggestionSyncController" + init-method="registerController"> + + <constructor-arg ref="autoSuggestionSyncControllerConfig" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="autoSuggestionEntitySchemaConfig" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="aaiNetworkStatConfig" /> + <constructor-arg ref="elasticSearchNetworkStatConfig" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="suggestionEntityLookup" /> + <constructor-arg ref="filtersConfig" /> + <constructor-arg ref="elasticSearchSchemaFactory" /> + + + + <property name="syncControllerRegistry" ref="syncControllerRegistry" /> + + </bean> + + + + <bean id="vnfAliasSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig"> + + <property name="controllerName" value="Vnf-Alias-Sync-Controller" /> + <property name="enabled" value="${vnfAliasSyncEnabled:true}" /> + <property name="syncTaskDelayInMs" value="5000" /> + <property name="syncTaskFrequencyInDays" value="1" /> + <property name="numSyncControllerWorkers" value="2" /> + <property name="runOnceSyncEnabled" value="true" /> + <property name="periodicSyncEnabled" value="false" /> + <property name="numInternalSyncWorkers" value="2" /> + <property name="numSyncElasticWorkers" value="5" /> + <property name="numSyncActiveInventoryWorkers" value="5" /> + <property name="targetSyncStartTimeStamp" value="06:00:00 UTC+00:00" /> + </bean> + + <bean id="vnfAliasEntitySchemaConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="entityautosuggestindex" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/autoSuggestMappings.json" /> + <property name="indexSettingsFileName" value="/schemas/autoSuggestSettings.json" /> + </bean> + + <bean id="vnfAliasSyncController" + class="org.onap.aai.sparky.autosuggestion.sync.VnfAliasSyncController" + init-method="registerController"> + + <constructor-arg ref="vnfAliasSyncControllerConfig" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="vnfAliasEntitySchemaConfig" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="aaiNetworkStatConfig" /> + <constructor-arg ref="elasticSearchNetworkStatConfig" /> + <constructor-arg ref="filtersConfig" /> + <constructor-arg ref="elasticSearchSchemaFactory" /> + + <property name="syncControllerRegistry" ref="syncControllerRegistry" /> + + </bean> + + <bean id="geoSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig"> + + <property name="controllerName" value="Geo-Sync-Controller" /> + <property name="enabled" value="${geoSyncEnabled:true}" /> + <property name="syncTaskDelayInMs" value="5000" /> + <property name="syncTaskFrequencyInDays" value="1" /> + <property name="numSyncControllerWorkers" value="2" /> + <property name="runOnceSyncEnabled" value="true" /> + <property name="periodicSyncEnabled" value="false" /> + <property name="numInternalSyncWorkers" value="2" /> + <property name="numSyncElasticWorkers" value="5" /> + <property name="numSyncActiveInventoryWorkers" value="5" /> + <property name="targetSyncStartTimeStamp" value="06:00:00 UTC+00:00" /> + </bean> + + <bean id="geoEntitySchemaConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="topographicalsearchindex" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/dynamicMappings.json" /> + </bean> + + <bean id="geoSyncController" class="org.onap.aai.sparky.topology.sync.GeoSyncController" + init-method="registerController"> + + <constructor-arg ref="geoSyncControllerConfig" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="geoEntitySchemaConfig" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="aaiNetworkStatConfig" /> + <constructor-arg ref="elasticSearchNetworkStatConfig" /> + <constructor-arg ref="geoEntityLookup" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="elasticSearchSchemaFactory" /> + + <property name="syncControllerRegistry" ref="syncControllerRegistry" /> + + </bean> + + + + <bean id="viewInspectControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig"> + + <property name="controllerName" value="View-Inspect-Sync-Controller" /> + <property name="enabled" value="${viewInspectSyncEnabled:true}" /> + <property name="syncTaskDelayInMs" value="5000" /> + <property name="syncTaskFrequencyInDays" value="1" /> + <property name="numSyncControllerWorkers" value="2" /> + <property name="runOnceSyncEnabled" value="true" /> + <property name="periodicSyncEnabled" value="false" /> + <property name="numInternalSyncWorkers" value="2" /> + <property name="numSyncElasticWorkers" value="5" /> + <property name="numSyncActiveInventoryWorkers" value="5" /> + <property name="targetSyncStartTimeStamp" value="06:00:00 UTC+00:00" /> + </bean> + + <bean id="viewInspectSyncController" + class="org.onap.aai.sparky.viewinspect.sync.ViewInspectSyncController" + init-method="registerController"> + + <constructor-arg ref="viewInspectControllerConfig" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="viewInspectSchemaConfig" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="aaiNetworkStatConfig" /> + <constructor-arg ref="elasticSearchNetworkStatConfig" /> + <constructor-arg ref="crossEntityReferenceLookup" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="searchableEntityLookup" /> + <constructor-arg ref="elasticSearchSchemaFactory" /> + + <property name="syncControllerRegistry" ref="syncControllerRegistry" /> + + </bean> + + + + <bean id="syncControllerService" class="org.onap.aai.sparky.sync.SyncControllerService" + destroy-method="shutdown"> + <constructor-arg ref="syncControllerRegistry" /> + <constructor-arg value="5" /> + <constructor-arg value="5" /> + </bean> +</beans> diff --git a/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-search-provider.xml b/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-search-provider.xml new file mode 100644 index 0000000..ac3c920 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-search-provider.xml @@ -0,0 +1,35 @@ +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="viewInspectSearchProvider" + class="org.onap.aai.sparky.viewandinspect.search.ViewInspectSearchProvider"> + <constructor-arg ref="searchServiceAdapter" /> + <constructor-arg ref="suggestiveSearchConfigs" /> + <constructor-arg name="viewInspectIndexName" value="${viewInspectIndex:entity-search-index}" /> + <constructor-arg name="viewInspectSuggestionRoute" + value="schema" /> + <constructor-arg ref="oxmEntityLookup" /> + + <property name="additionalSearchSuggestionText"> + <value>Schema</value> + </property> + + </bean> + + <bean id="registerViewInspectSearchProvider" + class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> + <property name="targetObject" ref="searchProviderRegistry" /> + <property name="targetMethod"> + <value>addSearchProviders</value> + </property> + <property name="arguments"> + <list value-type="org.onap.aai.sparky.search.api.SearchProvider"> + <ref bean="viewInspectSearchProvider" /> + </list> + </property> + </bean> + +</beans> diff --git a/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-with-gizmo.xml b/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-with-gizmo.xml new file mode 100644 index 0000000..f709446 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-with-gizmo.xml @@ -0,0 +1,63 @@ +<beans profile="gizmo" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="visualizationConfigurations" + class="org.onap.aai.sparky.viewandinspect.config.VisualizationConfigs"> + <property name="maxSelfLinkTraversalDepth" value="2" /> + <property name="visualizationDebugEnabled" value="false" /> + <property name="aaiEntityNodeDescriptors" value="/descriptors/aaiEntityNodeDescriptors.json" /> + <property name="generalNodeClassName" value="generalNodeClass" /> + <property name="searchNodeClassName" value="searchedNodeClass" /> + <property name="selectedSearchedNodeClassName" value="selectedSearchedNodeClass" /> + <property name="numOfThreadsToFetchNodeIntegrity" value="20" /> + <property name="makeAllNeighborsBidirectional" value="false" /> + <property name="gizmoEnabled" value="true" /> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + + <property name="shallowEntities"> + <list value-type="java.lang.String"> + <value>cloud-region</value> + <value>complex</value> + <value>vnf-image</value> + <value>image</value> + <value>flavor</value> + <value>availability-zone</value> + <value>tenant</value> + <value>network-profile</value> + <value>l-interface</value> + </list> + </property> + + </bean> + + <bean id="viewInspectSchemaConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="entity-search-index" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/es_mappings.json" /> + <property name="indexSettingsFileName" value="/schemas/es_settings.json" /> + </bean> + + <bean id="baseVisualizationService" + class="org.onap.aai.sparky.viewandinspect.services.BaseVisualizationService"> + <constructor-arg ref="oxmModelLoader" /> + <constructor-arg ref="visualizationConfigurations" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg ref="gizmoAdapter" /> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="viewInspectSchemaConfig" /> + <constructor-arg name="numActiveInventoryWorkers" value="50" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="subscriptionConfig" /> + </bean> + + <bean id="schemaVisualizationProcessor" + class="org.onap.aai.sparky.viewandinspect.SchemaVisualizationProcessor"> + <property name="visualizationService" ref="baseVisualizationService" /> + </bean> + +</beans> diff --git a/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-with-resources.xml b/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-with-resources.xml new file mode 100644 index 0000000..97fa807 --- /dev/null +++ b/sparkybe-onap-application/config/spring-beans/sparky-view-inspect-with-resources.xml @@ -0,0 +1,66 @@ +<beans profile="resources" xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean id="visualizationConfigurations" + class="org.onap.aai.sparky.viewandinspect.config.VisualizationConfigs"> + <property name="maxSelfLinkTraversalDepth" value="2" /> + <property name="visualizationDebugEnabled" value="false" /> + <property name="aaiEntityNodeDescriptors" value="/descriptors/aaiEntityNodeDescriptors.json" /> + <property name="generalNodeClassName" value="generalNodeClass" /> + <property name="searchNodeClassName" value="searchedNodeClass" /> + <property name="selectedSearchedNodeClassName" value="selectedSearchedNodeClass" /> + <property name="numOfThreadsToFetchNodeIntegrity" value="20" /> + <property name="makeAllNeighborsBidirectional" value="false" /> + <property name="gizmoEnabled" value="false" /> + <property name="resourceLoader" ref="sparkyResourceLoader" /> + + <property name="shallowEntities"> + <list value-type="java.lang.String"> + <value>cloud-region</value> + <value>complex</value> + <value>vnf-image</value> + <value>image</value> + <value>flavor</value> + <value>availability-zone</value> + <value>tenant</value> + <value>network-profile</value> + <value>l-interface</value> + </list> + </property> + + </bean> + + <bean id="viewInspectSchemaConfig" + class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig"> + <property name="indexName" value="entity-search-index" /> + <property name="indexDocType" value="default" /> + <property name="indexMappingsFileName" value="/schemas/es_mappings.json" /> + <property name="indexSettingsFileName" value="/schemas/es_settings.json" /> + </bean> + + <bean id="baseVisualizationService" + class="org.onap.aai.sparky.viewandinspect.services.BaseVisualizationService"> + <constructor-arg ref="oxmModelLoader" /> + <constructor-arg ref="visualizationConfigurations" /> + <constructor-arg ref="activeInventoryAdapter" /> + <constructor-arg name="gizmoAdapter"> + <null /> + </constructor-arg> + <constructor-arg ref="elasticSearchAdapter" /> + <constructor-arg ref="elasticSearchEndpointConfig" /> + <constructor-arg ref="viewInspectSchemaConfig" /> + <constructor-arg name="numActiveInventoryWorkers" + value="50" /> + <constructor-arg ref="oxmEntityLookup" /> + <constructor-arg ref="subscriptionConfig" /> + </bean> + + <bean id="schemaVisualizationProcessor" + class="org.onap.aai.sparky.viewandinspect.SchemaVisualizationProcessor"> + <property name="visualizationService" ref="baseVisualizationService" /> + </bean> + +</beans> diff --git a/sparkybe-onap-application/pom.xml b/sparkybe-onap-application/pom.xml index 287debe..622ac67 100644 --- a/sparkybe-onap-application/pom.xml +++ b/sparkybe-onap-application/pom.xml @@ -452,6 +452,37 @@ </executions> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-resources-plugin</artifactId> + <executions> + <execution> + <id>copy-config-to-target</id> + <phase>package</phase> + <goals> + <goal>copy-resources</goal> + </goals> + <configuration> + <outputDirectory>target/config</outputDirectory> + <overwrite>true</overwrite> + <resources> + <resource> + <directory>${basedir}/config</directory> + <filtering>true</filtering> + <includes> + <include>**/*</include> + </includes> + <excludes> + <exclude>**/auth/*</exclude> + </excludes> + </resource> + </resources> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> diff --git a/sparkybe-onap-application/src/main/docker/Dockerfile b/sparkybe-onap-application/src/main/docker/Dockerfile index 52e3e84..3f05ff9 100644 --- a/sparkybe-onap-application/src/main/docker/Dockerfile +++ b/sparkybe-onap-application/src/main/docker/Dockerfile @@ -16,18 +16,21 @@ RUN export JAVA_HOME # Build up the deployment folder structure RUN mkdir -p $MICRO_HOME RUN mkdir -p $BIN_HOME +RUN mkdir -p $MICRO_HOME/config/ RUN mkdir -p $MICRO_HOME/lib/ RUN mkdir -p $MICRO_HOME/static/ ADD *.jar $MICRO_HOME/lib/ ADD scripts/* $MICRO_HOME/bin/ COPY static/ $MICRO_HOME/static/ +COPY config/ $MICRO_HOME/config/ COPY oxm $MICRO_HOME/oxm/ RUN chmod 755 $MICRO_HOME/bin/* RUN chmod 755 $MICRO_HOME/lib/* RUN chmod 755 $MICRO_HOME/static/* +RUN chmod 755 $MICRO_HOME/config/* RUN ln -s /logs $MICRO_HOME/logs diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/Application.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/Application.java index 2334297..9958d72 100644 --- a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/Application.java +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/Application.java @@ -20,101 +20,19 @@ */ package org.onap.aai.sparky; -import javax.servlet.Filter; - -import org.apache.camel.component.servlet.CamelHttpTransportServlet; import org.onap.aai.sparky.config.PropertyPasswordConfiguration; -import org.onap.aai.sparky.security.filter.LoginFilter; -import org.openecomp.portalsdk.core.onboarding.crossapi.PortalRestAPIProxy; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.web.servlet.FilterRegistrationBean; -import org.springframework.boot.web.servlet.ServletRegistrationBean; -import org.springframework.context.annotation.Bean; @SpringBootApplication public class Application { - private static final String SPARKY_SSL_ENABLED_PROPERTY = "sparky.ssl.enabled"; - private static final String SPARKY_PORTAL_ENABLED_PROPERTY = "sparky.portal.enabled"; - private static final String SPARKY_SSL_ENABLED_ENV = "SPARKY_SSL_ENABLED"; - private static final String SPARKY_PORTAL_ENABLED_ENV = "SPARKY_PORTAL_ENABLED"; - - private Filter loginFilter = new LoginFilter(); - public static void main(String[] args) { - setDefaultProperties(); SpringApplication app = new SpringApplication(Application.class); app.addInitializers(new PropertyPasswordConfiguration()); app.run(args); } - - protected static void setDefaultProperties() { - - /* - * By default we want ssl and portal integration, however it is possible to turn these off with - * properties for local development and interop in some situations. - */ - - if (System.getenv(SPARKY_SSL_ENABLED_ENV) == null) { - System.setProperty(SPARKY_SSL_ENABLED_PROPERTY, "true"); - } else { - System.setProperty(SPARKY_SSL_ENABLED_PROPERTY, System.getenv(SPARKY_SSL_ENABLED_ENV)); - } - - boolean sslEnabled = Boolean.parseBoolean(System.getProperty(SPARKY_SSL_ENABLED_PROPERTY)); - - if (sslEnabled) { - System.setProperty("server.ssl.key-store-password", System.getenv("KEYSTORE_PASSWORD")); - System.setProperty("server.ssl.key-password", System.getenv("KEYSTORE_ALIAS_PASSWORD")); - } - - if (System.getenv(SPARKY_PORTAL_ENABLED_ENV) == null) { - System.setProperty(SPARKY_PORTAL_ENABLED_PROPERTY, "true"); - } else { - System.setProperty(SPARKY_PORTAL_ENABLED_PROPERTY, System.getenv(SPARKY_PORTAL_ENABLED_ENV)); - } - } - - /* - * This initialization code enabled access to aai-ui-proxy-processor - */ - @Bean - ServletRegistrationBean servletRegistrationBean() { - final ServletRegistrationBean servlet = - new ServletRegistrationBean(new CamelHttpTransportServlet(), "/rest/*"); - servlet.setName("CamelServlet"); - return servlet; - } - - /** - * bind LoginFilter - */ - @Bean - @ConditionalOnProperty(value = "sparky.portal.enabled", havingValue = "true") - public FilterRegistrationBean loginFilterRegistrationBean() { - FilterRegistrationBean registration = new FilterRegistrationBean(); - - registration.setFilter(loginFilter); - registration.addUrlPatterns("/*"); - - return registration; - } - - /** - * Bind the Portal API Proxy - */ - @Bean - @ConditionalOnProperty(value = "sparky.portal.enabled", havingValue = "true") - public ServletRegistrationBean portalApiProxy() { - - final ServletRegistrationBean servlet = - new ServletRegistrationBean(new PortalRestAPIProxy(), "/api/v2/*"); - servlet.setName("PortalRestApiProxy"); - return servlet; - } - + } diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/aai/FrontEndLayoutApi.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/aai/FrontEndLayoutApi.java index 0590cd6..ab74074 100644 --- a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/aai/FrontEndLayoutApi.java +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/aai/FrontEndLayoutApi.java @@ -31,9 +31,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; @RestController public class FrontEndLayoutApi { - public FrontEndLayoutApi() { - } @RequestMapping(value = "/layouts", method = {RequestMethod.GET}) diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/SparkySslConfigLoader.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/FilterAggregationRouter.java index c216ddd..634dcc5 100644 --- a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/SparkySslConfigLoader.java +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/FilterAggregationRouter.java @@ -1,6 +1,6 @@ /** * ============LICENSE_START======================================================= - * org.onap.aai + * SPARKY (AAI UI service) * ================================================================================ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. * Copyright © 2017-2018 Amdocs @@ -18,15 +18,20 @@ * limitations under the License. * ============LICENSE_END========================================================= */ -package org.onap.aai.sparky.config; +package org.onap.aai.sparky.camel; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.PropertySource; +import org.apache.camel.spring.SpringRouteBuilder; +import org.springframework.stereotype.Component; -@Configuration -@ConditionalOnProperty(value="sparky.ssl.enabled", havingValue = "true") -@PropertySource("file:${CONFIG_HOME}/sparky-ssl-config.properties") -public class SparkySslConfigLoader { +@Component +public class FilterAggregationRouter extends SpringRouteBuilder { + + @Override + public void configure() throws Exception { + + rest().post("/search/filterAggregation") + .to("bean:aggregateSummaryProcessor?method=getFilteredAggregation"); + + } } diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/SparkyHttpConfigLoader.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/FilterRequestRouter.java index f6b739c..849f013 100644 --- a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/SparkyHttpConfigLoader.java +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/FilterRequestRouter.java @@ -1,6 +1,6 @@ /** * ============LICENSE_START======================================================= - * org.onap.aai + * SPARKY (AAI UI service) * ================================================================================ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. * Copyright © 2017-2018 Amdocs @@ -18,15 +18,20 @@ * limitations under the License. * ============LICENSE_END========================================================= */ -package org.onap.aai.sparky.config; +package org.onap.aai.sparky.camel; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.PropertySource; +import org.apache.camel.spring.SpringRouteBuilder; +import org.springframework.stereotype.Component; -@Configuration -@ConditionalOnProperty(value="sparky.ssl.enabled", havingValue = "false") -@PropertySource("file:${CONFIG_HOME}/sparky-http-config.properties") -public class SparkyHttpConfigLoader { +@Component +public class FilterRequestRouter extends SpringRouteBuilder { + + @Override + public void configure() throws Exception { + + rest().post("/search/unifiedFilterRequest") + .to("bean:filterProcessor?method=getFiltersWithValues"); + + } } diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/SparkyConfigLoader.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/GlobalSearchRouter.java index 5124ce7..ea87254 100644 --- a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/SparkyConfigLoader.java +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/GlobalSearchRouter.java @@ -1,6 +1,6 @@ /** * ============LICENSE_START======================================================= - * org.onap.aai + * SPARKY (AAI UI service) * ================================================================================ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. * Copyright © 2017-2018 Amdocs @@ -18,14 +18,19 @@ * limitations under the License. * ============LICENSE_END========================================================= */ -package org.onap.aai.sparky.config; +package org.onap.aai.sparky.camel; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.PropertySource; +import org.apache.camel.spring.SpringRouteBuilder; +import org.springframework.stereotype.Component; + +@Component +public class GlobalSearchRouter extends SpringRouteBuilder { + + @Override + public void configure() throws Exception { + + rest().post("/search/querysearch").to("bean:unifiedSearchProcessor?method=search"); + + } -@Configuration -@PropertySource("file:${CONFIG_HOME}/sparky-application.properties") -public class SparkyConfigLoader { - - } diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/SubscriptionRouter.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/SubscriptionRouter.java new file mode 100644 index 0000000..4a28e30 --- /dev/null +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/SubscriptionRouter.java @@ -0,0 +1,37 @@ +/** + * ============LICENSE_START======================================================= + * SPARKY (AAI UI service) + * ================================================================================ + * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017-2018 Amdocs + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ +package org.onap.aai.sparky.camel; + +import org.apache.camel.spring.SpringRouteBuilder; +import org.springframework.stereotype.Component; + +@Component +public class SubscriptionRouter extends SpringRouteBuilder { + + @Override + public void configure() throws Exception { + + rest().get("/subscription/getsubscription") + .to("bean:subscriptionServiceProcessor?method=getSubscription"); + + } + +} diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/ViewInspectRouter.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/ViewInspectRouter.java new file mode 100644 index 0000000..ee2ae04 --- /dev/null +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/camel/ViewInspectRouter.java @@ -0,0 +1,37 @@ +/** + * ============LICENSE_START======================================================= + * SPARKY (AAI UI service) + * ================================================================================ + * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017-2018 Amdocs + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ +package org.onap.aai.sparky.camel; + +import org.apache.camel.spring.SpringRouteBuilder; +import org.springframework.stereotype.Component; + +@Component +public class ViewInspectRouter extends SpringRouteBuilder { + + @Override + public void configure() throws Exception { + + rest().post("/visualization/prepareVisualization").route() + .to("bean:schemaVisualizationProcessor?method=processVisualizationRequest"); + + } + +} diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/CamelConfiguration.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/CamelConfiguration.java new file mode 100644 index 0000000..8f433db --- /dev/null +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/config/CamelConfiguration.java @@ -0,0 +1,19 @@ +package org.onap.aai.sparky.config; + +import org.apache.camel.component.servlet.CamelHttpTransportServlet; +import org.springframework.boot.web.servlet.ServletRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.stereotype.Component; + +@Component +public class CamelConfiguration { + + @Bean + ServletRegistrationBean servletRegistrationBean() { + final ServletRegistrationBean servlet = + new ServletRegistrationBean(new CamelHttpTransportServlet(), "/rest/*", "/services/*"); + servlet.setName("CamelServlet"); + return servlet; + } + +}
\ No newline at end of file diff --git a/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/portal/PortalBean.java b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/portal/PortalBean.java new file mode 100644 index 0000000..86f019e --- /dev/null +++ b/sparkybe-onap-application/src/main/java/org/onap/aai/sparky/portal/PortalBean.java @@ -0,0 +1,41 @@ +package org.onap.aai.sparky.portal; + +import javax.servlet.Filter; + +import org.onap.aai.sparky.security.filter.LoginFilter; +import org.openecomp.portalsdk.core.onboarding.crossapi.PortalRestAPIProxy; +import org.springframework.boot.web.servlet.FilterRegistrationBean; +import org.springframework.boot.web.servlet.ServletRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Profile; +import org.springframework.stereotype.Component; + +@Component +@Profile("portal") +public class PortalBean { + + private Filter loginFilter = new LoginFilter(); + + /** + * bind LoginFilter + */ + @Bean + public FilterRegistrationBean loginFilterRegistrationBean() { + FilterRegistrationBean registration = new FilterRegistrationBean(); + + registration.setFilter(loginFilter); + registration.addUrlPatterns("/*"); + + return registration; + } + + @Bean + public ServletRegistrationBean portalApiProxy() { + + final ServletRegistrationBean servlet = + new ServletRegistrationBean(new PortalRestAPIProxy(), "/api/v2/*"); + servlet.setName("PortalRestApiProxy"); + return servlet; + } + +}
\ No newline at end of file diff --git a/sparkybe-onap-application/src/main/scripts/start.sh b/sparkybe-onap-application/src/main/scripts/start.sh index a8eba46..c16c9b2 100644 --- a/sparkybe-onap-application/src/main/scripts/start.sh +++ b/sparkybe-onap-application/src/main/scripts/start.sh @@ -1,11 +1,17 @@ #!/bin/sh APP_HOME="/opt/app/sparky" -CONFIG_HOME=${APP_HOME}/appconfig +CONFIG_HOME=${APP_HOME}/config PROPS="-DAPP_HOME=${APP_HOME} -DCONFIG_HOME=${CONFIG_HOME} -Dlogging.config=${CONFIG_HOME}/logging/logback.xml" set -x jar ufv ${APP_HOME}/lib/sparkybe-onap-application*.jar -C ${CONFIG_HOME}/portal/ BOOT-INF/classes/portal.properties + +# +# change the working directory so that Spring-Boot will pick up the config folder from the right path +# +cd $APP_HOME + java -Xms1024m -Xmx4096m $PROPS -jar ${APP_HOME}/lib/sparkybe-onap-application*.jar |