+# Application
kubernetes/config/onap-parameters.yaml
-.idea/*
kubernetes/dist/*
requirements.lock
**/charts/*.tgz
+
+
+# Eclipse
+.classpath
+.factorypath
+.project
+.settings/
+
+# IntelliJ
+.idea/*
+*.iml
# limitations under the License.
#============LICENSE_END============================================
-helm delete $1-$2 --purge
-kubectl delete namespace $1-$2
-kubectl delete clusterrolebinding $1-$2-admin-binding
+helm delete $2 --purge
printf "%s" "$*"
printf `pwd`
printf "%s" "---------------"
-kubectl create namespace $1-$2
-kubectl create clusterrolebinding $1-$2-admin-binding --clusterrole=cluster-admin --serviceaccount=$1-$2:default
-# assign default auth token
-if [[ -z $ONAP_DEFAULT_AUTH_TOKEN ]]; then
- DEFAULT_SECRET=`kubectl get secrets -n $1-$2 | grep default-token | awk '{ print $1}'`
- ONAP_DEFAULT_AUTH_TOKEN=`kubectl get secrets $DEFAULT_SECRET -n $1-$2 -o yaml | grep 'token:' | awk '{ print $2}' | base64 -d`
-fi
-kubectl --namespace $1-$2 create secret docker-registry $1-docker-registry-key --docker-server=nexus3.onap.org:10001 --docker-username=docker --docker-password=docker --docker-email=@
-helm install ../$2/ --name $1-$2 --namespace $1 --set nsPrefix=$1,nodePortPrefix=302,kubeMasterAuthToken=$ONAP_DEFAULT_AUTH_TOKEN
\ No newline at end of file
+
+helm install local/$2 --name $2 --namespace $1
\ No newline at end of file
--- /dev/null
+#!/bin/bash
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
+kubectl delete secret $1-docker-registry-key
+kubectl delete clusterrolebinding $1-admin-binding
+kubectl delete namespace $1
+
+
+
--- /dev/null
+#!/bin/bash
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
+printf "%s" "$*"
+printf `pwd`
+printf "%s" "---------------"
+
+kubectl create namespace $1
+kubectl create clusterrolebinding $1-admin-binding --clusterrole=cluster-admin --serviceaccount=$1:default
+kubectl --namespace $1 create secret docker-registry $1-docker-registry-key --docker-server=nexus3.onap.org:10001 --docker-username=docker --docker-password=docker --docker-email=@
\ No newline at end of file
ip:
user:
default: centos
- namespace_perfix:
+ namespace:
default: onap
node_types:
derived_from: cloudify.nodes.SoftwareComponent
properties:
cwd:
- default: /home/centos/oom/kubernetes/oneclick
+ default: /home/centos/oom/kubernetes
args:
default:
- onap
key: { get_secret: agent_key_private }
user: { get_input: user }
+ k8s_env:
+ type: cloudify.nodes.SoftwareComponent
+ properties:
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ start:
+ implementation: fabric.fabric_plugin.tasks.run_script
+ inputs:
+ script_path: k8s_setup_env.sh
+ process:
+ args: [{ get_input: namespace }]
+ fabric_env:
+ host_string: { get_input: ip }
+ user: { get_input: user }
+ key: { get_secret: agent_key_private }
+ stop:
+ implementation: fabric.fabric_plugin.tasks.run_script
+ inputs:
+ script_path: k8s_delete_env.sh
+ process:
+ args: [{ get_input: namespace }]
+ fabric_env:
+ host_string: { get_input: ip }
+ user: { get_input: user }
+ key: { get_secret: agent_key_private }
+ relationships:
+ - type: cloudify.relationships.connected_to
+ target: k8s_master
+
consul:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- consul
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
msb:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- msb
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
-
- mso:
+ so:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
- - mso
+ - { get_input: namespace }
+ - so
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
appc:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- appc
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
- message-router:
+ dmaap:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
- - message-router
+ - { get_input: namespace }
+ - dmaap
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
+
+ oof:
+ type: cloudify.nodes.Helm
+ properties:
+ args:
+ - { get_input: namespace }
+ - oof
+ relationships:
+ - type: cloudify.relationships.connected_to
+ target: k8s_env
sdnc:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- sdnc
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
vid:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- vid
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
robot:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- robot
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
policy:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- policy
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
portal:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- portal
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
aai:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- aai
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
sdc:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- sdc
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
log:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- log
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
cli:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- cli
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
multicloud:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- multicloud
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
clamp:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- clamp
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
vnfsdk:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- vnfsdk
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
uui:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- uui
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
aaf:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- aaf
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
vfc:
type: cloudify.nodes.Helm
properties:
args:
- - { get_input: namespace_perfix }
+ - { get_input: namespace }
- vfc
relationships:
- type: cloudify.relationships.connected_to
- target: k8s_master
+ target: k8s_env
+
+ dcaegen2:
+ type: cloudify.nodes.Helm
+ properties:
+ args:
+ - { get_input: namespace }
+ - dcaegen2
+ relationships:
+ - type: cloudify.relationships.connected_to
+ target: k8s_env
+
+ esr:
+ type: cloudify.nodes.Helm
+ properties:
+ args:
+ - { get_input: namespace }
+ - esr
+ relationships:
+ - type: cloudify.relationships.connected_to
+ target: k8s_env
+
+ sniro-emulator:
+ type: cloudify.nodes.Helm
+ properties:
+ args:
+ - { get_input: namespace }
+ - sniro-emulator
+ relationships:
+ - type: cloudify.relationships.connected_to
+ target: k8s_env
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
###########################################################
# This Blueprint installs ONAP Message Router on Openstack
###########################################################
#!/bin/sh
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
#
PUBIP="$1"
PVTIP="$2"
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
###########################################################
# This Blueprint installs ONAP appc on Openstack
###########################################################
#!/bin/sh
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
#
PUBIP="$1"
PVTIP="$2"
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
###########################################################
# This Blueprint installs ONAP policy on Openstack
###########################################################
#!/bin/sh
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
#
PUBIP="$1"
PVTIP="$2"
#!/bin/sh
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
#
PUBIP="$1"
PVTIP="$2"
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2017 AT&T
+#
+# 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============================================
+
###########################################################
# This Blueprint installs ONAP SO on Openstack
###########################################################
ssh-authorized-keys:
- { get_secret: agent_key_public }
write_files:
+ - path: /etc/yum.repos.d/docker.repo
+ owner: root:root
+ permissions: '0444'
+ content: |
+ # installed by cloud-init
+ [dockerrepo]
+ name=Docker Repository
+ baseurl=https://yum.dockerproject.org/repo/main/centos/7
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
- path: /etc/yum.repos.d/kubernetes.repo
owner: root:root
permissions: '0444'
net.bridge.bridge-nf-call-iptables = 1
packages:
- - [docker, 1.12.6]
- - [kubelet, 1.8.6-0]
- - [kubeadm, 1.8.6-0]
- - [kubectl, 1.8.6-0]
+ - [docker-engine, 17.03.0.ce-1.el7.centos]
+ - [kubelet, 1.8.10-0]
+ - [kubeadm, 1.8.10-0]
+ - [kubectl, 1.8.10-0]
- [kubernetes-cni, 0.5.1-1]
- [nfs-utils]
- git
runcmd:
- [ setenforce, 0 ]
- [ sysctl , '--system' ]
+ - [ update-ca-trust, force-enable ]
+ - "sed -i 's|/usr/bin/dockerd|/usr/bin/dockerd --exec-opt native.cgroupdriver=systemd|g' /usr/lib/systemd/system/docker.service"
- [ systemctl, enable, docker ]
- [ systemctl, start, docker ]
+ - [ chmod, 655, /etc/systemd/system/kubelet.service ]
+ - [ chmod, 655, /etc/systemd/system/kubelet.service.d/10-kubeadm.conf ]
- [ systemctl, enable, kubelet ]
- [ systemctl, start, kubelet ]
+ - [ iptables, --flush ]
+ - [ iptables, -tnat, --flush ]
- [ mkdir, '-p', /tmp/data ]
- [ chcon, '-Rt', svirt_sandbox_file_t, /tmp/data ]
- [ mkdir, '-p', /dockerdata-nfs ]
helm_version:
description: helm version to be installed
- default: v2.7.0
+ default: v2.8.2
dsl_definitions:
.. http://creativecommons.org/licenses/by/4.0
.. Copyright 2018 Amdocs, Bell Canada
+.. Links
+.. _Microsoft Azure: https://wiki.onap.org/display/DW/ONAP+on+Kubernetes+on+Microsoft+Azure
+.. _Amazon AWS: https://wiki.onap.org/display/DW/ONAP+on+Kubernetes+on+Amazon+EC2
+.. _Google GCE: https://wiki.onap.org/display/DW/ONAP+on+Kubernetes+on+Google+Compute+Engine
+.. _VMware VIO: https://wiki.onap.org/display/DW/ONAP+on+VMware+Integrated+OpenStack+-+Container+Orchestration
+.. _OpenStack: https://wiki.onap.org/display/DW/ONAP+on+Kubernetes+on+OpenStack?src=contextnavpagetreemode
+.. _Setting Up Kubernetes with Rancher: https://wiki.onap.org/display/DW/ONAP+on+Kubernetes+on+Rancher
+.. _Setting Up Kubernetes with Kubeadm: https://wiki.onap.org/display/DW/Deploying+Kubernetes+Cluster+with+kubeadm
+.. _Setting Up Kubernetes with Cloudify: https://wiki.onap.org/display/DW/ONAP+on+Kubernetes+on+Cloudify
+
.. figure:: oomLogoV2-medium.png
:align: right
time, possibly spanning multiple ONAP releases.
.. note::
- Inclusion of a cloud technology or provider in this guide does not imply any
- endorsement of this technology.
+ Inclusion of a cloud technology or provider in this guide does not imply an
+ endorsement.
.. _Kubernetes: https://kubernetes.io/
+Software Requirements
+=====================
+
The versions of Kubernetes that are supported by OOM are as follows:
.. table:: OOM Software Requirements
Release Kubernetes Helm kubectl Docker
============== ========== ===== ======= ========
amsterdam 1.7.x 2.3.x 1.7.x 1.12.x
- beijing/master 1.8.5 2.7.x 1.8.5 1.12.x
+ beijing/master 1.8.10 2.7.x 1.8.10 17.03.x
============== ========== ===== ======= ========
-Minimum Hardware Requirements
-=============================
+Minimum Hardware Configuration
+==============================
+
+The minimum hardware requirements are provided below. Note that although ONAP
+may operate on a single node as described production deployments will need at
+least three if not six nodes to ensure there is no single point of failure.
+.. table:: OOM Hardware Requirements
+
+ ===== ===== ====== ====================
+ RAM HD vCores Ports
+ ===== ===== ====== ====================
+ 128GB 160GB 16 0.0.0.0/0 (all open)
+ ===== ===== ====== ====================
Cloud Installation
==================
#. OOM supports deployment on major public clouds. The following guides
provide instructions on how to deploy ONAP on these clouds:
- - Microsoft Azure,
- - Amazon AWS,
- - Google GCD,
- - VMware VIO,
+ - `Microsoft Azure`_,
+ - `Amazon AWS`_,
+ - `Google GCE`_,
+ - `VMware VIO`_,
- IBM, and
- - Openstack
+ - `Openstack`_.
#. Alternatively, OOM can be deployed on a private set of physical hosts or VMs
(or even a combination of the two). The following guides describe how to
create a Kubernetes cluster with popular tools:
- - Setting up Kubernetes with Rancher (recommended)
- - Setting up Kubernetes with Kubeadm
- - Setting up Kubernetes with Cloudify
-
+ - `Setting up Kubernetes with Rancher`_ (recommended)
+ - `Setting up Kubernetes with Kubeadm`_
+ - `Setting up Kubernetes with Cloudify`_
.. Links
.. _Helm: https://docs.helm.sh/
+.. _Helm Charts: https://github.com/kubernetes/charts
.. _Kubernetes: https://Kubernetes.io/
.. _Docker: https://www.docker.com/
.. _Nexus: https://nexus.onap.org/#welcome
.. _Kubernetes Storage Class: https://Kubernetes.io/docs/concepts/storage/storage-classes/
.. _Assigning Pods to Nodes: https://Kubernetes.io/docs/concepts/configuration/assign-pod-node/
+
.. _developer-guide-label:
OOM Developer Guide
Helm Charts
===========
+A Helm chart is a collection of files that describe a related set of Kubernetes
+resources. A simple chart might be used to deploy something simple, like a
+memcached pod, while a complex chart might contain many micro-service arranged
+in a hierarchy as found in the `aai` ONAP component.
-Standard Chart Format
----------------------
+Charts are created as files laid out in a particular directory tree, then they
+can be packaged into versioned archives to be deployed. There is a public
+archive of `Helm Charts`_ on GitHub that includes many technologies applicable
+to ONAP. Some of these charts have been used in ONAP and all of the ONAP charts
+have been created following the guidelines provided.
-Helm charts are available in the open-source community for a wide variety of
-common software components which are used in ONAP and where possible.
+The top level of the ONAP charts is shown below:
+.. graphviz::
-Chart Hierarchy
----------------
+ digraph onap_top_chart {
+ rankdir="LR";
+ {
+ node [shape=folder]
+ oValues [label="values.yaml"]
+ oChart [label="Chart.yaml"]
+ dev [label="dev.yaml"]
+ prod [label="prod.yaml"]
+ crb [label="clusterrolebindings.yaml"]
+ secrets [label="secrets.yaml"]
+ }
+ {
+ node [style=dashed]
+ vCom [label="component"]
+ }
+
+ onap -> oValues
+ onap -> oChart
+ onap -> templates
+ onap -> resources
+ oValues -> vCom
+ resources -> environments
+ environments -> dev
+ environments -> prod
+ templates -> crb
+ templates -> secrets
+ }
+
+Within the `values.yaml` file at the `onap` level, one will find a set of
+boolean values that control which of the ONAP components get deployed as shown
+below:
+
+.. code-block:: yaml
+
+ aaf: # Application Authorization Framework
+ enabled: false
+ <...>
+ so: # Service Orchestrator
+ enabled: true
+
+By setting these flags a custom deployment can be created and used during
+deployment by using the `-f` Helm option as follows::
+
+ > helm install local/onap -name development -f dev.yaml
+
+Note that there are one or more example deployment files in the
+`onap/resources/environments/` directory. It is best practice to create a unique
+deployment file for each environment used to ensure consistent behaviour.
+
+To aid in the long term supportability of ONAP, a set of common charts have
+been created (and will be expanded in subsequent releases of ONAP) that can be
+used by any of the ONAP components by including the common component in its
+`requirements.yaml` file. The common components are arranged as follows:
+
+.. graphviz::
+
+ digraph onap_common_chart {
+ rankdir="LR";
+ {
+ node [shape=folder]
+ mValues [label="values.yaml"]
+ ccValues [label="values.yaml"]
+ comValues [label="values.yaml"]
+ comChart [label="Chart.yaml"]
+ ccChart [label="Chart.yaml"]
+ mChart [label="Chart.yaml"]
+
+ mReq [label="requirements.yaml"]
+ mService [label="service.yaml"]
+ mMap [label="configmap.yaml"]
+ ccName [label="_name.tpl"]
+ ccNS [label="_namespace.tpl"]
+ }
+ {
+ cCom [label="common"]
+ mTemp [label="templates"]
+ ccTemp [label="templates"]
+ }
+ {
+ more [label="...",style=dashed]
+ }
+
+ common -> comValues
+ common -> comChart
+ common -> cCom
+ common -> mysql
+ common -> more
+
+ cCom -> ccChart
+ cCom -> ccValues
+ cCom -> ccTemp
+ ccTemp -> ccName
+ ccTemp -> ccNS
+
+ mysql -> mValues
+ mysql -> mChart
+ mysql -> mReq
+ mysql -> mTemp
+ mTemp -> mService
+ mTemp -> mMap
+ }
+
+The common section of charts consists of a set of templates that assist with
+parameter substitution (`_name.tpl` and `_namespace.tpl`) and a set of charts
+for components used throughout ONAP. Initially `mysql` is in the common area but
+this will expand to include other databases like `mariadb-galera`, `postgres`,
+and `cassandra`. Other candidates for common components include `redis` and
+`kafka`. When the common components are used by other charts they are
+instantiated each time. In subsequent ONAP releases some of the common
+components could be a setup as services that are used by multiple ONAP
+components thus minimizing the deployment and operational costs.
+
+All of the ONAP components have charts that follow the pattern shown below:
+
+.. graphviz::
+
+ digraph onap_component_chart {
+ rankdir="LR";
+ {
+ node [shape=folder]
+ cValues [label="values.yaml"]
+ cChart [label="Chart.yaml"]
+ cService [label="service.yaml"]
+ cMap [label="configmap.yaml"]
+ cFiles [label="config file(s)"]
+ }
+ {
+ cCharts [label="charts"]
+ cTemp [label="templates"]
+ cRes [label="resources"]
+
+ }
+ {
+ sCom [label="component",style=dashed]
+ }
+
+ component -> cValues
+ component -> cChart
+ component -> cCharts
+ component -> cTemp
+ component -> cRes
+ cTemp -> cService
+ cTemp -> cMap
+ cRes -> config
+ config -> cFiles
+ cCharts -> sCom
+ }
+
+Note that the component charts may include a hierarchy of components and in
+themselves can be quite complex.
+
+Configuration of the components varies somewhat from component to component but
+generally follows the pattern of one or more `configmap.yaml` files which can
+directly provide configuration to the containers in addition to processing
+configuration files stored in the `config` directory. It is the responsibility
+of each ONAP component team to update these configuration files when changes
+are made to the project containers that impact configuration.
+
+The following section describes how the hierarchical ONAP configuration system is
+key to management of such a large system.
+
+Configuration Management
+========================
+
+ONAP is a large system composed of many components - each of which are complex
+systems in themselves - that needs to be deployed in a number of different
+ways. For example, within a single operator's network there may be R&D
+deployments under active development, pre-production versions undergoing system
+testing and production systems that are operating live networks. Each of these
+deployments will differ in significant ways, such as the version of the
+software images deployed. In addition, there may be a number of application
+specific configuration differences, such as operating system environment
+variables. The following describes how the Helm configuration management
+system is used within the OOM project to manage both ONAP infrastructure
+configuration as well as ONAP components configuration.
+
+One of the artifacts that OOM/Kubernetes uses to deploy ONAP components is the
+deployment specification, yet another yaml file. Within these deployment specs
+are a number of parameters as shown in the following mariadb example:
+
+.. code-block:: yaml
+
+ apiVersion: extensions/v1beta1
+ kind: Deployment
+ metadata:
+ name: mariadb
+ spec:
+ <...>
+ template:
+ <...>
+ spec:
+ hostname: mariadb
+ containers:
+ - args:
+ image: nexus3.onap.org:10001/mariadb:10.1.11
+ name: "mariadb"
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ value: password
+ - name: MARIADB_MAJOR
+ value: "10.1"
+ <...>
+ imagePullSecrets:
+ - name: onap-docker-registry-key
+
+Note that within the deployment specification, one of the container arguments
+is the key/value pair image: nexus3.onap.org:10001/mariadb:10.1.11 which
+specifies the version of the mariadb software to deploy. Although the
+deployment specifications greatly simplify deployment, maintenance of the
+deployment specifications themselves become problematic as software versions
+change over time or as different versions are required for different
+deployments. For example, if the R&D team needs to deploy a newer version of
+mariadb than what is currently used in the production environment, they would
+need to clone the deployment specification and change this value. Fortunately,
+this problem has been solved with the templating capabilities of Helm.
+
+The following example shows how the deployment specifications are modified to
+incorporate Helm templates such that key/value pairs can be defined outside of
+the deployment specifications and passed during instantiation of the component.
+
+.. code-block:: yaml
+
+ apiVersion: extensions/v1beta1
+ kind: Deployment
+ metadata:
+ name: mariadb
+ namespace: "{{ .Values.nsPrefix }}-mso"
+ spec:
+ <...>
+ template:
+ <...>
+ spec:
+ hostname: mariadb
+ containers:
+ - args:
+ image: {{ .Values.image.mariadb }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: "mariadb"
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ value: password
+ - name: MARIADB_MAJOR
+ value: "10.1"
+ <...>
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"apiVersion: extensions/v1beta1
+ kind: Deployment
+ metadata:
+ name: mariadb
+ namespace: "{{ .Values.nsPrefix }}-mso"
+ spec:
+ <...>
+ template:
+ <...>
+ spec:
+ hostname: mariadb
+ containers:
+ - args:
+ image: {{ .Values.image.mariadb }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: "mariadb"
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ value: password
+ - name: MARIADB_MAJOR
+ value: "10.1"
+ <...>
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+
+This version of the deployment specification has gone through the process of
+templating values that are likely to change between deployments. Note that the
+image is now specified as: image: {{ .Values.image.mariadb }} instead of a
+string used previously. During the deployment phase, Helm (actually the Helm
+sub-component Tiller) substitutes the {{ .. }} entries with a variable defined
+in a values.yaml file. The content of this file is as follows:
+
+.. code-block:: yaml
+
+ nsPrefix: onap
+ pullPolicy: IfNotPresent
+ image:
+ readiness: oomk8s/readiness-check:2.0.0
+ mso: nexus3.onap.org:10001/openecomp/mso:1.0-STAGING-latest
+ mariadb: nexus3.onap.org:10001/mariadb:10.1.11
+
+Within the values.yaml file there is an image section with the key/value pair
+mariadb: nexus3.onap.org:10001/mariadb:10.1.11 which is the same value used in
+the non-templated version. Once all of the substitutions are complete, the
+resulting deployment specification ready to be used by Kubernetes.
+
+Also note that in this example, the namespace key/value pair is specified in
+the values.yaml file. This key/value pair will be global across the entire
+ONAP deployment and is therefore a prime example of where configuration
+hierarchy can be very useful.
+
+When creating a deployment template consider the use of default values if
+appropriate. Helm templating has built in support for DEFAULT values, here is
+an example:
+
+.. code-block:: yaml
+
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix | default "onap" }}-docker-registry-key"
+
+The pipeline operator ("|") used here hints at that power of Helm templates in
+that much like an operating system command line the pipeline operator allow
+over 60 Helm functions to be embedded directly into the template (note that the
+Helm template language is a superset of the Go template language). These
+functions include simple string operations like upper and more complex flow
+control operations like if/else.
+
+
+ONAP Application Configuration
+------------------------------
Dependency Management
---------------------
~~~~~
OOM works with both physical and virtual worker machines.
-* Virtual Machine Deployments - If ONAP is to be deployed onto a set of virtual machines, the creation of the VMs is outside of the scope of OOM and could be done in many ways, such as
+* Virtual Machine Deployments - If ONAP is to be deployed onto a set of virtual
+ machines, the creation of the VMs is outside of the scope of OOM and could be
+ done in many ways, such as
- * manually, for example by a user using the OpenStack Horizon dashboard or AWS EC2, or
- * automatically, for example with the use of a OpenStack Heat Orchestration Template which builds an ONAP stack, Azure ARM template, AWS CloudFormation Template, or
- * orchestrated, for example with Cloudify creating the VMs from a TOSCA template and controlling their life cycle for the life of the ONAP deployment.
+ * manually, for example by a user using the OpenStack Horizon dashboard or
+ AWS EC2, or
+ * automatically, for example with the use of a OpenStack Heat Orchestration
+ Template which builds an ONAP stack, Azure ARM template, AWS CloudFormation
+ Template, or
+ * orchestrated, for example with Cloudify creating the VMs from a TOSCA
+ template and controlling their life cycle for the life of the ONAP
+ deployment.
-* Physical Machine Deployments - If ONAP is to be deployed onto physical machines there are several options but the recommendation is to use Rancher along with Helm to associate hosts with a Kubernetes cluster.
+* Physical Machine Deployments - If ONAP is to be deployed onto physical
+ machines there are several options but the recommendation is to use Rancher
+ along with Helm to associate hosts with a Kubernetes cluster.
Pods
~~~~
-A group of containers with shared storage and networking can be grouped together into a Kubernetes pod. All of the containers within a pod are co-located and co-scheduled so they operate as a single unit. Within ONAP Amsterdam release, pods are mapped one-to-one to docker containers although this may change in the future. As explained in the Services section below the use of Pods within each ONAP component is abstracted from other ONAP components.
+A group of containers with shared storage and networking can be grouped
+together into a Kubernetes pod. All of the containers within a pod are
+co-located and co-scheduled so they operate as a single unit. Within ONAP
+Amsterdam release, pods are mapped one-to-one to docker containers although
+this may change in the future. As explained in the Services section below the
+use of Pods within each ONAP component is abstracted from other ONAP
+components.
Services
~~~~~~~~
nodeSelector:
failure-domain.beta.Kubernetes.io/region: {{ .Values.location }}
-- "location: West" is specified in the values.yaml file used to deploy
- one DCAE cluster and "location: East" is specified in a second values.yaml
+- "location: West" is specified in the `values.yaml` file used to deploy
+ one DCAE cluster and "location: East" is specified in a second `values.yaml`
file (see OOM Configuration Management for more information about
- configuration files like the values.yamlfile).
+ configuration files like the `values.yaml` file).
Node affinity can also be used to achieve geographic redundancy if pods are
assigned to multiple failure domains. For more information refer to `Assigning
used for all persistent state information.
-Configuration Management
-========================
-ONAP is a large system composed of many components - each of which are complex
-systems in themselves - that needs to be deployed in a number of different
-ways. For example, within a single operator's network there may be R&D
-deployments under active development, pre-production versions undergoing system
-testing and production systems that are operating live networks. Each of these
-deployments will differ in significant ways, such as the version of the
-software images deployed. In addition, there may be a number of application
-specific configuration differences, such as operating system environment
-variables. The following describes how the Helm configuration management
-system is used within the OOM project to manage both ONAP infrastructure
-configuration as well as ONAP components configuration.
+Environment Files
+~~~~~~~~~~~~~~~~~
-One of the artifacts that OOM/Kubernetes uses to deploy ONAP components is the
-deployment specification, yet another yaml file. Within these deployment specs
-are a number of parameters as shown in the following mariadb example:
+MSB Integration
+===============
-.. code-block:: yaml
+The \ `Microservices Bus
+Project <https://wiki.onap.org/pages/viewpage.action?pageId=3246982>`__ provides
+facilities to integrate micro-services into ONAP and therefore needs to
+integrate into OOM - primarily through Consul which is the backend of
+MSB service discovery. The following is a brief description of how this
+integration will be done:
- apiVersion: extensions/v1beta1
- kind: Deployment
- metadata:
- name: mariadb
- spec:
- <...>
- template:
- <...>
- spec:
- hostname: mariadb
- containers:
- - args:
- image: nexus3.onap.org:10001/mariadb:10.1.11
- name: "mariadb"
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: password
- - name: MARIADB_MAJOR
- value: "10.1"
- <...>
- imagePullSecrets:
- - name: onap-docker-registry-key
+A registrator to push the service endpoint info to MSB service
+discovery.
-Note that within the deployment specification, one of the container arguments
-is the key/value pair image: nexus3.onap.org:10001/mariadb:10.1.11 which
-specifies the version of the mariadb software to deploy. Although the
-deployment specifications greatly simplify deployment, maintenance of the
-deployment specifications themselves become problematic as software versions
-change over time or as different versions are required for different
-deployments. For example, if the R&D team needs to deploy a newer version of
-mariadb than what is currently used in the production environment, they would
-need to clone the deployment specification and change this value. Fortunately,
-this problem has been solved with the templating capabilities of Helm.
+- The needed service endpoint info is put into the kubernetes yaml file
+ as annotation, including service name, Protocol,version, visual
+ range,LB method, IP, Port,etc.
-The following example shows how the deployment specifications are modified to
-incorporate Helm templates such that key/value pairs can be defined outside of
-the deployment specifications and passed during instantiation of the component.
+- OOM deploy/start/restart/scale in/scale out/upgrade ONAP components
+
+- Registrator watch the kubernetes event
+
+- When an ONAP component instance has been started/destroyed by OOM,
+ Registrator get the notification from kubernetes
+
+- Registrator parse the service endpoint info from annotation and
+ register/update/unregister it to MSB service discovery
+
+- MSB API Gateway uses the service endpoint info for service routing
+ and load balancing.
+
+Details of the registration service API can be found at \ `Microservice
+Bus API
+Documentation <https://wiki.onap.org/display/DW/Microservice+Bus+API+Documentation>`__.
+
+ONAP Component Registration to MSB
+----------------------------------
+The charts of all ONAP components intending to register against MSB must have
+an annotation in their service(s) template. A `sdc` example follows:
.. code-block:: yaml
- apiVersion: extensions/v1beta1
- kind: Deployment
- metadata:
- name: mariadb
- namespace: "{{ .Values.nsPrefix }}-mso"
- spec:
- <...>
- template:
- <...>
- spec:
- hostname: mariadb
- containers:
- - args:
- image: {{ .Values.image.mariadb }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "mariadb"
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: password
- - name: MARIADB_MAJOR
- value: "10.1"
- <...>
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"apiVersion: extensions/v1beta1
- kind: Deployment
+ apiVersion: v1
+ kind: Service
metadata:
- name: mariadb
- namespace: "{{ .Values.nsPrefix }}-mso"
- spec:
- <...>
- template:
- <...>
- spec:
- hostname: mariadb
- containers:
- - args:
- image: {{ .Values.image.mariadb }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "mariadb"
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: password
- - name: MARIADB_MAJOR
- value: "10.1"
- <...>
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+ labels:
+ app: sdc-be
+ name: sdc-be
+ namespace: "{{ .Values.nsPrefix }}"
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "8080",
+ "visualRange":"1"
+ },
+ {
+ "serviceName": "sdc-deprecated",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "8080",
+ "visualRange":"1",
+ "path":"/sdc/v1"
+ }
+ ]'
+ ...
-This version of the deployment specification has gone through the process of
-templating values that are likely to change between deployments. Note that the
-image is now specified as: image: {{ .Values.image.mariadb }} instead of a
-string used previously. During the deployment phase, Helm (actually the Helm
-sub-component Tiller) substitutes the {{ .. }} entries with a variable defined
-in a values.yaml file. The content of this file is as follows:
-.. code-block:: yaml
+MSB Integration with OOM
+------------------------
+A preliminary view of the OOM-MSB integration is as follows:
- nsPrefix: onap
- pullPolicy: IfNotPresent
- image:
- readiness: oomk8s/readiness-check:1.0.0
- mso: nexus3.onap.org:10001/openecomp/mso:1.0-STAGING-latest
- mariadb: nexus3.onap.org:10001/mariadb:10.1.11
+.. figure:: MSB-OOM-Diagram.png
-Within the values.yaml file there is an image section with the key/value pair
-mariadb: nexus3.onap.org:10001/mariadb:10.1.11 which is the same value used in
-the non-templated version. Once all of the substitutions are complete, the
-resulting deployment specification ready to be used by Kubernetes.
+A message sequence chart of the registration process:
-Also note that in this example, the namespace key/value pair is specified in
-the values.yaml file. This key/value pair will be global across the entire
-ONAP deployment and is therefore a prime example of where configuration
-hierarchy can be very useful.
+.. uml::
-When creating a deployment template consider the use of default values if
-appropriate. Helm templating has built in support for DEFAULT values, here is
-an example:
+ participant "OOM" as oom
+ participant "ONAP Component" as onap
+ participant "Service Discovery" as sd
+ participant "External API Gateway" as eagw
+ participant "Router (Internal API Gateway)" as iagw
-.. code-block:: yaml
+ box "MSB" #LightBlue
+ participant sd
+ participant eagw
+ participant iagw
+ end box
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix | default "onap" }}-docker-registry-key"
+ == Deploy Servcie ==
-The pipeline operator ("|") used here hints at that power of Helm templates in
-that much like an operating system command line the pipeline operator allow
-over 60 Helm functions to be embedded directly into the template (note that the
-Helm template language is a superset of the Go template language). These
-functions include simple string operations like upper and more complex flow
-control operations like if/else.
+ oom -> onap: Deploy
+ oom -> sd: Register service endpoints
+ sd -> eagw: Services exposed to external system
+ sd -> iagw: Services for internal use
+ == Component Life-cycle Management ==
-ONAP Application Configuration
-------------------------------
+ oom -> onap: Start/Stop/Scale/Migrate/Upgrade
+ oom -> sd: Update service info
+ sd -> eagw: Update service info
+ sd -> iagw: Update service info
-Environment Files
-~~~~~~~~~~~~~~~~~
+ == Service Health Check ==
+
+ sd -> onap: Check the health of service
+ sd -> eagw: Update service status
+ sd -> iagw: Update service status
+
+
+MSB Deployment Instructions
+---------------------------
+MSB is helm installable ONAP component which is often automatically deployed.
+To install it individually enter::
+
+ > helm install <repo-name>/msb
+
+.. note::
+ TBD: Vaidate if the following procedure is still required.
+
+Please note that Kubernetes authentication token must be set at
+*kubernetes/kube2msb/values.yaml* so the kube2msb registrator can get the
+access to watch the kubernetes events and get service annotation by
+Kubernetes APIs. The token can be found in the kubectl configuration file
+*~/.kube/config*
+
+More details can be found here `MSB installation <http://onap.readthedocs.io/en/latest/submodules/msb/apigateway.git/docs/platform/installation.html>`__.
-MSB Integration
-===============
.. MISC
.. ====
.. Note that although OOM uses Kubernetes facilities to minimize the effort
**Step 7.** Once the repo is setup, installation of ONAP can be done with a
single command::
- > helm install local/onap -name dev --namespace onap
+ > helm install local/onap -n dev --namespace onap
.. note::
The requirement for the use of the `onap` namespace will be lifted once the OOM team completes their Beijing deveivers.
comprehensive set of Helm charts, yaml files very similar to TOSCA files, that
describe the composition of each of the ONAP components and the relationship
within and between components. Using this model Helm is able to deploy all of
-ONAP this simple command::
+ONAP with a few simple commands.
+
+Pre-requisites
+--------------
+Your environment must have both the Kubernetes `kubectl` and Helm setup as a one time activity.
+
+Install Kubectl
+~~~~~~~~~~~~~~~
+Enter the following to install kubectl (on Ubuntu, there are slight differences on other O/Ss), the Kubernetes command line interface used to manage a Kubernetes cluster::
+
+ > curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.8.10/bin/linux/amd64/kubectl
+ > chmod +x ./kubectl
+ > sudo mv ./kubectl /usr/local/bin/kubectl
+ > mkdir ~/.kube
+
+Paste kubectl config from Rancher (see the :ref:`cloud-setup-guide-label` for alternative Kubenetes environment setups) into the `~/.kube/config` file.
+
+Verify that the Kubernetes config is correct::
+
+ > kubectl get pods --all-namespaces
+
+At this point you should see six Kubernetes pods running.
+
+Install Helm
+~~~~~~~~~~~~
+Helm is used by OOM for package and configuration management. To install Helm, enter the following::
+
+ > wget http://storage.googleapis.com/kubernetes-helm/helm-v2.7.2-linux-amd64.tar.gz
+ > tar -zxvf helm-v2.7.2-linux-amd64.tar.gz
+ > sudo mv linux-amd64/helm /usr/local/bin/helm
+
+Verify the Helm version with::
+
+ > helm version
+
+Install the Helm Tiller application and initialize with::
+
+ > helm init
+
+Install the Helm Repo
+---------------------
+Once kubectl and Helm are setup, one needs to setup a local Helm server to server up the ONAP charts::
> helm install osn/onap
To prepare your system for an installation of ONAP, you'll need to::
> git clone http://gerrit.onap.org/r/oom
- > cd kubernetes
+ > cd oom/kubernetes
+
To setup a local Helm server to server up the ONAP charts::
+ > helm init
> helm serve &
Note the port number that is listed and use it in the Helm repo add as follows::
Once the repo is setup, installation of ONAP can be done with a single command::
- > helm install local/onap -name development
+ > helm install local/onap --name development
This will install ONAP from a local repository in a 'development' Helm release.
As described below, to override the default configuration values provided by
OOM, an environment file can be provided on the command line as follows::
- > helm install local/onap -name development -f onap-development.yaml
+ > helm install local/onap --name development -f onap-development.yaml
To get a summary of the status of all of the pods (containers) running in your
deployment::
was created for each of the ONAP components.
.. note::
- The Helm `-name` option refers to a release name and not a Kubernetes namespace.
+ The Helm `--name` option refers to a release name and not a Kubernetes namespace.
To install a specific version of a single ONAP component (`so` in this example)
clean:
@rm -f */requirements.lock
- @rm -f *tgz */charts/*tgz
+ @find . -type f -name '*.tgz' -delete
@rm -rf $(PACKAGE_DIR)/*
# start up a local helm repo to serve up helm chart packages
> cd oom/kubernetes
```
-Step 2. Customize the oom/kubernetes/onap parent chart, like the values.yaml file, to suit your deployment. You may want to selectively enable or disable ONAP components by changing the subchart **enabled** flags to *true* or *false*.
+Step 2. Customize the oom/kubernetes/onap parent chart, like the values.yaml file, to suit your deployment. You may want to selectively enable or disable ONAP components by changing the subchart **enabled** flags to *true* or *false*. The .yaml file for OpenStackEncryptedPassword should be the MSO ecnrypted value of the openstack tenant password
```
Example:
...
enabled: true
...
```
-
Step 3. To setup a local Helm repository to serve up the local ONAP charts:
+ [Note: ensure helm init has been executed on the node, or run helm init --client-only]
```
> helm serve &
```
Step 6. Once the repo is setup, installation of ONAP can be done with a single command:
```
-> helm install local/onap -name dev --namespace onap
+> helm install local/onap --name dev --namespace onap
```
**Note:** the **--namespace onap** is currently required while all onap helm charts are migrated to version 2.0. After this activity is complete, namespaces will be optional.
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Application Authorization Framework
name: aaf
-version: 1.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF Certificate Manager
+name: aaf-cm
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/cm/bin/cm >> /opt/app/osaaf/logs/cm/stdout`date -I` 2>> /opt/app/osaaf/logs/cm/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_cm:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-cm
+ type: ClusterIP
+ portName: aaf-cm
+ #targetPort
+ internalPort: 8150
+ #port
+ externalPort: 8150
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: ONAP AAF cassandra
+name: aaf-cs
+version: 2.0.0
--- /dev/null
+
+// Table Initialization
+// First make sure the keyspace exists.
+
+USE authz;
+
+//
+// CORE Table function
+//
+
+// Namespace - establish hierarchical authority to modify
+// Permissions and Roles
+// "scope" is flag to determine Policy. Typical important scope
+// is "company" (1)
+CREATE TABLE ns (
+ name varchar,
+ scope int, // deprecated 2.0.11
+ description varchar,
+ parent varchar,
+ type int,
+ PRIMARY KEY (name)
+);
+CREATE INDEX ns_parent on ns(parent);
+
+CREATE TABLE ns_attrib (
+ ns varchar,
+ key varchar,
+ value varchar,
+ PRIMARY KEY (ns,key)
+);
+create index ns_attrib_key on ns_attrib(key);
+
+// Will be cached
+CREATE TABLE role (
+ ns varchar,
+ name varchar,
+ perms set<varchar>, // Use "Key" of "name|type|action"
+ description varchar,
+ PRIMARY KEY (ns,name)
+);
+CREATE INDEX role_name ON role(name);
+
+// Will be cached
+CREATE TABLE perm (
+ ns varchar,
+ type varchar,
+ instance varchar,
+ action varchar,
+ roles set<varchar>, // Need to find Roles given Permissions
+ description varchar,
+ PRIMARY KEY (ns,type,instance,action)
+);
+
+// This table is user for Authorization
+CREATE TABLE user_role (
+ user varchar,
+ role varchar, // deprecated: change to ns/rname after 2.0.11
+ ns varchar,
+ rname varchar,
+ expires timestamp,
+ PRIMARY KEY(user,role)
+ );
+CREATE INDEX user_role_ns ON user_role(ns);
+CREATE INDEX user_role_role ON user_role(role);
+
+// This table is only for the case where return User Credential (MechID) Authentication
+CREATE TABLE cred (
+ id varchar,
+ type int,
+ expires timestamp,
+ ns varchar,
+ other int,
+ notes varchar,
+ cred blob,
+ prev blob,
+ PRIMARY KEY (id,type,expires)
+ );
+CREATE INDEX cred_ns ON cred(ns);
+
+// Certificate Cross Table
+// coordinated with CRED type 2
+CREATE TABLE cert (
+ fingerprint blob,
+ id varchar,
+ x500 varchar,
+ expires timestamp,
+ PRIMARY KEY (fingerprint)
+ );
+CREATE INDEX cert_id ON cert(id);
+CREATE INDEX cert_x500 ON cert(x500);
+
+CREATE TABLE notify (
+ user text,
+ type int,
+ last timestamp,
+ checksum int,
+ PRIMARY KEY (user,type)
+);
+
+CREATE TABLE x509 (
+ ca text,
+ serial blob,
+ id text,
+ x500 text,
+ x509 text,
+ PRIMARY KEY (ca,serial)
+);
+
+
+CREATE INDEX x509_id ON x509 (id);
+CREATE INDEX x509_x500 ON x509 (x500);
+
+//
+// Deployment Artifact (for Certman)
+//
+CREATE TABLE artifact (
+ mechid text,
+ machine text,
+ type Set<text>,
+ sponsor text,
+ ca text,
+ dir text,
+ os_user text,
+ ns text,
+ notify text,
+ expires timestamp,
+ renewDays int,
+ sans Set<text>,
+ PRIMARY KEY (mechid,machine)
+);
+CREATE INDEX artifact_machine ON artifact(machine);
+CREATE INDEX artifact_ns ON artifact(ns);
+
+//
+// Non-Critical Table functions
+//
+// Table Info - for Caching
+CREATE TABLE cache (
+ name varchar,
+ seg int, // cache Segment
+ touched timestamp,
+ PRIMARY KEY(name,seg)
+);
+
+CREATE TABLE history (
+ id timeuuid,
+ yr_mon int,
+ user varchar,
+ action varchar,
+ target varchar, // user, user_role,
+ subject varchar, // field for searching main portion of target key
+ memo varchar, //description of the action
+ reconstruct blob, //serialized form of the target
+ // detail Map<varchar, varchar>, // additional information
+ PRIMARY KEY (id)
+);
+CREATE INDEX history_yr_mon ON history(yr_mon);
+CREATE INDEX history_user ON history(user);
+CREATE INDEX history_subject ON history(subject);
+
+//
+// A place to hold objects to be created at a future time.
+//
+CREATE TABLE future (
+ id uuid, // uniquify
+ target varchar, // Target Table
+ memo varchar, // Description
+ start timestamp, // When it should take effect
+ expires timestamp, // When not longer valid
+ construct blob, // How to construct this object (like History)
+ PRIMARY KEY(id)
+);
+CREATE INDEX future_idx ON future(target);
+CREATE INDEX future_start_idx ON future(start);
+
+
+CREATE TABLE approval (
+ id timeuuid, // unique Key
+ ticket uuid, // Link to Future Record
+ user varchar, // the user who needs to be approved
+ approver varchar, // user approving
+ type varchar, // approver types i.e. Supervisor, Owner
+ status varchar, // approval status. pending, approved, denied
+ memo varchar, // Text for Approval to know what's going on
+ operation varchar, // List operation to perform
+ last_notified timestamp, // Timestamp for the last time approver was notified
+ PRIMARY KEY(id)
+ );
+CREATE INDEX appr_approver_idx ON approval(approver);
+CREATE INDEX appr_user_idx ON approval(user);
+CREATE INDEX appr_ticket_idx ON approval(ticket);
+CREATE INDEX appr_status_idx ON approval(status);
+
+CREATE TABLE approved (
+ id timeuuid, // unique Key
+ user varchar, // the user who needs to be approved
+ approver varchar, // user approving
+ type varchar, // approver types i.e. Supervisor, Owner
+ status varchar, // approval status. pending, approved, denied
+ memo varchar, // Text for Approval to know what's going on
+ operation varchar, // List operation to perform
+ PRIMARY KEY(id)
+ );
+CREATE INDEX approved_approver_idx ON approved(approver);
+CREATE INDEX approved_user_idx ON approved(user);
+
+CREATE TABLE delegate (
+ user varchar,
+ delegate varchar,
+ expires timestamp,
+ PRIMARY KEY (user)
+);
+CREATE INDEX delg_delg_idx ON delegate(delegate);
+
+// OAuth Tokens
+CREATE TABLE oauth_token (
+ id text, // Reference
+ client_id text, // Creating Client ID
+ user text, // User requesting
+ active boolean, // Active or not
+ type int, // Type of Token
+ refresh text, // Refresh Token
+ expires timestamp, // Expiration time/Date (signed long)
+ exp_sec bigint, // Seconds from Jan 1, 1970
+ content text, // Content of Token
+ scopes Set<text>, // Scopes
+ state text, // Context string (Optional)
+ req_ip text, // Requesting IP (for logging purpose)
+ PRIMARY KEY(id)
+) with default_time_to_live = 21600; // 6 hours
+CREATE INDEX oauth_token_user_idx ON oauth_token(user);
+
+CREATE TABLE locate (
+ name text, // Component/Server name
+ hostname text, // FQDN of Service/Component
+ port int, // Port of Service
+ major int, // Version, Major
+ minor int, // Version, Minor
+ patch int, // Version, Patch
+ pkg int, // Version, Package (if available)
+ latitude float, // Latitude
+ longitude float, // Longitude
+ protocol text, // Protocol (i.e. http https)
+ subprotocol set<text>, // Accepted SubProtocols, ie. TLS1.1 for https
+ port_key uuid, // Key into locate_ports
+ PRIMARY KEY(name,hostname,port)
+) with default_time_to_live = 1200; // 20 mins
+
+CREATE TABLE locate_ports (
+ id uuid, // Id into locate
+ port int, // SubPort
+ name text, // Name of Other Port
+ protocol text, // Protocol of Other (i.e. JMX, DEBUG)
+ subprotocol set<text>, // Accepted sub protocols or versions
+ PRIMARY KEY(id, port)
+) with default_time_to_live = 1200; // 20 mins;
+
+//
+// Used by authz-batch processes to ensure only 1 runs at a time
+//
+CREATE TABLE run_lock (
+ class text,
+ host text,
+ start timestamp,
+ PRIMARY KEY ((class))
+);
--- /dev/null
+// For Developer Machine single instance
+// CREATE KEYSPACE authz
+// WITH REPLICATION = {'class' : 'SimpleStrategy','replication_factor':1};
+//
+//
+
+// Example of Network Topology, with Datacenter dc1 & dc2
+// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc1': '2', 'dc2': '2' };
+// Out of the box Docker Cassandra comes with "datacenter1", one instance
+CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'datacenter1': '1' };
+//
--- /dev/null
+USE authz;
+
+// Create 'org' root NS
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org','Root Namespace','.',1,1);
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org','admin',{'org.access|*|*'},'Org Admins');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org','owner',{'org.access|*|read,approve'},'Org Owners');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org','access','*','read,approve',{'org.owner'},'Org Read Access');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org','access','*','*',{'org.admin'},'Org Write Access');
+
+// Create Root pass
+INSERT INTO cred (id,ns,type,cred,expires)
+ VALUES ('initial@osaaf.org','org.osaaf',1,0x008c5926ca861023c1d2a36653fd88e2,'2099-12-31') using TTL 14400;
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('initial@osaaf.org','org.admin','2099-12-31','org','admin') using TTL 14400;
+
+
+// Create org.osaaf
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.osaaf','OSAAF Namespace','org',2,2);
+
+INSERT INTO role(ns, name, perms,description)
+ VALUES('org.osaaf','admin',{'org.osaaf.access|*|*'},'OSAAF Admins');
+
+INSERT INTO perm(ns, type, instance, action, roles,description)
+ VALUES ('org.osaaf','access','*','*',{'org.osaaf.admin'},'OSAAF Write Access');
+
+INSERT INTO role(ns, name, perms,description)
+ VALUES('org.osaaf','owner',{'org.osaaf.access|*|read,approve'},'OSAAF Owners');
+
+INSERT INTO perm(ns, type, instance, action, roles,description)
+ VALUES ('org.osaaf','access','*','read,appove',{'org.osaaf.owner'},'OSAAF Read Access');
+
+// Create org.osaaf.aaf
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.osaaf.aaf','Application Authorization Framework','org.osaaf',3,3);
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.osaaf.aaf','admin',{'org.osaaf.aaf.access|*|*'},'AAF Admins');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.osaaf.aaf','access','*','*',{'org.osaaf.aaf.admin'},'AAF Write Access');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.osaaf.aaf','access','*','read,approve',{'org.osaaf.aaf.owner'},'AAF Read Access');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.osaaf.aaf','owner',{'org.osaaf.aaf.access|*|read,approve'},'AAF Owners');
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('initial@osaaf.org','org.osaaf.aaf.admin','2099-12-31','org.osaaf.aaf','admin') using TTL 14400;
+
+
+// ONAP Specific Entities
+// ONAP initial env Namespace
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.onap','ONAP','org',2,2);
+
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.onap.portal','ONAP Portal','org.onap.portal',3,3);
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.onap.portal','access','*','read',{
+ 'org.onap.portal.owner','org.onap.portal.designer','org.onap.portal.tester','org.onap.portal.ops','org.onap.portal.governor'
+ },'Portal Read Access');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','owner',{'org.onap.portal.access|*|read'},'Portal Owner');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.onap.portal','access','*','*',{'org.onap.portal.admin'},'Portal Write Access');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','admin',{'org.onap.portal.access|*|*'},'Portal Admins');
+
+// DEMO ID (OPS)
+insert into cred (id,type,expires,cred,notes,ns,other) values('demo@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('demo@people.osaaf.org','org.onap.portal.admin','2018-10-31','org.onap.portal','admin');
+
+// ADMIN
+insert into cred (id,type,expires,cred,notes,ns,other) values('jh0003@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('jh0003@people.osaaf.org','org.onap.portal.admin','2018-10-31','org.onap.portal','admin');
+
+// DESIGNER
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('cs0008@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','designer',{'org.onap.portal.access|*|read'},'Portal Designer');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('cs0008@people.osaaf.org','org.onap.portal.designer','2018-10-31','org.onap.portal','designer');
+
+// TESTER
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('jm0007@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','tester',{'org.onap.portal.access|*|read'},'Portal Tester');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('jm0007@people.osaaf.org','org.onap.portal.tester','2018-10-31','org.onap.portal','tester');
+
+// OPS
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('op0001@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','ops',{'org.onap.portal.access|*|read'},'Portal Operations');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('op0001@people.osaaf.org','org.onap.portal.ops','2018-10-31','org.onap.portal','ops');
+
+// GOVERNOR
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('gv0001@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','governor',{'org.onap.portal.access|*|read'},'Portal Governor');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('gv0001@people.osaaf.org','org.onap.portal.governor','2018-10-31','org.onap.portal','governor');
+
--- /dev/null
+USE authz;
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('demo@people.osaaf.org','org.admin','2099-12-31','org','admin') ;
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('demo@people.osaaf.org','org.osaaf.aaf.admin','2099-12-31','org.osaaf.aaf','admin') ;
+
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ hostname: {{ include "common.name" . }}
+ containers:
+ - args:
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ - containerPort: {{ .Values.service.externalPort3 }}
+ - containerPort: {{ .Values.service.externalPort4 }}
+ volumeMounts:
+ - mountPath: /data
+ name: aaf-cs-data
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort3 }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort3 }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ lifecycle:
+ postStart:
+ exec:
+ command:
+ - /bin/sh
+ - -c
+ - >
+ /bin/sleep 30;
+ cd /data/;
+ cqlsh -u root -p root -f keyspace.cql ;
+ cqlsh -u root -p root -f init.cql ;
+ cqlsh -u root -p root -f osaaf.cql ;
+ cqlsh -u root -p root -f temp_identity.cql
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-cs-data
+ secret:
+ secretName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ (.Files.Glob "resources/config/aaf-cs-data/*").AsSecrets | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+# annotations:
+# service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ name: {{ .Values.service.portName }}4
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: library/cassandra:3.11
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-cass
+ type: ClusterIP
+ portName: aaf-cs
+ #targetPort
+ internalPort: 7000
+ #port
+ externalPort: 7000
+
+ internalPort2: 7001
+ externalPort2: 7001
+ internalPort3: 9042
+ externalPort3: 9042
+ internalPort4: 9160
+ externalPort4: 9160
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF File Server
+name: aaf-fs
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c","echo hello >> /opt/app/osaaf/logs/fs/stdout`date -I`;ln -s /opt/app/osaaf/data /data;/opt/app/aaf/fs/bin/fs >> /opt/app/osaaf/logs/fs/stdout`date -I` 2>> /opt/app/osaaf/logs/fs/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_fs:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-fs
+ type: ClusterIP
+ portName: aaf-fs
+ #targetPort
+ internalPort: 8096
+ #port
+ externalPort: 8096
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF GUI
+name: aaf-gui
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/gui/bin/gui >> /opt/app/osaaf/logs/gui/stdout`date -I` 2>> /opt/app/osaaf/logs/gui/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_gui:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-gui
+ type: NodePort
+ portName: aaf-gui
+ #targetPort
+ internalPort: 8200
+ #port
+ externalPort: 8200
+ nodePort: 51
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF Hello
+name: aaf-hello
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/hello/bin/hello >> /opt/app/osaaf/logs/hello/stdout`date -I` 2>> /opt/app/osaaf/logs/hello/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_hello:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-hello
+ type: ClusterIP
+ portName: aaf-hello
+ #targetPort
+ internalPort: 8130
+ #port
+ externalPort: 8130
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF Locate
+name: aaf-locate
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/locate/bin/locate >> /opt/app/osaaf/logs/locate/stdout`date -I` 2>> /opt/app/osaaf/logs/locate/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+# If mountPath is over NFS (e.g. /dockerdata-nfs is NFS mounted between the nodes), uncomment following lines.
+# persistence:
+# mountPath: /dockerdata
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_locate:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-locate
+ type: ClusterIP
+ portName: aaf-locate
+ #targetPort
+ internalPort: 8095
+ #port
+ externalPort: 8095
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF OAuth
+name: aaf-oauth
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/oauth/bin/oauth >> /opt/app/osaaf/logs/oauth/stdout`date -I` 2>> /opt/app/osaaf/logs/oauth/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_oauth:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-oauth
+ type: ClusterIP
+ portName: aaf-oauth
+ #targetPort
+ internalPort: 8140
+ #port
+ externalPort: 8140
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAF Service
+name: aaf-service
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/service/bin/service >> /opt/app/osaaf/logs/service/stdout`date -I` 2>> /opt/app/osaaf/logs/service/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_service:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: aaf-service
+ type: NodePort
+ portName: aaf-service
+ #targetPort
+ internalPort: 8100
+ #port
+ externalPort: 8100
+ nodePort: 47
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Secret Management Service
+name: aaf-sms
+version: 2.0.0
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Secret Management Service Quorum Client
+name: aaf-sms-quorumclient
+version: 2.0.0
--- /dev/null
+{
+ "url":"https://aaf-sms.{{ include "common.namespace" . }}:10443",
+ "cafile": "/quorumclient/certs/aaf_root_ca.cer",
+ "clientcert":"client.cert",
+ "clientkey":"client.key",
+ "timeout":"10s"
+}
\ No newline at end of file
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ serviceName:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/quorumclient/bin/quorumclient"]
+ workingDir: /quorumclient/
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /quorumclient/config.json
+ name: {{ include "common.name" .}}
+ subPath: config.json
+ - mountPath: /quorumclient/auth
+ name: {{ include "common.fullname" . }}-auth
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name : {{ include "common.name" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: config.json
+ path: config.json
+ mode: 0755
+ - name: {{ include "common.fullname" . }}-auth
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/smsquorumclient:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+# default number of instances
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ size: 10Mi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/quorum/data
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+description: Chart to launch Vault as SMS backend
+name: aaf-sms-vault
+appVersion: 0.9.5
+version: 2.0.0
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-vault
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.json: |
+ {{ .Values.config.vault | toJson }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-consul
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.json: |
+ {{ .Values.config.consul | toJson }}
--- /dev/null
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - name: {{ .Values.service.portName }}
+ {{if eq .Values.service.type "NodePort" -}}
+ port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ serviceName:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image.vault }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["vault","server","-config","/vault/config/config.json"]
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ volumeMounts:
+ - mountPath: /vault/config/config.json
+ name: {{ include "common.fullname" . }}-vault
+ subPath: config.json
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+ - image: "{{ include "common.repository" . }}/{{ .Values.image.consul }}"
+ name: {{ include "common.name" . }}-backend
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["consul","agent","-server","-client","0.0.0.0","-bootstrap-expect=1","-config-file","/consul/config/config.json"]
+ ports:
+ - name: http
+ containerPort: 8500
+ volumeMounts:
+ - mountPath: /consul/data
+ name: {{ include "common.fullname" . }}-consuldata
+ - mountPath: /consul/config/config.json
+ name: {{ include "common.fullname" . }}-consulconfiguration
+ subPath: config.json
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ volumes:
+ - name: {{ include "common.fullname" . }}-consuldata
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-consulconfiguration
+ configMap:
+ name: {{ include "common.fullname" . }}-consul
+ - name: {{ include "common.fullname" . }}-vault
+ configMap:
+ name: {{ include "common.fullname" . }}-vault
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+
+# application image
+repository: nexus3.onap.org:10001
+image:
+ consul: library/consul:1.0.6
+ vault: library/vault:0.10.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+config:
+ consul:
+ server: true
+ log_level: INFO
+ server: true
+ data_dir: '/consul/data'
+ ports:
+ http: 8500
+ https: -1
+
+ vault:
+ storage:
+ consul:
+ address: localhost:8500
+ path: smsvault
+ listener:
+ tcp:
+ address: '[::]:8200'
+ tls_disable: true
+ disable_mlock: true
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/consul/data
+
+service:
+ type: NodePort
+ name: aaf-sms-db
+ portName: aaf-sms-db
+ internalPort: 8200
+ nodePort: 44
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ smsconfig.json: |
+ {{ .Values.config | toJson }}
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/sms/bin/sms"]
+ workingDir: /sms/
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTPS
+ path: /v1/sms/quorum/status
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTPS
+ path: /v1/sms/quorum/status
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /sms/smsconfig.json
+ name: {{ include "common.name" .}}
+ subPath: smsconfig.json
+ - mountPath: /sms/auth
+ name: {{ include "common.fullname" . }}-auth
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name : {{ include "common.name" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-auth
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
\ No newline at end of file
--- /dev/null
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - name: {{ .Values.service.PortName }}
+ {{if eq .Values.service.type "NodePort" -}}
+ port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright 2018 Intel Corporation, Inc
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/sms:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+ smsdbaddress: "http://aaf-sms-db:8200"
+ cafile: "/sms/certs/aaf_root_ca.cer"
+ servercert: "/sms/certs/aaf-sms.pub"
+ serverkey: "/sms/certs/aaf-sms.pr"
+ password: "c2VjcmV0bWFuYWdlbWVudHNlcnZpY2VzZWNyZXRwYXNzd29yZA=="
+
+# subchart configuration
+vault:
+ nameOverride: smsdb
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 30
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 30
+
+service:
+ type: NodePort
+ name: aaf-sms
+ portName: aaf-sms
+ internalPort: 10443
+ nodePort: 43
+
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/auth
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
+++ /dev/null
-USE authz;
-
-// Create Root pass
-INSERT INTO cred (id,ns,type,cred,expires)
- VALUES ('dgl@openecomp.org','org.openecomp',1,0xab3831f27b39d7a039f9a92aa2bbfe51,'2020-12-31');
-
-INSERT INTO cred (id,ns,type,cred,expires)
- VALUES ('m99751@dmaapBC.openecomp.org','org.openecomp.dmaapBC',1,0xab3831f27b39d7a039f9a92aa2bbfe51,'2020-12-31');
-
-INSERT INTO cred (id,ns,type,cred,expires)
- VALUES ('m99501@dmaapBC.openecomp.org','org.openecomp.dmaapBC',1,0xab3831f27b39d7a039f9a92aa2bbfe51,'2020-12-31');
-
-
-// Create 'com' root NS
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('com',1,'Root Namespace',null,1);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com','admin',{'com.access|*|*'},'Com Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com','owner',{'com.access|*|read'},'Com Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com','access','*','read',{'com.owner'},'Com Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com','access','*','*',{'com.admin'},'Com Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.owner','2020-12-31','com','owner');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.admin','2020-12-31','com','admin');
-
-// Create org root NS
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org',1,'Root Namespace Org',null,1);
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp.dcae',3,'DCAE Namespace Org','org.openecomp',3);
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp.dmaapBC',3,'DMaaP BC Namespace Org','org.openecomp',3);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org','admin',{'org.access|*|*'},'Com Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org','owner',{'org.access|*|read'},'Com Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org','access','*','read',{'org.owner'},'Com Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org','access','*','*',{'org.admin'},'Com Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.owner','2020-12-31','org','owner');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.admin','2020-12-31','org','admin');
-
-
-// Create com.att
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('com.att',2,'AT&T Namespace','com',2);
-
-INSERT INTO role(ns, name, perms,description)
- VALUES('com.att','admin',{'com.att.access|*|*'},'AT&T Admins');
-
-INSERT INTO role(ns, name, perms,description)
- VALUES('com.att','owner',{'com.att.access|*|read'},'AT&T Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles,description)
- VALUES ('com.att','access','*','read',{'com.att.owner'},'AT&T Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles,description)
- VALUES ('com.att','access','*','*',{'com.att.admin'},'AT&T Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.owner','2020-12-31','com.att','owner');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.admin','2020-12-31','com.att','admin');
-
-// Create com.att.aaf
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('com.att.aaf',3,'Application Authorization Framework','com.att',3);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com.att.aaf','admin',{'com.att.aaf.access|*|*'},'AAF Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com.att.aaf','owner',{'com.att.aaf.access|*|read'},'AAF Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com.att.aaf','access','*','read',{'com.att.aaf.owner'},'AAF Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com.att.aaf','access','*','*',{'com.att.aaf.admin'},'AAF Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.aaf.admin','2020-12-31','com.att.aaf','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.aaf.owner','2020-12-31','com.att.aaf','owner');
-
-
-// Create org.openecomp
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp',2,'Open EComp NS','com.att',2);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org.openecomp','admin',{'org.openecomp.access|*|*'},'OpenEcomp Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org.openecomp','owner',{'org.openecomp.access|*|read'},'OpenEcomp Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp','access','*','read',{'org.openecomp.owner'},'OpenEcomp Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp','access','*','*',{'org.openecomp.admin'},'OpenEcomp Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.openecomp.admin','2020-12-31','org.openecomp','admin');
-
-// Create org.openecomp.dmaapBC
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp.dmaapBC',3,'Application Authorization Framework','org.openecomp',3);
-
-//INSERT INTO role(ns, name, perms, description)
-// VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*'},'AAF Admins');
-
-INSERT INTO role(ns, name, perms, description)
-VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*','org.openecomp.dmaapBC.topicFactory|:org.openecomp.dmaapBC.topic:org.openecomp.dmaapBC|create','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|sub','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|pub'},'AAF Admins');
-
-//INSERT INTO role(ns, name, perms, description)
-//VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|sub'},'AAF Admins');
-
-//INSERT INTO role(ns, name, perms, description)
-//VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|pub'},'AAF Admins');
-
-
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org.openecomp.dmaapBC','owner',{'org.openecomp.dmaapBC.access|*|read'},'AAF Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp.dmaapBC','access','*','read',{'org.openecomp.dmaapBC.owner'},'AAF Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp.dmaapBC','access','*','*',{'org.openecomp.dmaapBC.admin'},'AAF Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.openecomp.dmaapBC.admin','2020-12-31','org.openecomp.dmaapBC','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.openecomp.dmaapBC.owner','2020-12-31','org.openecomp.dmaapBC','owner');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99751@dmaapBC.openecomp.org','org.openecomp.dmaapBC.admin','2020-12-31','org.openecomp.dmaapBC','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99751@dmaapBC.openecomp.org','org.openecomp.dmaapBC.owner','2020-12-31','org.openecomp.dmaapBC','owner');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99501@dmaapBC.openecomp.org','org.openecomp.dmaapBC.admin','2020-12-31','org.openecomp.dmaapBC','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99501@dmaapBC.openecomp.org','org.openecomp.dmaapBC.owner','2020-12-31','org.openecomp.dmaapBC','owner');
+++ /dev/null
-iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
-mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
-bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
-mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
-ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
-iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
-osaaf|ID of AAF|||||a|bdevl
+++ /dev/null
-// For Developer Machine single instance
-//
-CREATE KEYSPACE authz
-WITH REPLICATION = {'class' : 'SimpleStrategy','replication_factor':1};
-//
-// From Ravi, 6-17-2014. User for DEVL->TEST
-//
-// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'HYWRCA02': '2', 'BRHMALDC': '2' };
-//
-// PROD
-//
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','ALPSGACT': '2','STLSMORC': '2','BRHMALDC': '2' };
-//
-// create user authz with password '<AUTHZ PASSWORD>' superuser;
-// grant all on keyspace authz to authz;
-//
-// For TEST (aaf_test)
-// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'BRHMALDC': '1' };
-//
-// DEVL
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','STLSMORC': '2' };
-//
-// TEST / PERF
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','STLSMORC': '3','KGMTNC20': '3' };
-//
-// IST
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','STLSMORC':'3',
-// 'DLLSTXCF':'3','KGMTNC20':'3','SFLDMIBB':'3','HYWRCA02':'3' };
-//
-// with 6 localized with ccm
-// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc1': '2', 'dc2': '2' };
-//
-
-USE authz;
-
-//
-// CORE Table function
-//
-
-// Namespace - establish hierarchical authority to modify
-// Permissions and Roles
-// "scope" is flag to determine Policy. Typical important scope
-// is "company" (1)
-CREATE TABLE ns (
- name varchar,
- scope int, // deprecated 2.0.11
- description varchar,
- parent varchar,
- type int,
- PRIMARY KEY (name)
-);
-CREATE INDEX ns_parent on ns(parent);
-
-
-// Oct 2015, not performant. Made Owner and Attrib first class Roles,
-// April, 2015. Originally, the plan was to utilize Cassandra 2.1.2, however, other team's preferences were to remain at current levels.
-// Therefore, we are taking the separate table approach. (coder Jeremiah Rohwedder)
-// We had dropped this by making first class objects of Responsible (Owner) and Admin. We need this again to mark namespaces
-// as having certain tools, like SWM, etc.
-CREATE TABLE ns_attrib (
- ns varchar,
- key varchar,
- value varchar,
- PRIMARY KEY (ns,key)
-);
-create index ns_attrib_key on ns_attrib(key);
-
-// Will be cached
-CREATE TABLE role (
- ns varchar,
- name varchar,
- perms set<varchar>, // Use "Key" of "name|type|action"
- description varchar,
- PRIMARY KEY (ns,name)
-);
-CREATE INDEX role_name ON role(name);
-
-// Will be cached
-CREATE TABLE perm (
- ns varchar,
- type varchar,
- instance varchar,
- action varchar,
- roles set<varchar>, // Need to find Roles given Permissions
- description varchar,
- PRIMARY KEY (ns,type,instance,action)
-);
-
-// This table is user for Authorization
-CREATE TABLE user_role (
- user varchar,
- role varchar, // deprecated: change to ns/rname after 2.0.11
- ns varchar,
- rname varchar,
- expires timestamp,
- PRIMARY KEY(user,role)
- );
-CREATE INDEX user_role_ns ON user_role(ns);
-CREATE INDEX user_role_role ON user_role(role);
-
-// This table is only for the case where return User Credential (MechID) Authentication
-CREATE TABLE cred (
- id varchar,
- type int,
- expires timestamp,
- ns varchar,
- other int,
- notes varchar,
- cred blob,
- prev blob,
- PRIMARY KEY (id,type,expires)
- );
-CREATE INDEX cred_ns ON cred(ns);
-
-// Certificate Cross Table
-// coordinated with CRED type 2
-CREATE TABLE cert (
- fingerprint blob,
- id varchar,
- x500 varchar,
- expires timestamp,
- PRIMARY KEY (fingerprint)
- );
-CREATE INDEX cert_id ON cert(id);
-CREATE INDEX cert_x500 ON cert(x500);
-
-CREATE TABLE notify (
- user text,
- type int,
- last timestamp,
- checksum int,
- PRIMARY KEY (user,type)
-);
-
-CREATE TABLE x509 (
- ca text,
- serial blob,
- id text,
- x500 text,
- x509 text,
- PRIMARY KEY (ca,serial)
-);
-
-
-CREATE INDEX x509_id ON x509 (id);
-CREATE INDEX x509_x500 ON x509 (x500);
-
-//
-// Deployment Artifact (for Certman)
-//
-CREATE TABLE artifact (
- mechid text,
- machine text,
- type Set<text>,
- sponsor text,
- ca text,
- dir text,
- appName text,
- os_user text,
- notify text,
- expires timestamp,
- renewDays int,
- PRIMARY KEY (mechid,machine)
-);
-CREATE INDEX artifact_machine ON artifact(machine);
-
-//
-// Non-Critical Table functions
-//
-// Table Info - for Caching
-CREATE TABLE cache (
- name varchar,
- seg int, // cache Segment
- touched timestamp,
- PRIMARY KEY(name,seg)
-);
-
-CREATE TABLE history (
- id timeuuid,
- yr_mon int,
- user varchar,
- action varchar,
- target varchar, // user, user_role,
- subject varchar, // field for searching main portion of target key
- memo varchar, //description of the action
- reconstruct blob, //serialized form of the target
- // detail Map<varchar, varchar>, // additional information
- PRIMARY KEY (id)
-);
-CREATE INDEX history_yr_mon ON history(yr_mon);
-CREATE INDEX history_user ON history(user);
-CREATE INDEX history_subject ON history(subject);
-
-//
-// A place to hold objects to be created at a future time.
-//
-CREATE TABLE future (
- id uuid, // uniquify
- target varchar, // Target Table
- memo varchar, // Description
- start timestamp, // When it should take effect
- expires timestamp, // When not longer valid
- construct blob, // How to construct this object (like History)
- PRIMARY KEY(id)
-);
-CREATE INDEX future_idx ON future(target);
-CREATE INDEX future_start_idx ON future(start);
-
-
-CREATE TABLE approval (
- id timeuuid, // unique Key
- ticket uuid, // Link to Future Record
- user varchar, // the user who needs to be approved
- approver varchar, // user approving
- type varchar, // approver types i.e. Supervisor, Owner
- status varchar, // approval status. pending, approved, denied
- memo varchar, // Text for Approval to know what's going on
- operation varchar, // List operation to perform
- PRIMARY KEY(id)
- );
-CREATE INDEX appr_approver_idx ON approval(approver);
-CREATE INDEX appr_user_idx ON approval(user);
-CREATE INDEX appr_ticket_idx ON approval(ticket);
-CREATE INDEX appr_status_idx ON approval(status);
-
-CREATE TABLE delegate (
- user varchar,
- delegate varchar,
- expires timestamp,
- PRIMARY KEY (user)
-);
-CREATE INDEX delg_delg_idx ON delegate(delegate);
-
-//
-// Used by authz-batch processes to ensure only 1 runs at a time
-//
-CREATE TABLE run_lock (
- class text,
- host text,
- start timestamp,
- PRIMARY KEY ((class))
-);
+++ /dev/null
-iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
-mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
-bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
-mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
-ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
-iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
-osaaf|ID of AAF|||||a|bdevl
-m99751|ID of AAF|||||a|bdevl
-m99501|ID of AAF|||||a|bdevl
--- /dev/null
+# BEGIN Store prev
+BD=/opt/app/osaaf/backup
+if [ -e "$BD/6day" ]; then
+ rm -Rf $BD/6day
+fi
+
+PREV=$BD/6day
+for D in $BD/5day $BD/4day $BD/3day $BD/2day $BD/yesterday; do
+ if [ -e "$D" ]; then
+ mv "$D" "$PREV"
+ fi
+ PREV="$D"
+done
+
+if [ -e "$BD/today" ]; then
+ if [ -e "$BD/backup.log" ]; then
+ mv $BD/backup.log $BD/today
+ fi
+ gzip $BD/today/*
+ mv $BD/today $BD/yesterday
+fi
+
+mkdir $BD/today
+
+# END Store prev
+date
+docker exec -t aaf_cass bash -c "mkdir -p /opt/app/cass_backup"
+docker container cp $BD/cbackup.sh aaf_cass:/opt/app/cass_backup/backup.sh
+# echo "login as Root, then run \nbash /opt/app/cass_backup/backup.sh"
+docker exec -t aaf_cass bash /opt/app/cass_backup/backup.sh
+docker container cp aaf_cass:/opt/app/cass_backup/. $BD/today
+date
--- /dev/null
+cd /opt/app/cass_backup
+DATA="ns role perm ns_attrib user_role cred cert x509 delegate approval approved future notify artifact health history"
+PWD=cassandra
+CQLSH="cqlsh -u cassandra -k authz -p $PWD"
+for T in $DATA ; do
+ echo "Creating $T.dat"
+ $CQLSH -e "COPY authz.$T TO '$T.dat' WITH DELIMITER='|'"
+done
--- /dev/null
+#
+# Sample Identities.dat
+# This file is for use with the "Default Organization". It is a simple mechanism to have a basic ILM structure to use with
+# out-of-the-box tire-kicking, or even for Small companies
+#
+# For Larger Companies, you will want to create a new class implementing the "Organization" interface, making calls to your ILM, or utilizing
+# batch feeds, as is appropriate for your company.
+#
+# Example Field Layout. note, in this example, Application IDs and People IDs are mixed. You may want to split
+# out AppIDs, choose your own status indicators, or whatever you use.
+# 0 - unique ID
+# 1 - full name
+# 2 - first name
+# 3 - last name
+# 4 - phone
+# 5 - official email
+# 6 - employment status e=employee, c=contractor, a=application, n=no longer with company
+# 7 - responsible to (i.e Supervisor for People, or AppOwner, if it's an App ID)
+#
+
+iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
+mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
+bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
+mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
+ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
+iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
+osaaf|ID of AAF|||||a|bdevl
--- /dev/null
+#
+# Sample Identities.dat
+# This file is for use with the "Default Organization". It is a simple mechanism to have a basic ILM structure to use with
+# out-of-the-box tire-kicking, or even for Small companies
+#
+# For Larger Companies, you will want to create a new class implementing the "Organization" interface, making calls to your ILM, or utilizing
+# batch feeds, as is appropriate for your company.
+#
+# Example Field Layout. note, in this example, Application IDs and People IDs are mixed. You may want to split
+# out AppIDs, choose your own status indicators, or whatever you use.
+# 0 - unique ID
+# 1 - full name
+# 2 - first name
+# 3 - last name
+# 4 - phone
+# 5 - official email
+# 6 - employment status e=employee, c=contractor, a=application, n=no longer with company
+# 7 - responsible to (i.e Supervisor for People, or AppOwner, if it's an App ID)
+#
+
+iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
+mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
+bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
+mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
+ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
+iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
+osaaf|ID of AAF|||||a|bdevl
--- /dev/null
+##
+## org.osaaf.cm.props
+## AAF Certificate Manager properties
+## Note: Link to CA Properties in "local" dir
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props:/opt/app/osaaf/local/org.osaaf.cm.ca.props
+aaf_component=AAF_NS.cm:2.1.0.0
+port=8150
+cadi_registration_hostname={{.Values.config.cmServiceName}}
+#Certman
+cm_public_dir=/opt/app/osaaf/public
+cm_trust_cas=AAF_RootCA.cer
+
+
--- /dev/null
+############################################################
+# Common properties for all AAF Components
+# on 2018-03-02 06:59.628-0500
+############################################################
+# Pull in Global Coordinates and Certificate Information
+aaf_root_ns=org.osaaf.aaf
+aaf_trust_perm=org.osaaf.aaf|org.onap|trust
+
+cadi_prop_files=/opt/app/osaaf/local/org.osaaf.location.props:/opt/app/osaaf/local/org.osaaf.aaf.props
+cadi_protocols=TLSv1.1,TLSv1.2
+
+aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.0
+cadi_loginpage_url=https://AAF_LOCATE_URL/AAF_NS.gui:2.0/login
+
+# Standard for this App/Machine
+aaf_env=DEV
+aaf_data_dir=/opt/app/osaaf/data
+cadi_loglevel=DEBUG
+
+# Domain Support (which will accept)
+aaf_domain_support=.com:.org
+
+# Basic Auth
+aaf_default_realm=people.osaaf.org
+
+# OAuth2
+aaf_oauth2_token_url=https://AAF_LOCATE_URL/AAF_NS.token:2.0/token
+aaf_oauth2_introspect_url=https://AAF_LOCATE_URL/AAF_NS.introspect:2.0/introspect
+
--- /dev/null
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props
+aaf_component=AAF_NS.fs:2.1.0.0
+port=8096
+cadi_registration_hostname={{.Values.config.fsServiceName}}
+
+aaf_public_dir=/opt/app/osaaf/public
--- /dev/null
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/etc/org.osaaf.orgs.props
+aaf_component=AAF_NS.gui:2.1.0.0
+port=8200
+cadi_registration_hostname={{.Values.config.guiServiceName}}
+
+aaf_gui_title=AAF
+aaf_gui_copyright=(c) 2018 AT&T Intellectual Property. All rights reserved.
+aaf_gui_theme=theme/onap
+cadi_loginpage_url=https://AAF_LOCATE_URL/com.att.aaf.gui:2.0/login
+
+# GUI URLS and Help URLS
+cm_url=https://{{.Values.config.cmServiceName}}:8150
+gw_url=https://{{.Values.config.locateServiceName}}:8095
+fs_url=http://{{.Values.config.fsServiceName}}:8096
+
+aaf_url.gui_onboard=https://wiki.web.att.com/display/aaf/OnBoarding
+aaf_url.cuigui=https://wiki.web.att.com/display/aaf/Using+the+Command+Prompt
+
+aaf_url.aaf_help=https://wiki.onap.org/display/DW/Application+Authorization+Framework+Documentation
+aaf_url.aaf_help.sub=Bootstrapping+AAF,Installation+Guide
+aaf_url.aaf_help.sub.Bootstrapping+AAF=https://wiki.onap.org/display/DW/Bootstrapping+AAF
+aaf_url.aaf_help.sub.Installation+Guide=https://wiki.onap.org/display/DW/AAF+Installation+Guide
+#aaf_url.cadi_help=
+aaf_url.tools=AAF+Projects,AAF+Jira,AAF+Calendar
+aaf_url.tool=AAF+Jira=https://jira.onap.org/secure/RapidBoard.jspa?rapidView=69&projectKey=AAF&view=detail&selectedIssue=AAF-134
+aaf_url.tool.AAF+Projects=https://gerrit.onap.org/r/#/admin/projects/?filter=aaf%2F
+aaf_url.tool.AAF+Calendar=https://wiki.onap.org/pages/viewpage.action?pageId=6587439
--- /dev/null
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props
+aaf_component=AAF_NS.hello:2.1.0.0
+port=8130
+cadi_registration_hostname={{.Values.config.helloServiceName}}
--- /dev/null
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props
+aaf_component=AAF_NS.locator:2.1.0.0
+port=8095
+cadi_registration_hostname={{.Values.config.locateServiceName}}
--- /dev/null
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you 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.
+#
+log4j.appender.INIT=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.INIT.File=${LOG4J_FILENAME_init}
+log4j.appender.INIT.DatePattern='.'yyyy-MM-dd
+log4j.appender.INIT.layout=org.apache.log4j.PatternLayout
+log4j.appender.INIT.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSSZ} %m %n
+
+log4j.appender.SRVR=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.SRVR.File=${LOG4J_FILENAME_service}
+log4j.appender.SRVR.DatePattern='.'yyyy-MM-dd
+log4j.appender.SRVR.layout=org.apache.log4j.PatternLayout
+log4j.appender.SRVR.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSSZ} %p [%c] %m %n
+
+log4j.appender.AUDIT=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.AUDIT.File=${LOG4J_FILENAME_audit}
+log4j.appender.AUDIT.DatePattern='.'yyyy-MM-dd
+log4j.appender.AUDIT.layout=org.apache.log4j.PatternLayout
+log4j.appender.AUDIT.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSSZ} %m %n
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] %m %n
+
+# General Apache libraries
+log4j.rootLogger=WARN.SRVR
+log4j.logger.org.apache=WARN,SRVR
+log4j.logger.com.datastax=WARN,SRVR
+log4j.logger.init=INFO,INIT
+log4j.logger.service=${LOGGING_LEVEL},SRVR
+log4j.logger.audit=INFO,AUDIT
+# Additional configs, not cauth with Root Logger
+log4j.logger.io.netty=INFO,SRVR
+log4j.logger.org.eclipse=INFO,SRVR
+
+
--- /dev/null
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props
+aaf_component=AAF_NS.oauth:2.1.0.0
+port=8140
+cadi_registration_hostname={{.Values.config.oauthServiceName}}
--- /dev/null
+#
+# Define Organizations for use in some of the components. Not all use them
+#
+Organization.org.osaaf=org.onap.aaf.org.DefaultOrg
+org.osaaf.mailHost=smtp.mail.att.com
+org.osaaf.mailFrom=DL-aaf-support@aaf.att.com
+org.osaaf.default=true
+org.osaaf.also_supports=org.osaaf.people
+
+
+
--- /dev/null
+##
+## org.osaaf.service
+## AAF Service Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props:/opt/app/osaaf/etc/org.osaaf.orgs.props
+aaf_component=AAF_NS.service:2.1.0.0
+port=8100
+cadi_registration_hostname={{.Values.config.serviceServiceName}}
--- /dev/null
+rmaOaytuFLnhz07oilUO0nO_mZ18XInIi56OoezdUTR5f1GR45lp_nX7marcYv7j2ZS-dpWOSur0
+sK5M-ByrgxfUPyk749Ex4nGSMLnAq-nFMaREpGZPmNP-ul_vCxCmaHUnWKPJB4jx_K_osKPb0-ng
+tqX0hnpbmcq4okV94MUdUs084ymM5LU-qVU_oYbLUM4dXatobe1go8eX2umrutZbQTjz75i4UEcF
+Dv9nDwVqHRGUFMU0NeJlrSlRSO-eiDgVtoSCBGtIkDdKPBTUT3wachHmUBiSBJ3GF05yQP1CwWzz
+AQRSwphP11xKI7tSViT5RoxjxfQZiVEbeyg9g9BROe_pLyIDskoW_ujdnPOWRcSIx6Q4J0eew3kb
+yqcWUPf1K2nSyBSshlsQ6A9NSOLz_KhyIvP_1OG82m1gir3I77Usl7QqMF8IBXCjJ-H_qqR1u-By
+qm_AFjagYA2TgF2YQN-fcneom_5_cA74_xwJ41juhOP72ZWGkX1bAdbiKf85uYo2H3g5HeNWijQL
+y4wJ4qFrSptQRyV2Ntf9OLgpOsKsPPiLlNBugmCjHBMaPMbQAYRbsyCH2nKdjjTG3c6iF5Cj9Jco
+6McvcrYYuq3ynH-2HoL-T-Zgl2AXLxqK4_dl_H243H-GutoJsmIkELLGS_pCpSt4t7xaDvzqxrTj
+4qZ1OjozcpnsqM8HebS28IgoqFaOmrCMqO1MLM_CjAyliTy31P28XEbcYvjEY-FWmnJRSpMLc1Pz
+-KOH-2V8uTqn5YlUsFt2TNnc8lEwMH6GSV1vkgxwPQaMUgWV2svc0FfBmTLZI4zNmpMu4cGjaG-f
+Z8r_hX7pDPANBTaqFxTp999dnaS3lLdZMNbJNEKFF0xxdRuBzsPKDiLa7ItixInZlUcEnwJVWOhC
+kcI2J0cEFGxHxWYmYdqyJIvQzjebk6iDqB-mLi0ai-_XYm1niCxZizT_XJADo9LQtTzq1V6pMgYR
+PPfbDKoiYRK6D8nbWsGNOh6xOS7zs8qrnTPxwu5CuZX_EFoejmooHTrXEqw2RzRFw9XqXM8p50C3
+YrwI2lA6kTQItGm0yftAxqfbhbjJp_K1P91ckOYL3ZSYze_hXRmguwYuT5NWlKhBtm5aawuDjXEg
+yn7PnRTT0smW40hbYbks5L-2VVxTd3tith6Ltqh95miL6vpG5ByDDQlZCWwkq7XH7iScejDvT6UN
+jF1K86mNa8CLXuuSzGl1li1CMxoVzW55G3s0-ICDHqjytiUkiUen2V9VzGT9h4BgDfzbShf31M4_
+biO4NL-mkqlDBbh-KcrYjvNj5qQwHSiLSLuQQBoBtJ3hG9jCu4YBYVWJYctV8r3Js_sGDH4rl5w1
+ujEF6QHWZIF73-u53G_LtvoXBnQcrBW8oLpqP-1Pz5d1bio--bRsNa5qAAilNbYmttiKYOYJn4My
+c6QvzF81SqTRZy0Fd0NK_hMCglPkH7sd32UX-LBquvQ_yDqB_ml_pADJhWcfuD4iPAQjR2Vgclxf
+GPCDva6YpJDzjjnaExDYmGFVFpbIPLfvGUCit_9zAycx0nW1J_cVT1BWFHijjAh_gnIpa6MtY3BE
+G3d8ee6_LAQvvVdBwZ955UwyRd-C7Buc7Xcccw-8hcNBKqOCDlE9j4tie2SdO9m53vZRzcLY6Aiw
+BiulIAllqHZQYs0OBcaYgbNgJU-gn9ZMWgS9i3ijPvTTBSNX7y7k4L1a4QOceyuOtt7nkv024YUS
+acTRmaGotRBuVfI-C0L4Q9NL56_nUATB5ca2GqgLEKnWKsiN3T9cBg4Ji88E8OdiVcoO8segB-0d
+QwWCqCZ8_z_R7zBMlDqpfu5wbvoVx0w9JhLgO9f7eoRozqA3qGLv94i1pN6LuU-Q7YPz4jVxmbb_
+2CHyP1n-o1ZWHfWdz6aByXEzrAZdvjfEWwwMYV5l5jFilTXaCNOCjr9S4YjNn0HITdl7E64C06Im
+3QWOsnDv9z1APjnFo12KH_1yWscU0t9gx7FG210Ug6C-G3Bko_tm_YOp0Lkum4qrnxgHMf_a
\ No newline at end of file
--- /dev/null
+############################################################
+# Properties Generated by AT&T Certificate Manager
+# by jg1555
+# on 2018-02-21T10:28:08.909-0600
+# @copyright 2016, AT&T
+############################################################
+cm_url=https://{{.Values.config.cmServiceName}}:8150
+#hostname=aaf.osaaf.org
+aaf_env=DEV
+cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US
+cadi_keyfile=/opt/app/osaaf/local/org.osaaf.aaf.keyfile
+cadi_keystore=/opt/app/osaaf/local/org.osaaf.aaf.p12
+cadi_keystore_password=enc:fDY3WPPqHCMQaZdox2UfpRoEq6b9wUqS-aepo0NiqEFa2t7uYHBdxfQAuEwj9Lwb
+#cadi_key_password=enc:<KEY PASSWORD (optional if the same as KEYSTORE PASSWORD)>
+cadi_alias=aaf-authz@aaf.osaaf.org
+cadi_truststore=/opt/app/osaaf/local/org.osaaf.aaf.trust.p12
+cadi_truststore_password=enc:5nzj6v3Rb0oZPV1zCxg8EJFfkFvWFGJflLB0i_FN0Np
--- /dev/null
+############################################################
+# Cassandra properties for AAF Components needing
+# on 2018-03-02 06:59.628-0500
+############################################################
+# LOCAL Cassandra
+cassandra.clusters={{.Values.config.csServiceName}}
+cassandra.clusters.port=9042
+#need this to be fully qualified name when REAL AAF integration
+cassandra.clusters.user=cassandra
+cassandra.clusters.password=enc:gF_I93pTRMIvj3rof-dx-yK84XYT1UKGf98s1LAJyWV
+
+# Name for exception that has happened in the past
+cassandra.reset.exceptions=com.datastax.driver.core.exceptions.NoHostAvailableException:"no host was tried":"Connection has been closed"
+
+# Example Consistency Settings for Clusters with at least instances
+#cassandra.writeConsistency.ns=LOCAL_QUORUM
+#cassandra.writeConsistency.perm=LOCAL_QUORUM
+#cassandra.writeConsistency.role=LOCAL_QUORUM
+#cassandra.writeConsistency.user_role=LOCAL_QUORUM
+#cassandra.writeConsistency.cred=LOCAL_QUORUM
+#cassandra.writeConsistency.ns_attrib=LOCAL_QUORUM
+
+# Consistency Settings when Single Instance
+cassandra.writeConsistency.ns=ONE
+cassandra.writeConsistency.perm=ONE
+cassandra.writeConsistency.role=ONE
+cassandra.writeConsistency.user_role=ONE
+cassandra.writeConsistency.cred=ONE
+cassandra.writeConsistency.ns_attrib=ONE
--- /dev/null
+##
+## org.osaaf.cm.ca.props
+## Properties to access Certifiate Authority
+##
+
+#Certman
+cm_ca.local=org.onap.aaf.auth.cm.ca.LocalCA,/opt/app/osaaf/local/org.osaaf.aaf.cm.p12;aaf_cm_ca;enc:asFEWMNqjH7GktBLb9EGl6L1zfS2qMH5ZS5Zd90KVT5B9ZyRsqx7Gb73YllO8Hyw
+cm_ca.local.idDomains=org.osaaf
+cm_ca.local.baseSubject=/OU=OSAAF/O=ONAP/C=US
+cm_ca.local.perm_type=org.osaaf.aaf.ca
+
--- /dev/null
+##
+## org.osaaf.location.props
+##
+## Localized Machine Information
+##
+# Almeda California
+cadi_latitude=37.78187
+cadi_longitude=-122.26147
+
+#cadi_registration_hostname=aaf-onap-beijing-test.osaaf.org
+cadi_trust_masks=10.12.6/24
+aaf_locate_url=https://{{.Values.config.locateServiceName}}:8095
--- /dev/null
+Public directory left empty on purpose. Content of https://gerrit.onap.org/r/gitweb?p=aaf/authz.git;a=tree;f=auth/sample/public;h=1b387b7858134f80446f006b6d570fa534da3153;hb=refs/heads/master is cloned and mounted into AAF container volume via init container. This is done to dramatically reduce the size of configuration that was being put into a configmap that was exceeding helm configmap limit of 1MB per deployment.
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAafAaf }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: aaf-data-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ (.Files.Glob "resources/config/aaf-data/*").AsConfig | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAafAafCs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: aaf-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.aafcsReplicas }}
- selector:
- matchLabels:
- app: aaf-cs
- template:
- metadata:
- labels:
- app: aaf-cs
- name: aaf-cs
- spec:
- hostname: aaf-cs
- containers:
- - args:
- image: {{ .Values.image.csImage }}:{{ .Values.image.csVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "aaf-cs"
- volumeMounts:
- - mountPath: /data
- name: aaf-cs-data
- readinessProbe:
- tcpSocket:
- port: 7000
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: aaf-cs-data
- secret:
- secretName: aaf-cs-data-secret
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAafAaf }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: aaf
- name: aaf
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.aafReplicas }}
- selector:
- matchLabels:
- app: aaf
- template:
- metadata:
- labels:
- app: aaf
- name: aaf
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - aaf-cs
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: aaf-readiness
- containers:
- - env:
- - name: CASSANDRA_CLUSTER
- value: cassandra_container
- image: {{ .Values.image.aafImage }}:{{ .Values.image.aafVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /data
- name: aaf-data
- name: aaf
- readinessProbe:
- tcpSocket:
- port: 8101
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: aaf-data
- configMap:
- name: aaf-data-configmap
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAafAafCs }}
-apiVersion: v1
-kind: Secret
-metadata:
- name: aaf-cs-data-secret
- namespace: {{ .Values.nsPrefix }}
-type: Opaque
-data:
-{{ (.Files.Glob "resources/config/aaf-cs-data/*").AsSecrets | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAafAafCs }}
-apiVersion: v1
-kind: Service
-metadata:
- name: aaf-cs
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: aaf-cs
-spec:
- ports:
- - name: aaf-cs-port-7000
- port: 7000
- - name: aaf-cs-port-7001
- port: 7001
- - name: aaf-cs-port-9042
- port: 9042
- - name: aaf-cs-port-9160
- port: 9160
- selector:
- app: aaf-cs
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableAafAaf }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: aaf-authz-service
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: aaf-authz-service
-spec:
- ports:
- - name: aaf-authz-service
- port: 8101
- nodePort: {{ .Values.nodePortPrefix }}99
- selector:
- app: clamp
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-backup
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/backup/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-local
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.location.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.cm.ca.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.cassandra.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.aaf.props").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-etc
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/etc/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-data
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/data/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-create-config
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: aaf-init-job
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-inject-config
+ command:
+ - /bin/bash
+ - -c
+ - >
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/ to /public";
+ cp -rf /tmp/gerrit/auth/sample/public/* /public;
+ echo "Done.";
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.global.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: aaf-public
+ mountPath: "/public"
+ containers:
+ - command: ["/bin/bash","-c","if [ ! -d /data/backup ]; then mkdir /data/data && cp -Ra /data1/data/..data/* /data/data/ && mkdir /data/etc && cp -Ra /data1/etc/..data/* data/etc/ && mkdir /data/backup && cp -Ra /data1/backup/..data/* /data/backup/ && cp -Ra /data1/public /data/ && cp -Ra /data1/local /data && mkdir -p /data/logs/oauth && mkdir -p /data/logs/hello && mkdir -p /data/logs/fs && mkdir -p /data/logs/gui && mkdir -p /data/logs/locate && mkdir -p /data/logs/cm && mkdir -p /data/logs/service; fi; exit 0"]
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: aaf-init-job
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /data
+ name: aaf-persistent-data
+ - mountPath: /data1/etc
+ name: aaf-etc
+ - mountPath: /data1/data
+ name: aaf-data
+ - mountPath: /data1/public/iframe_denied_test.html
+ name: aaf-public
+ subPath: iframe_denied_test.html
+ - mountPath: /data1/public/aaf_2_0.xsd
+ name: aaf-public
+ subPath: aaf_2_0.xsd
+ - mountPath: /data1/public/truststoreONAP.p12
+ name: aaf-public
+ subPath: truststoreONAP.p12
+ - mountPath: /data1/public/AAF_RootCA.cer
+ name: aaf-public
+ subPath: AAF_RootCA.cer
+ - mountPath: /data1/public/truststoreONAPall.jks
+ name: aaf-public
+ subPath: truststoreONAPall.jks
+ - mountPath: /data1/local/org.osaaf.location.props
+ name: aaf-local
+ subPath: org.osaaf.location.props
+ - mountPath: /data1/local/org.osaaf.cm.ca.props
+ name: aaf-local
+ subPath: org.osaaf.cm.ca.props
+ - mountPath: /data1/local/org.osaaf.cassandra.props
+ name: aaf-local
+ subPath: org.osaaf.cassandra.props
+ - mountPath: /data1/local/org.osaaf.aaf.props
+ name: aaf-local
+ subPath: org.osaaf.aaf.props
+ - mountPath: /data1/local/org.osaaf.aaf.trust.p12
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.trust.p12
+ - mountPath: /data1/local/org.osaaf.aaf.p12
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.p12
+ - mountPath: /data1/local/org.osaaf.aaf.keyfile
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.keyfile
+ - mountPath: /data1/local/org.osaaf.aaf.cm.p12
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.cm.p12
+ - mountPath: /data1/backup
+ name: aaf-backup
+ - mountPath: /share
+ name: aaf-public
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: aaf-local-secret
+ secret:
+ secretName: {{ .Release.Name }}-aaf-local-secret
+ - name: aaf-etc
+ configMap:
+ name: {{ .Release.Name }}-aaf-etc
+ - name: aaf-local
+ configMap:
+ name: {{ .Release.Name }}-aaf-local
+ - name: aaf-backup
+ configMap:
+ name: {{ .Release.Name }}-aaf-backup
+ - name: aaf-data
+ configMap:
+ name: {{ .Release.Name }}-aaf-data
+ - name: aaf-persistent-data
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: aaf-public
+ emptyDir: {}
+ restartPolicy: OnFailure
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.global.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.global.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ .Release.Name }}-aaf-pvc
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ .Release.Name}}-aaf-local-secret
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.trust.p12").AsSecrets | indent 2 }}
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.p12").AsSecrets | indent 2 }}
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.keyfile").AsSecrets | indent 2 }}
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.cm.p12").AsSecrets | indent 2 }}
+type: Opaque
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-aafcsReplicas: 1
-aafReplicas: 1
-image:
- readiness: oomk8s/readiness-check:1.1.0
- aafImage: nexus3.onap.org:10001/onap/aaf/authz-service
- aafVersion: latest
- csImage: nexus3.onap.org:10001/library/cassandra
- csVersion: 2.1.17
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ ubuntuInitRepository: registry.hub.docker.com
+ ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+ persistence:
+ enabled: true
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+config:
+ serviceServiceName: aaf-service
+ locateServiceName: aaf-locate
+ cmServiceName: aaf-cm
+ fsServiceName: aaf-fs
+ guiServiceName: aaf-gui
+ helloServiceName: aaf-hello
+ oauthServiceName: aaf-oauth
+ csServiceName: aaf-cass
+ # gerrit branch where the latest aaf/auth/sample/public code exists
+ gerritProject: http://gerrit.onap.org/r/aaf/authz.git
+ gerritBranch: master
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+ingress:
+ enabled: false
+
+## Persist data to a persitent volume
+persistence:
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: aaf/data
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+description: Babel microservice
+name: aai-babel
+version: 2.0.0
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+#action widget details
+AAI.model-version-id.action=fd7fb09e-d930-41b9-b83f-cfde9df48640
+AAI.model-invariant-id.action=af593b4b-490e-4665-ad74-2f6351c0a7ce
+#action-data widget details
+AAI.model-invariant-id.action-data=9551346c-7d8b-4daf-9926-b93e96e2344a
+AAI.model-version-id.action-data=2f80c596-27e5-4ca9-b5bb-e03a7fd4c0fd
+#allotted-resource widget details
+AAI.model-invariant-id.allotted-resource=f6d6a23d-a1a9-48ff-8419-b6530da2d381
+AAI.model-version-id.allotted-resource=7ad0915f-25c0-4a70-b9bc-185a75f87564
+#availability-zone widget details
+AAI.model-version-id.availability-zone=6c092fb1-21b2-456b-9e01-67fb4de1896e
+AAI.model-invariant-id.availability-zone=61b88c01-d819-41c0-8e21-7fd7ba47148e
+#az-and-dvs-switches widget details
+AAI.model-version-id.az-and-dvs-switches=b2dea88d-78a0-49bf-95c9-5819df08e966
+AAI.model-invariant-id.az-and-dvs-switches=53dc00d4-e6d9-48ec-b6cc-3d3797e9b896
+#class-of-service widget details
+AAI.model-version-id.class-of-service=d2fb27cc-15eb-4c4e-828e-71d41aaecc5b
+AAI.model-invariant-id.class-of-service=18094b19-d16d-4822-8acf-e92c6aefa178
+#cloud-region widget details
+AAI.model-version-id.cloud-region=2a160989-b202-47dd-874b-4a0f275998f7
+AAI.model-invariant-id.cloud-region=425b2158-e51d-4509-9945-dad4556474a3
+#complex widget details
+AAI.model-invariant-id.complex=af91c2f7-35fc-43cf-a13d-443f385b2353
+AAI.model-version-id.complex=3a8ab1ee-9220-4fe8-b89c-9251d160ddc2
+#connector widget details
+AAI.model-version-id.connector=22104c9f-29fd-462f-be07-96cd6b46dd33
+AAI.model-invariant-id.connector=4c01c948-7607-4d66-8a6c-99c2c2717936
+#constrained-element-set widget details
+AAI.model-invariant-id.constrained-element-set=c0292b4f-ee97-40cc-8c2e-f967c48f5701
+AAI.model-version-id.constrained-element-set=01102126-9c04-4a89-945b-b131e61e95d7
+#ctag-assignment widget details
+AAI.model-version-id.ctag-assignment=44e5cb1f-0938-41aa-b766-d4595109fe89
+AAI.model-invariant-id.ctag-assignment=fcb8d46b-b656-4ad6-8fa4-22cef74b443f
+#ctag-pool widget details
+AAI.model-invariant-id.ctag-pool=46c51d4e-d67e-4a9c-b1f5-49b1e9c6fcaa
+AAI.model-version-id.ctag-pool=2056c41f-23b9-4de7-9f50-819adad37d76
+#customer widget details
+AAI.model-invariant-id.customer=c1d4305f-cdbd-4bbe-9069-a2f4978fd89e
+AAI.model-version-id.customer=d4df5c27-98a1-4812-a8aa-c17f055b7a3f
+#cvlan-tag-entry widget details
+AAI.model-version-id.cvlan-tag-entry=c3878ffb-8d85-4114-bee6-e4074a9db10b
+AAI.model-invariant-id.cvlan-tag-entry=245cf4b0-7cc5-4eea-bbd9-753e939adcab
+#dvs-switch widget details
+AAI.model-invariant-id.dvs-switch=98fbb471-1f86-428e-bd8a-c8a25de6fa23
+AAI.model-version-id.dvs-switch=4cb44ae8-e3ab-452a-9f95-bcc8a44c55ea
+#edge-prop-names widget details
+AAI.model-invariant-id.edge-prop-names=7a08cad4-8759-46a5-8245-095d1ba57ac6
+AAI.model-version-id.edge-prop-names=f0442326-8201-4d0e-857c-74b4ddcbfc9f
+#element-choice-set widget details
+AAI.model-invariant-id.element-choice-set=9a011958-7165-47a3-b872-00951d1f09ae
+AAI.model-version-id.element-choice-set=af27fbfd-598d-44da-aeae-0f9d3a5fcd6a
+#entitlement widget details
+AAI.model-version-id.entitlement=7e27ba2e-b7db-4e13-9fae-d142152ef98a
+AAI.model-invariant-id.entitlement=ae75b5a0-d5e1-4f3a-b8fb-37626a753da3
+#flavor widget details
+AAI.model-invariant-id.flavor=bace8d1c-a261-4041-9e37-823117415d0f
+AAI.model-version-id.flavor=36200fb5-f251-4f5d-a520-7c5ad5c2cd4b
+#generic-vnf widget details
+AAI.model-version-id.generic-vnf=93a6166f-b3d5-4f06-b4ba-aed48d009ad9
+AAI.model-invariant-id.generic-vnf=acc6edd8-a8d4-4b93-afaa-0994068be14c
+#group-assignment widget details
+AAI.model-invariant-id.group-assignment=7cc05f25-7ba2-42b7-a237-c5662a1689e1
+AAI.model-version-id.group-assignment=fe578080-ce19-4604-8760-fc264fbb2565
+#image widget details
+AAI.model-version-id.image=f6a038c2-820c-42ba-8c2b-375e24e8f932
+AAI.model-invariant-id.image=3f4c7204-739b-4bbb-87a7-8a6856439c90
+#include-node-filter widget details
+AAI.model-invariant-id.include-node-filter=2a2d8ad2-af0a-4e1f-9982-0c899e7dc827
+AAI.model-version-id.include-node-filter=f05f804d-7057-4ffe-bdc5-39f2f0c9c9fd
+#instance-group widget details
+AAI.model-version-id.instance-group=8e6ee9dc-9017-444a-83b3-219edb018128
+AAI.model-invariant-id.instance-group=3bf1e610-45f7-4ad6-b833-ca4c5ee6a3fd
+#inventory-item widget details
+AAI.model-invariant-id.inventory-item=cd57d844-9017-4078-aa19-926935a3d77c
+AAI.model-version-id.inventory-item=69957f4a-2155-4b95-8d72-d6dd9b88b27b
+#inventory-item-data widget details
+AAI.model-version-id.inventory-item-data=0e54bb87-bd6e-4a2b-ad1c-6d935b87ae51
+AAI.model-invariant-id.inventory-item-data=87a383ae-cf03-432e-a9de-04e6a622d0fd
+#ipsec-configuration widget details
+AAI.model-invariant-id.ipsec-configuration=aca4c310-cb45-42bd-9f88-73e40ba7b962
+AAI.model-version-id.ipsec-configuration=d949fd10-36bf-408a-ac7a-cad5004d2e0d
+#key-data widget details
+AAI.model-version-id.key-data=c23ea04d-1a3b-453d-bc49-a6c783a5e92b
+AAI.model-invariant-id.key-data=f5faa464-c2f2-4cc3-89d2-a90452dc3a07
+#l3-interface-ipv4-address-list widget details
+AAI.model-version-id.l3-interface-ipv4-address-list=41e76b6f-1e06-4fd4-82cd-81c50fc4574b
+AAI.model-invariant-id.l3-interface-ipv4-address-list=aad85df2-09be-40fa-b867-16415e4e10e2
+#l3-interface-ipv6-address-list widget details
+AAI.model-invariant-id.l3-interface-ipv6-address-list=82966045-43ee-4982-8307-7e9610866140
+AAI.model-version-id.l3-interface-ipv6-address-list=d040621d-541a-477b-bb1b-a2b61b14e295
+#l3-network widget details
+AAI.model-version-id.l3-network=9111f20f-e680-4001-b83f-19a2fc23bfc1
+AAI.model-invariant-id.l3-network=3d560d81-57d0-438b-a2a1-5334dba0651a
+#lag-interface widget details
+AAI.model-version-id.lag-interface=ce95f7c3-b61b-4758-ae9e-7e943b1c103d
+AAI.model-invariant-id.lag-interface=e0ee9bde-c1fc-4651-a95d-8e0597bf7d70
+#lag-link widget details
+AAI.model-version-id.lag-link=d29a087a-af59-4053-a3f8-0f95a92faa75
+AAI.model-invariant-id.lag-link=86ffe6e5-4d0e-4cec-80b5-5c38aa3eff98
+#license widget details
+AAI.model-invariant-id.license=b9a9b337-1f86-42d3-b9f9-f987a089507c
+AAI.model-version-id.license=6889274b-a1dc-40ab-9090-93677e13e2e6
+#license-key-resource widget details
+AAI.model-invariant-id.license-key-resource=9022ebfe-b54f-4911-a6b2-8c3f5ec189b7
+AAI.model-version-id.license-key-resource=24b25f8c-b8bd-4c62-9421-87c12667aac9
+#l-interface widget details
+AAI.model-version-id.l-interface=a32613fd-18b9-459e-aab8-fffb3912966a
+AAI.model-invariant-id.l-interface=cea0a982-8d55-4093-921e-418fbccf7060
+#logical-link widget details
+AAI.model-version-id.logical-link=a1481a38-f8ba-4ae4-bdf1-06c2c6af4c54
+AAI.model-invariant-id.logical-link=fe012535-2c31-4a39-a739-612374c638a0
+#metadatum widget details
+AAI.model-invariant-id.metadatum=86dbb63a-265e-4614-993f-6771c30b56a5
+AAI.model-version-id.metadatum=6bae950e-8939-41d3-a6a7-251b03e4c1fc
+#model widget details
+AAI.model-invariant-id.model=06d1418a-5faa-452d-a94b-a2829df5f67b
+AAI.model-version-id.model=1f51c05c-b164-4c27-9c03-5cbb239fd6be
+#model-constraint widget details
+AAI.model-invariant-id.model-constraint=c28966f3-e758-4483-b37b-a90b05d3dd33
+AAI.model-version-id.model-constraint=ad70dd19-f156-4fb5-a865-97b5563b0d37
+#model-element widget details
+AAI.model-invariant-id.model-element=2076e726-3577-477a-a300-7fa65cd4df11
+AAI.model-version-id.model-element=753e813a-ba9e-4a1d-ab34-b2f6dc6eec0c
+#multicast-configuration widget details
+AAI.model-invariant-id.multicast-configuration=ea78c9e3-514d-4a0a-9162-13837fa54c35
+AAI.model-version-id.multicast-configuration=666a06ee-4b57-46df-bacf-908da8f10c3f
+#named-query widget details
+AAI.model-version-id.named-query=5c3b7c33-afa3-4be5-8da7-1a5ac6f99896
+AAI.model-invariant-id.named-query=80b712fd-0ad3-4180-a99c-8c995cf1cc32
+#named-query-element widget details
+AAI.model-version-id.named-query-element=204c641a-3494-48c8-979a-86856f5fd32a
+AAI.model-invariant-id.named-query-element=3c504d40-b847-424c-9d25-4fb7e0a3e994
+#network-policy widget details
+AAI.model-invariant-id.network-policy=6aa05779-94d7-4d8b-9bee-59ef2ab0c246
+AAI.model-version-id.network-policy=a0ccd9dc-7062-4940-9bcc-e91dd28af510
+#network-profile widget details
+AAI.model-version-id.network-profile=01f45471-4240-498c-a9e1-235dc0b8b4a6
+AAI.model-invariant-id.network-profile=2734b44a-b8a2-40f6-957d-6256589e5d00
+#newvce widget details
+AAI.model-version-id.newvce=7c79e11f-a408-4593-aa86-ba948a1236af
+AAI.model-invariant-id.newvce=4b05ec9c-c55d-4987-83ff-e08d6ddb694f
+#oam-network widget details
+AAI.model-invariant-id.oam-network=2851cf01-9c40-4064-87d4-6184a6fcff35
+AAI.model-version-id.oam-network=f4fb34f3-fd6e-4a8f-a3fb-4ab61a343b79
+#physical-link widget details
+AAI.model-invariant-id.physical-link=c822d81f-822f-4304-9623-1025b53da568
+AAI.model-version-id.physical-link=9c523936-95b4-4d7f-9f53-6bdfe0cf2c05
+#p-interface widget details
+AAI.model-invariant-id.p-interface=94043c37-4e73-439c-a790-0fdd697924cd
+AAI.model-version-id.p-interface=d2cdb2d0-fc1f-4a57-a89e-591b1c4e3754
+#pnf widget details
+AAI.model-version-id.pnf=e9f1fa7d-c839-418a-9601-03dc0d2ad687
+AAI.model-invariant-id.pnf=862b25a1-262a-4961-bdaa-cdc55d69785a
+#port-group widget details
+AAI.model-version-id.port-group=03e8bb6b-b48a-46ae-b5d4-e5af577e6844
+AAI.model-invariant-id.port-group=8ce940fb-55d7-4230-9e7f-a56cc2741f77
+#property-constraint widget details
+AAI.model-version-id.property-constraint=81706bbd-981e-4362-ae20-995cbcb2d995
+AAI.model-invariant-id.property-constraint=f4a863c3-6886-470a-a6ae-05723837ea45
+#pserver widget details
+AAI.model-invariant-id.pserver=6d932c8f-463b-4e76-83fb-87acfbaa2e2d
+AAI.model-version-id.pserver=72f0d495-bc27-4653-9e1a-eef76bd34bc9
+#related-lookup widget details
+AAI.model-invariant-id.related-lookup=468f6f5b-2996-41bb-b2a3-7cf9613ebb9b
+AAI.model-version-id.related-lookup=0988bab5-bf4f-4938-a419-ab249867d12a
+#reserved-prop-names widget details
+AAI.model-invariant-id.reserved-prop-names=0c3e0ba3-618c-498d-9127-c8d42b00170f
+AAI.model-version-id.reserved-prop-names=ac49d26d-9163-430e-934a-13b738a04f5c
+#result-data widget details
+AAI.model-version-id.result-data=4e9b50aa-5227-4f6f-b489-62e6bbc03c79
+AAI.model-invariant-id.result-data=ff656f23-6185-406f-9006-4b26834f3e1c
+#route-table-reference widget details
+AAI.model-version-id.route-table-reference=fed7e326-03a7-45ff-a3f2-471470d268c4
+AAI.model-invariant-id.route-table-reference=a8614b63-2636-4c4f-98df-fd448c4241db
+#routing-instance widget details
+AAI.model-invariant-id.routing-instance=1c2ded4f-8b01-4193-829c-966847dfec3e
+AAI.model-version-id.routing-instance=3ccbcbc7-d19e-44d5-a52f-7e18aa8d69fa
+#secondary-filter widget details
+AAI.model-version-id.secondary-filter=1380619d-dd1a-4cec-b755-c6407833e065
+AAI.model-invariant-id.secondary-filter=738ff299-6290-4c00-8998-bd0e96a07b93
+#segmentation-assignment widget details
+AAI.model-invariant-id.segmentation-assignment=6e814aee-46e1-4583-a9d4-0049bfd2b59b
+AAI.model-version-id.segmentation-assignment=c5171ae0-44fb-4c04-b482-d56702241a44
+#service widget details
+AAI.model-version-id.service=ecce2c42-3957-4ae0-9442-54bc6afe27b6
+AAI.model-invariant-id.service=07a3a60b-1b6c-4367-8173-8014386f89e3
+#service-capability widget details
+AAI.model-invariant-id.service-capability=b1a7cc05-d19d-443b-a5d1-733e325c4232
+AAI.model-version-id.service-capability=f9cfec1b-18da-4bba-bd83-4b26cca115cd
+#service-instance widget details
+AAI.model-invariant-id.service-instance=82194af1-3c2c-485a-8f44-420e22a9eaa4
+AAI.model-version-id.service-instance=46b92144-923a-4d20-b85a-3cbd847668a9
+#service-subscription widget details
+AAI.model-invariant-id.service-subscription=2e1a602a-acd8-4f78-94ff-618b802a303b
+AAI.model-version-id.service-subscription=5e68299a-79f2-4bfb-8fbc-2bae877a2459
+#site-pair widget details
+AAI.model-version-id.site-pair=7106bc02-6552-4fc3-8a56-4f3df9034531
+AAI.model-invariant-id.site-pair=db63f3e6-f8d1-484e-8d5e-191600b7914b
+#site-pair-set widget details
+AAI.model-invariant-id.site-pair-set=5d4dae3e-b402-4bfd-909e-ece12ff75d26
+AAI.model-version-id.site-pair-set=a5c6c1bc-dc38-468e-9459-bb08f87247df
+#snapshot widget details
+AAI.model-version-id.snapshot=962a7c8b-687f-4d32-a775-fe098e214bcd
+AAI.model-invariant-id.snapshot=24de00ef-aead-4b52-995b-0adf8d4bd90d
+#sriov-vf widget details
+AAI.model-version-id.sriov-vf=1e8b331f-3d4a-4160-b7aa-f4d5a8916625
+AAI.model-invariant-id.sriov-vf=04b2935f-33c4-40a9-8af0-8b52690042dc
+#start-node-filter widget details
+AAI.model-version-id.start-node-filter=aad96fd3-e75f-42fc-9777-3450c36f1168
+AAI.model-invariant-id.start-node-filter=083093a3-e407-447a-ba5d-7583e4d23e1d
+#subnet widget details
+AAI.model-version-id.subnet=f902a6bc-6be4-4fe5-8458-a6ec0056b374
+AAI.model-invariant-id.subnet=1b2c9ba7-e449-4831-ba15-3073672f5ef2
+#tagged-inventory-item-list widget details
+AAI.model-invariant-id.tagged-inventory-item-list=e78a7eaa-f65d-4919-9c2b-5b258c8c4d7e
+AAI.model-version-id.tagged-inventory-item-list=c246f6e2-e3a1-4697-94c0-5672a7fbbf04
+#tenant widget details
+AAI.model-invariant-id.tenant=97c26c99-6870-44c1-8a07-1d900d3f4ce6
+AAI.model-version-id.tenant=abcc54bc-bb74-49dc-9043-7f7171707545
+#tunnel-xconnect widget details
+AAI.model-invariant-id.tunnel-xconnect=50b9e2fa-005c-4bbe-b651-3251dece4cd8
+AAI.model-version-id.tunnel-xconnect=e7cb4ca8-e1a5-4487-a716-4ae0bcd8aef5
+#update-node-key widget details
+AAI.model-version-id.update-node-key=6004cfa6-eb6d-4062-971f-b1fde6b74aa0
+AAI.model-invariant-id.update-node-key=fe81c801-f65d-408a-b2b7-a729a18f8154
+#vce widget details
+AAI.model-version-id.vce=b6cf54b5-ec45-43e1-be64-97b4e1513333
+AAI.model-invariant-id.vce=bab6dceb-e7e6-4301-a5e0-a7399b48d792
+#vf-module widget details
+AAI.model-invariant-id.vf-module=ef86f9c5-2165-44f3-8fc3-96018b609ea5
+AAI.model-version-id.vf-module=c00563ae-812b-4e62-8330-7c4d0f47088a
+#vig-server widget details
+AAI.model-version-id.vig-server=8e8c22f1-fbdf-48ea-844c-8bdeb44e7b16
+AAI.model-invariant-id.vig-server=bed7c3b7-35d0-4cd9-abde-41b20e68b28e
+#virtual-data-center widget details
+AAI.model-invariant-id.virtual-data-center=5150abcf-0c5f-4593-9afe-a19c48fc4824
+AAI.model-version-id.virtual-data-center=6dd43ced-d789-47af-a759-d3abc14e3ac1
+#vlan widget details
+AAI.model-version-id.vlan=257d88a5-a269-4c35-944f-aca04fbdb791
+AAI.model-invariant-id.vlan=d2b1eaf1-ae59-4116-9ee4-aa0179faa4f8
+#vnfc widget details
+AAI.model-invariant-id.vnfc=96129eb9-f0de-4e05-8af2-73146473f766
+AAI.model-version-id.vnfc=5761e0a7-c6df-4d8a-9ebd-b8f445054dec
+#vnf-image widget details
+AAI.model-invariant-id.vnf-image=f9a628ff-7aa0-40e2-a93d-02d91c950982
+AAI.model-version-id.vnf-image=c4d3e747-ba4a-4b17-9896-94c6f18c19d3
+#volume widget details
+AAI.model-version-id.volume=0fbe2e8f-4d91-4415-a772-88387049b38d
+AAI.model-invariant-id.volume=ddd739b4-2b25-46c4-affc-41a32af5cc42
+#volume-group widget details
+AAI.model-invariant-id.volume-group=fcec1b02-b2d0-4834-aef8-d71be04717dd
+AAI.model-version-id.volume-group=99d44c90-1f61-4418-b9a6-56586bf38c79
+#vpe widget details
+AAI.model-invariant-id.vpe=053ec3a7-5b72-492d-b54d-123805a9b967
+AAI.model-version-id.vpe=203817d3-829c-42d4-942d-2a935478e993
+#vpls-pe widget details
+AAI.model-version-id.vpls-pe=b1566228-6785-4ce1-aea2-053736f80341
+AAI.model-invariant-id.vpls-pe=457ba89b-334c-4fbd-acc4-160ac0e0cdc0
+#vpn-binding widget details
+AAI.model-invariant-id.vpn-binding=9e23b675-db2b-488b-b459-57aa9857baa0
+AAI.model-version-id.vpn-binding=21a146e5-9901-448c-9197-723076770119
+#vserver widget details
+AAI.model-invariant-id.vserver=ff69d4e0-a8e8-4108-bdb0-dd63217e63c7
+AAI.model-version-id.vserver=8ecb2c5d-7176-4317-a255-26274edfdd53
\ No newline at end of file
--- /dev/null
+{"roles": [
+ {
+ "name": "admin",
+ "functions": [
+ {
+ "name": "generateArtifacts",
+ "methods": [{"name": "POST"}]
+ }
+ ],
+ "users": [
+ {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}
+ ]
+ },
+ {
+ "name": "ops",
+ "functions": [{
+ "name": "actions",
+ "methods": [{"name": "POST"}]
+ }],
+ "users": [
+ {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}
+ ]
+ },
+ {
+ "name": "readonly",
+ "functions": [
+ {
+ "name": "actions",
+ "methods": [{"name": "GET"}]
+ }
+ ],
+ "users": [
+ {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}
+ ]
+ },
+ {
+ "name": "basicauth",
+ "functions": [{
+ "name": "util",
+ "methods": [{"name": "GET"}]
+ }],
+ "users": [{
+ "user": "aai",
+ "pass": "OBF:deadbeef"
+ }]
+ }
+]}
--- /dev/null
+auth.policy.file=/auth/auth_policy.json
+auth.authentication.disable=true
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xml>
+<configuration scan="true" scanPeriod="30 seconds" debug="true">
+ <include resource="org/springframework/boot/logging/logback/base.xml" />
+
+ <property name="componentName" value="AAI-BAS" />
+ <property name="logDirectory" value="/var/log/onap/${componentName}" />
+
+ <!-- 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|%mdc{ServiceName}|%mdc{PartnerName}|%mdc{TargetEntity}|%mdc{TargetServiceName}|%.-5level|%logger|%mdc{ClassName}|%msg%n" />
+
+ <property name="auditLogPattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{BeginTimestamp}|%mdc{EndTimestamp}|%mdc{RequestId}|%mdc{ServiceInstanceId}|%thread|%mdc{ServerFQDN}|%mdc{ServiceName}|%mdc{PartnerName}|%mdc{StatusCode}|%mdc{ResponseCode}|%mdc{ResponseDescription}|%logger|%.-5level|||%mdc{ElapsedTime}|%mdc{RemoteHost}|%mdc{ClientAddress}|%mdc{ClassName}|||%msg%n" />
+
+ <property name="metricsLogPattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{BeginTimestamp}|%mdc{EndTimestamp}|%mdc{RequestId}|%mdc{ServiceInstanceId}|%thread|%mdc{ServerFQDN}|%mdc{ServiceName}|%mdc{PartnerName}|%mdc{TargetEntity}|%mdc{TargetServiceName}|%mdc{StatusCode}|%mdc{ResponseCode}|%mdc{ResponseDescription}|%logger|%.-5level|||%mdc{ElapsedTime}|%mdc{RemoteHost}|%mdc{ClientAddress}|%mdc{ClassName}|||%msg%n" />
+
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+
+ <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>${auditLogPattern}</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>${metricsLogPattern}</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">
+ <!-- allow only events with a level below INFO, that is TRACE and DEBUG -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() < INFO.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>false</includeCallerData>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- Default / root appenders -->
+ <!-- This determines the logging level for 3rd party code -->
+ <!-- ============================================================================ -->
+
+ <root level="INFO">
+ <appender-ref ref="asyncEELF" />
+ <appender-ref ref="asyncEELFDebug" />
+</root>
+
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+
+ <logger name="com.att.eelf" level="INFO" additivity="false">
+ <appender-ref ref="asyncEELF" />
+</logger>
+
+ <!-- The level of this logger determines the contents of the debug log -->
+ <logger name="com.att.eelf.debug" level="INFO" additivity="false">
+ <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>
+
+ <!-- ============================================================================ -->
+ <!-- Non-EELF loggers -->
+ <!-- ============================================================================ -->
+
+ <!-- ATT packages including DMAAP message routing -->
+ <logger name="com.att" level="INFO" />
+
+ <!-- Spring related loggers -->
+ <logger name="org.springframework" level="WARN" />
+ <logger name="org.springframework.beans" level="WARN" />
+ <logger name="org.springframework.web" level="WARN" />
+
+ <!-- Other Loggers that may help troubleshoot -->
+ <logger name="org.apache" level="WARN" />
+ <logger name="org.apache.commons" 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" />
+
+</configuration>
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CONFIG_HOME
+ value: /opt/app/babel/config
+ - name: KEY_STORE_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_STORE_PASSWORD
+ - name: KEY_MANAGER_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_MANAGER_PASSWORD
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/babel/config/artifact-generator.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: artifact-generator.properties
+ - mountPath: /opt/app/babel/config/babel-auth.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: babel-auth.properties
+ - mountPath: /opt/app/babel/config/auth
+ name: {{ include "common.fullname" . }}-secrets
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/babel/config/logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: logback.xml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ name: filebeat-conf
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /usr/share/filebeat/data
+ name: aai-filebeat
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: artifact-generator.properties
+ path: artifact-generator.properties
+ - key: babel-auth.properties
+ path: babel-auth.properties
+ - key: logback.xml
+ path: logback.xml
+ - name: {{ include "common.fullname" . }}-secrets
+ secret:
+ secretName: {{ include "common.fullname" . }}-babel-secrets
+ - name: filebeat-conf
+ configMap:
+ name: aai-filebeat
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: aai-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-babel-secrets
+ namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/auth/*").AsSecrets . | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-pass
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ KEY_STORE_PASSWORD: {{ .Values.config.keyStorePassword | b64enc | quote }}
+ KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort}}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort}}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ readinessImage: readiness-check:2.0.0
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+image: onap/babel:1.2-STAGING-latest
+
+# application configuration
+config:
+ keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+ keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: false
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ portName: babel
+ externalPort: 79
+ internalPort: 9516
+ nodePort: 79
+
+ingress:
+ enabled: false
+
+resources: {}
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: ONAP AAI Cassandra
+name: aai-cassandra
+version: 2.0.0
--- /dev/null
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+ type: {{ .Values.service.type }}
+# Not working, open k8s bug: https://github.com/kubernetes/kubernetes/issues/58662
+ publishNotReadyAddresses: true
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName3 }}
+ - port: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName3 }}
+ {{- else -}}
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ - port: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName3 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
--- /dev/null
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ podManagementPolicy: {{ .Values.podManagementPolicy }}
+ updateStrategy:
+ type: {{ .Values.updateStrategy.type }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: {{ .Values.image }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ timeoutSeconds: {{ .Values.liveness.periodSeconds }}
+ lifecycle:
+ preStop:
+ exec:
+ command: ["/bin/sh", "-c", "PID=$(pidof java) && kill $PID && while ps -p $PID > /dev/null; do sleep 1; done"]
+ env:
+ {{- $seed_size := default 1 .Values.replicaCount | int -}}
+ {{- $global := . }}
+ - name: MAX_HEAP_SIZE
+ value: {{ .Values.config.heap.max }}
+ - name: HEAP_NEWSIZE
+ value: {{ .Values.config.heap.min }}
+ - name: CASSANDRA_SEEDS
+ value: "{{- range $i, $e := until $seed_size }}{{ template "common.fullname" $global }}-{{ $i }}.{{ include "common.servicename" $global }},{{- end }}"
+ - name: JVM_OPTS
+ value: {{ .Values.config.jvmOpts | quote }}
+ - name: CASSANDRA_CLUSTER_NAME
+ value: {{ .Values.config.clusterName | quote }}
+ - name: CASSANDRA_DC
+ value: {{ .Values.config.dataCenter | quote }}
+ - name: CASSANDRA_RACK
+ value: {{ .Values.config.rackName | quote }}
+ - name: CASSANDRA_AUTO_BOOTSTRAP
+ value: {{ .Values.config.autoBootstrap | quote }}
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: cassandra-data
+ mountPath: /var/lib/cassandra
+ resources:
+{{ toYaml .Values.resources | indent 10 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ {{- if not .Values.persistence.enabled }}
+ - name: cassandra-data
+ emptyDir: {}
+ {{- else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: cassandra-data
+ labels:
+ app: {{ template "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ annotations:
+ volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass }}
+ spec:
+ accessModes:
+ - {{ .Values.persistence.accessMode | quote }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size | quote }}
+ {{- end }}
--- /dev/null
+#{{ if .Values.persistence.enabled }}
+{{- $root := . -}}
+{{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: {{ $root.Release.Name }}-{{ $root.Values.service.name }}-{{ $i }}
+ namespace: {{ $root.Release.Namespace }}
+ labels:
+ type: {{ $root.Values.persistence.storageType }}
+ app: {{ $root.Values.service.name }}
+ chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
+ release: {{ $root.Release.Name }}
+ heritage: {{ $root.Release.Service }}
+spec:
+ capacity:
+ storage: {{ $root.Values.persistence.size }}
+ accessModes:
+ - {{ $root.Values.persistence.accessMode }}
+ hostPath:
+ path: {{ $root.Values.persistence.mountPath }}/{{ $root.Release.Name }}/{{ $root.Values.persistence.mountSubPath }}-{{ $i }}
+ persistentVolumeReclaimPolicy: {{ $root.Values.persistence.volumeReclaimPolicy }}
+{{ end }}
+#{{ end }}
--- /dev/null
+# Default values for cassandra.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+
+
+# application image
+dockerhubRepository: registry.hub.docker.com
+image: cassandra:2.1
+pullPolicy: Always
+
+# application configuration
+config:
+ heap:
+ max: 512M
+ min: 100M
+ jvmOpts: -Dcassandra.consistent.rangemovement=false
+ clusterName: aai-cluster
+ dataCenter: Pod lab
+ rackName: Rack1
+ autoBootstrap: true
+ ports:
+ cql: 9042
+ thrift: 9160
+ # If a JVM Agent is in place
+ # agent: 61621
+
+# default number of instances
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: aai-cassandra
+ internalPort: 9042
+ portName: cql
+ internalPort2: 9160
+ portName2: thrift
+ internalPort3: 61621
+ portName3: agent
+
+podManagementPolicy: OrderedReady
+updateStrategy:
+ type: OnDelete
+
+ingress:
+ enabled: false
+
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ ## storageClass: "-"
+ accessMode: ReadWriteOnce
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: aai/cassandra
+ storageType: local
+ storageClass: ""
+
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+description: ONAP AAI Champ microservice
+name: aai-champ
+version: 2.0.0
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+{
+ "roles": [
+ {
+ "name": "admin",
+ "functions": [
+ {
+ "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]
+ }
+ ],
+
+ "users": [
+ {
+ "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
+ }
+ ]
+ }
+ ]
+}
+
--- /dev/null
+keyName=aai-uuid
+sourceOfTruthName=source-of-truth
+createdTsName=aai-created-ts
+lastModTsName=aai-last-mod-ts
+collectionPropertiesKey=properties
+
--- /dev/null
+<beans xmlns="http://www.springframework.org/schema/beans"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xmlns:util="http://www.springframework.org/schema/util"
+xsi:schemaLocation="
+ http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://www.springframework.org/schema/util
+ http://www.springframework.org/schema/util/spring-util.xsd
+ ">
+
+ <!-- Event publisher to pass to the Champ library for logging raw graph
+ events (Kafka implementation). -->
+ <bean id="champEventPublisher" class="org.onap.aai.event.client.KafkaEventPublisher" >
+ <constructor-arg name="hosts" value="message-router-kafka.{{.Release.Namespace}}:9092" />
+ <constructor-arg name="topic" value="champRawEvents" />
+ </bean>
+
+ <!-- Graph Implementation Configuration-->
+ <util:map id="props" map-class="java.util.HashMap" key-type="java.lang.String" value-type="java.lang.Object">
+ <entry key="champcore.event.stream.buffer.capacity" value="50" value-type="java.lang.Integer"/>
+ <entry key="champcore.event.stream.publisher-pool-size" value="10" value-type="java.lang.Integer"/>
+ <entry key="champcore.event.stream.publisher" value-ref="champEventPublisher"/>
+
+ <entry key="graph.name" value="aaigraph"/>
+ <entry key="storage.backend" value="cassandra"/>
+ <entry key="storage.cassandra.read-consistency-level" value="LOCAL_QUORUM"/>
+ <entry key="storage.cassandra.write-consistency-level" value="LOCAL_QUORUM"/>
+ <entry key="storage.cassandra.replication-factor" value="3"/>
+ <entry key="storage.cassandra.replication-strategy-class" value="org.apache.cassandra.locator.SimpleStrategy"/>
+
+ {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+ {{- $global := . }}
+ <entry key="storage.hostname" value="{{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-aai-cassandra-{{ $i }},{{- end }}"/>
+ <entry key="storage.port" value="9160"/>
+ </util:map>
+
+ <!-- Janus Implementation -->
+ <bean id="graphBuilder" class="org.onap.aai.champjanus.graph.impl.JanusChampGraphImpl$Builder">
+ <constructor-arg value="aaigraph"/>
+ <constructor-arg ref="props" />
+ </bean>
+
+ <bean id="graphImpl" class="org.onap.aai.champjanus.graph.impl.JanusChampGraphImpl">
+ <constructor-arg ref="graphBuilder" />
+ </bean>
+
+ <bean id="champUUIDService" class="org.onap.champ.service.ChampUUIDService" >
+ <constructor-arg name="graphImpl" ref="graphImpl" />
+ </bean>
+
+ <bean id="cache" class="org.onap.champ.service.ChampTransactionCache" >
+ <constructor-arg name="txTimeOutInSec" value="600" />
+ <constructor-arg name="graphImpl" ref="graphImpl" />
+ </bean>
+
+ <bean id="champDataService" class="org.onap.champ.service.ChampDataService" >
+ <constructor-arg name="champUUIDService" ref="champUUIDService" />
+ <constructor-arg name="graphImpl" ref="graphImpl" />
+ <constructor-arg name="cache" ref="cache" />
+ </bean>
+
+ <bean id="champRestService" class="org.onap.champ.ChampRESTAPI" >
+ <constructor-arg name="champDataService" ref="champDataService" />
+ <constructor-arg name="champAsyncRequestProcessor"><null/></constructor-arg>
+ </bean>
+</beans>
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/appconfig/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dynamic
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dynamic/conf/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aai-resources
+ - --container-name
+ - message-router-kafka
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CONFIG_HOME
+ value: "/opt/app/champ-service/appconfig"
+ - name: GRAPHIMPL
+ value: "janus-deps"
+ - name: KEY_STORE_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_STORE_PASSWORD
+ - name: KEY_MANAGER_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_MANAGER_PASSWORD
+ - name: SERVICE_BEANS
+ value: "/opt/app/champ-service/dynamic/conf"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/champ-service/appconfig/champ-api.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: champ-api.properties
+ - mountPath: /opt/app/champ-service/appconfig/auth
+ name: {{ include "common.fullname" . }}-secrets
+ - mountPath: /opt/app/champ-service/dynamic/conf/champ-beans.xml
+ name: {{ include "common.fullname" . }}-dynamic-config
+ subPath: champ-beans.xml
+ - mountPath: /logs
+ name: {{ include "common.fullname" . }}-logs
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: champ-api.properties
+ path: champ-api.properties
+ - name: {{ include "common.fullname" . }}-secrets
+ secret:
+ secretName: {{ include "common.fullname" . }}-champ
+ - name: {{ include "common.fullname" . }}-dynamic-config
+ configMap:
+ name: {{ include "common.fullname" . }}-dynamic
+ items:
+ - key: champ-beans.xml
+ path: champ-beans.xml
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-champ
+ namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/appconfig/auth/*").AsSecrets . | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-pass
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ KEY_STORE_PASSWORD: {{ .Values.config.keyStorePassword | b64enc | quote }}
+ KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
+
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort}}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort}}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ readinessImage: readiness-check:2.0.0
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+image: onap/champ:1.2-STAGING-latest
+
+# application configuration
+config:
+ keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+ keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: false
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: champ
+ portName: champ
+ internalPort: 9522
+ nodePort: 78
+
+ingress:
+ enabled: false
+
+resources: {}
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.openecomp.org.v10" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v10" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.openecomp.org.v10.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.openecomp.org.v10.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.openecomp.org.v10.CloudInfrastructure" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.openecomp.org.v10.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.openecomp.org.v10.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.openecomp.org.v10.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.openecomp.org.v10.AaiInternal" />
- <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.openecomp.org.v10.Nodes"/>
- </java-attributes>
- </java-type>
-
- <java-type name="Nodes">
- <xml-root-element name="nodes" />
- </java-type>
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.openecomp.org.v10.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.openecomp.org.v10.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.openecomp.org.v10.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.openecomp.org.v10.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v10.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.openecomp.org.v10.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.openecomp.org.v10.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v10.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.openecomp.org.v10.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.openecomp.org.v10.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.openecomp.org.v10.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.openecomp.org.v10.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v10.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.openecomp.org.v10.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v10.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v10.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.openecomp.org.v10.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.openecomp.org.v10.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.openecomp.org.v10.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.openecomp.org.v10.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.openecomp.org.v10.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.openecomp.org.v10.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.openecomp.org.v10.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.openecomp.org.v10.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.openecomp.org.v10.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.openecomp.org.v10.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.openecomp.org.v10.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.openecomp.org.v10.CloudRegion" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site. NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.openecomp.org.v10.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.openecomp.org.v10.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.openecomp.org.v10.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.openecomp.org.v10.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.openecomp.org.v10.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.openecomp.org.v10.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v10.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v10.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.openecomp.org.v10.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&T's AIC." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.openecomp.org.v10.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.openecomp.org.v10.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.openecomp.org.v10.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.openecomp.org.v10.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.openecomp.org.v10.Complex" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.openecomp.org.v10.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.openecomp.org.v10.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.openecomp.org.v10.Tenant" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.openecomp.org.v10.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.openecomp.org.v10.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.openecomp.org.v10.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.openecomp.org.v10.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.openecomp.org.v10.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.openecomp.org.v10.SriovVfs" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,vpe,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.openecomp.org.v10.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.openecomp.org.v10.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- <xml-property name="dbAlias" value="vpn-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.openecomp.org.v10.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.openecomp.org.v10.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.openecomp.org.v10.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.openecomp.org.v10.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.openecomp.org.v10.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.openecomp.org.v10.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and VPEs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.openecomp.org.v10.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.openecomp.org.v10.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.openecomp.org.v10.Pserver" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v10.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.openecomp.org.v10.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name,prov-status" />
- <xml-property name="nameProps" value="prov-status" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.openecomp.org.v10.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpe,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.openecomp.org.v10.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v10.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.openecomp.org.v10.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
-
-
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.openecomp.org.v10.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.openecomp.org.v10.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.openecomp.org.v10.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.openecomp.org.v10.Customer" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.openecomp.org.v10.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.openecomp.org.v10.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.openecomp.org.v10.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.openecomp.org.v10.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.openecomp.org.v10.AllottedResources" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.openecomp.org.v10.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.openecomp.org.v10.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.openecomp.org.v10.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.openecomp.org.v10.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.openecomp.org.v10.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.openecomp.org.v10.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="vnf-image-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.openecomp.org.v10.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC. Does not strictly map to ASDC services." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.openecomp.org.v10.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.openecomp.org.v10.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.openecomp.org.v10.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.openecomp.org.v10.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.openecomp.org.v10.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.openecomp.org.v10.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.openecomp.org.v10.Vces" />
- <xml-element java-attribute="vpes" name="vpes" type="inventory.aai.openecomp.org.v10.Vpes" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.openecomp.org.v10.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.openecomp.org.v10.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.openecomp.org.v10.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.openecomp.org.v10.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.openecomp.org.v10.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.openecomp.org.v10.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.openecomp.org.v10.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.openecomp.org.v10.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.openecomp.org.v10.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.openecomp.org.v10.RouteTableReferences" />
- <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.openecomp.org.v10.InstanceGroups" />
- <xml-element java-attribute="zones" name="zones" type="inventory.aai.openecomp.org.v10.Zones" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.openecomp.org.v10.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Reason for this entity, role it is playing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.openecomp.org.v10.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.openecomp.org.v10.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.openecomp.org.v10.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.openecomp.org.v10.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="uniqueProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.openecomp.org.v10.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.openecomp.org.v10.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.openecomp.org.v10.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.openecomp.org.v10.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargets" name="route-targets" type="inventory.aai.openecomp.org.v10.RouteTargets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name,vpn-type" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.openecomp.org.v10.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v10.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.openecomp.org.v10.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.openecomp.org.v10.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - see child relationships" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.openecomp.org.v10.PortGroups" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v10.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v10.Entitlements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.openecomp.org.v10.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.openecomp.org.v10.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.openecomp.org.v10.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vpes">
- <xml-properties>
- <xml-property name="description" value="Virtual provider edge router. In 1504, A&AI will populate this object through an M&P and tool provided to operations." />
- </xml-properties>
- <xml-root-element name="vpes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpe" name="vpe" type="inventory.aai.openecomp.org.v10.Vpe" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vpe">
- <xml-root-element name="vpe" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service. Does not map strictly to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use. See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v4Loopback0IpAddress" name="v4-loopback0-ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the vpe operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether vpe access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v10.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v10.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Relationship-list must include related to info for complex." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,regional-resource-zone,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vpes" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.openecomp.org.v10.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.openecomp.org.v10.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Does not strictly map to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.openecomp.org.v10.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.openecomp.org.v10.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.openecomp.org.v10.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.openecomp.org.v10.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.openecomp.org.v10.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.openecomp.org.v10.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.openecomp.org.v10.GenericVnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of NF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this model will be providing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="string assigned to this model used for naming purposes" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.openecomp.org.v10.VfModules" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v10.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v10.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- <xml-property name="containsSuggestibleProps" value="true"/>
- <xml-property name="suggestionAliases" value="VNFs"/>
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.openecomp.org.v10.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id,vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.openecomp.org.v10.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.openecomp.org.v10.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.openecomp.org.v10.Pnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number of the device" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v10.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.openecomp.org.v10.PhysicalLink" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.openecomp.org.v10.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.openecomp.org.v10.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user,nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.openecomp.org.v10.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.openecomp.org.v10.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.openecomp.org.v10.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.openecomp.org.v10.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.Boolean" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.openecomp.org.v10.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-root-element name="model" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
- <xml-property name="nameProps" value="model-type" />
- <xml-property name="indexedProps" value="model-invariant-id,model-type" />
- <xml-property name="uniqueProps" value="model-invariant-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v10.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="ModelVers">
- <xml-root-element name="model-vers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.openecomp.org.v10.ModelVer" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelVer">
- <xml-root-element name="model-ver" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name" />
- <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
- <xml-property name="uniqueProps" value="model-version-id" />
- <xml-property name="container" value="model-vers" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v10.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.openecomp.org.v10.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v10.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.openecomp.org.v10.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.openecomp.org.v10.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.openecomp.org.v10.ConstrainedElementSets" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.openecomp.org.v10.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.openecomp.org.v10.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.openecomp.org.v10.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v10.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v10.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v10.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.openecomp.org.v10.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v10.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.openecomp.org.v10.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.openecomp.org.v10.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.openecomp.org.v10.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.openecomp.org.v10.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.openecomp.org.v10.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.openecomp.org.v10.InstanceFilters" />
- <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.openecomp.org.v10.SecondaryFilts" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v10.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.openecomp.org.v10.OverloadedModel" />
- </java-attributes>
- </java-type>
-
- <java-type name="OverloadedModel">
- <xml-root-element name="overloaded-model" />
- <xml-properties>
- <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v10.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.openecomp.org.v10.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilts">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filts" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.openecomp.org.v10.SecondaryFilt" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilt">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filt" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v10.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.openecomp.org.v10.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.openecomp.org.v10.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v10.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.openecomp.org.v10.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.openecomp.org.v10.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="InstanceGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="instance-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.openecomp.org.v10.InstanceGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceGroup">
- <xml-root-element name="instance-group" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subType" name="sub-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="General mechanism for grouping instances" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,description,type,sub-type" />
- <xml-property name="container" value="instance-groups" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.openecomp.org.v10.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="AllottedResources">
- <xml-properties>
- <xml-property name="description" value="This object is used to store slices of services being offered" />
- </xml-properties>
- <xml-root-element name="allotted-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.openecomp.org.v10.AllottedResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="AllottedResource">
- <xml-root-element name="allotted-resource" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Link back to more information in the controller" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of allotted resource." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="role" name="role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this resource will be providing." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.openecomp.org.v10.TunnelXconnects" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
- <xml-property name="dependentOn" value="service-instance" />
- <xml-property name="container" value="allotted-resources" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="TunnelXconnects">
- <xml-properties>
- <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
- </xml-properties>
- <xml-root-element name="tunnel-xconnects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.openecomp.org.v10.TunnelXconnect" />
- </java-attributes>
- </java-type>
-
- <java-type name="TunnelXconnect">
- <xml-root-element name="tunnel-xconnect" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id" />
- <xml-property name="dependentOn" value="allotted-resource" />
- <xml-property name="container" value="tunnel-xconnects" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="Entitlements">
- <xml-properties>
- <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="entitlements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.openecomp.org.v10.Entitlement" />
- </java-attributes>
- </java-type>
-
- <java-type name="Entitlement">
- <xml-root-element name="entitlement" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of an entitlement resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for entitlement group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="entitlements" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="Licenses">
- <xml-properties>
- <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="licenses" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.openecomp.org.v10.License" />
- </java-attributes>
- </java-type>
-
- <java-type name="License">
- <xml-root-element name="license" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of a license resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for license group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="licenses" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,vpe,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="Zones">
- <xml-properties>
- <xml-property name="description" value="Collection of zones" />
- </xml-properties>
- <xml-root-element name="zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.openecomp.org.v10.Zone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Zone">
- <xml-root-element name="zone" />
- <java-attributes>
- <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Code assigned by AIC to the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English name associated with the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Design of zone [Medium/Large…]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Context of zone [production/test]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="status" name="status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a zone." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB" />
- <xml-property name="nameProps" value="zone-name" />
- <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
- <xml-property name="uniqueProps" value="zone-id" />
- <xml-property name="container" value="zones" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="RouteTargets">
- <xml-properties>
- <xml-property name="description" value="Collection of route target information" />
- </xml-properties>
- <xml-root-element name="route-targets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.openecomp.org.v10.RouteTarget" />
- </java-attributes>
- </java-type>
- <java-type name="RouteTarget">
- <xml-root-element name="route-target" />
- <java-attributes>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this route target" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Route target information" />
- <xml-property name="container" value="route-targets" />
- <xml-property name="dependentOn" value="vpn-binding" />
- <xml-property name="canBeLinked" value="true" />
- </xml-properties>
- </java-type>
- </java-types>
-</xml-bindings>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.onap.org.v11" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v11" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.onap.org.v11.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.onap.org.v11.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.onap.org.v11.CloudInfrastructure" />
- <xml-element java-attribute="externalSystem" name="external-system" type="inventory.aai.onap.org.v11.ExternalSystem" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.onap.org.v11.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.onap.org.v11.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.onap.org.v11.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.onap.org.v11.AaiInternal" />
- <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.onap.org.v11.Nodes"/>
- </java-attributes>
- </java-type>
-
- <java-type name="Nodes">
- <xml-root-element name="nodes" />
- </java-type>
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.onap.org.v11.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.onap.org.v11.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.onap.org.v11.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.onap.org.v11.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.onap.org.v11.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.onap.org.v11.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.onap.org.v11.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.onap.org.v11.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.onap.org.v11.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.onap.org.v11.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.onap.org.v11.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.onap.org.v11.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.onap.org.v11.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.onap.org.v11.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.onap.org.v11.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.onap.org.v11.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.onap.org.v11.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExternalSystem">
- <xml-properties>
- <xml-property name="description" value="Namespace for external system." />
- </xml-properties>
- <xml-root-element name="external-system" />
- <java-attributes>
- <xml-element java-attribute="esrEmsList" name="esr-ems-list" type="inventory.aai.onap.org.v11.EsrEmsList" />
- <xml-element java-attribute="esrVnfmList" name="esr-vnfm-list" type="inventory.aai.onap.org.v11.EsrVnfmList" />
- <xml-element java-attribute="esrThirdpartySdncList" name="esr-thirdparty-sdnc-list" type="inventory.aai.onap.org.v11.EsrThirdpartySdncList" />
- </java-attributes>
- </java-type>
-
- <java-type name="EsrEmsList">
- <xml-root-element name="esr-ems-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrEms" name="esr-ems" type="inventory.aai.onap.org.v11.EsrEms" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrEms">
- <xml-root-element name="esr-ems" />
- <java-attributes>
- <xml-element java-attribute="emsId" name="ems-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of EMS." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist EMS address information used by EMS driver." />
- <xml-property name="indexedProps" value="ems-id" />
- <xml-property name="searchable" value="ems-id" />
- <xml-property name="container" value="esr-ems-list" />
- <xml-property name="namespace" value="external-system" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrVnfmList">
- <xml-root-element name="esr-vnfm-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrVnfm" name="esr-vnfm" type="inventory.aai.onap.org.v11.EsrVnfm" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrVnfm">
- <xml-root-element name="esr-vnfm" />
- <java-attributes>
- <xml-element java-attribute="vnfmId" name="vnfm-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VNFM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vimId" name="vim-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indecate the VIM to deploy VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="certificateUrl" name="certificate-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="certificate url of VNFM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist VNFM address information used by VF-C." />
- <xml-property name="indexedProps" value="vnfm-id" />
- <xml-property name="searchable" value="vnfm-id" />
- <xml-property name="container" value="esr-vnfm-list" />
- <xml-property name="namespace" value="external-system" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrThirdpartySdncList">
- <xml-root-element name="esr-thirdparty-sdnc-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrThirdpartySdnc" name="esr-thirdparty-sdnc" type="inventory.aai.onap.org.v11.EsrThirdpartySdnc" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrThirdpartySdnc">
- <xml-root-element name="esr-thirdparty-sdnc" />
- <java-attributes>
- <xml-element java-attribute="thirdpartySdncId" name="thirdparty-sdnc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of SDNC." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="location" name="location" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="used for DC type to indicate the location of SDNC, such as Core or Edge." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="productName" name="product-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="password used to access SDNC server." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist SDNC address information used by ONAP SDNC." />
- <xml-property name="indexedProps" value="sdnc-id" />
- <xml-property name="searchable" value="sdnc-id" />
- <xml-property name="container" value="esr-thirdparty-sdnc-list" />
- <xml-property name="namespace" value="external-system" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrSystemInfoList">
- <xml-root-element name="esr-system-info-list" />
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level external system auth info." />
- </xml-properties>
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrSystemInfo" name="esr-system-info" type="inventory.aai.onap.org.v11.EsrSystemInfo" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrSystemInfo">
- <xml-root-element name="esr-system-info" />
- <java-attributes>
- <xml-element java-attribute="esrSystemInfoId" name="esr-system-info-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of esr system info." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="systemName" name="system-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of external system." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vendor" name="vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="vendor of external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="version" name="version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="version of external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceUrl" name="service-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="url used to access external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="userName" name="user-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="username used to access external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="password" name="password" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="password used to access external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="systemType" name="system-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="protocol" name="protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of third party SDNC, for example netconf/snmp." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sslCacert" name="ssl-cacert" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ca file content if enabled ssl on auth-url." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Whether to verify VIM's certificate." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipAddress" name="ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service IP of ftp server." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="port" name="port" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service port of ftp server." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudDomain" name="cloud-domain" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="domain info for authentication." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="defaultTenant" name="default-tenant" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="default tenant of VIM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="passive" name="passive" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="ftp passive mode or not." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="remotepath" name="remote-path" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="resource or performance data file path." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="systemStatus" name="system-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the status of external system." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist common address information of external systems." />
- <xml-property name="indexedProps" value="esr-system-info-id,system-name,system-type" />
- <xml-property name="searchable" value="esr-system-info-id,system-name,system-type" />
- <xml-property name="container" value="esr-system-info-list" />
- <xml-property name="dependentOn" value="cloud-region,esr-ems,esr-vnfm,esr-thirdparty-sdnc" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.onap.org.v11.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.onap.org.v11.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.onap.org.v11.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.onap.org.v11.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.onap.org.v11.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.onap.org.v11.CloudRegion" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site. NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="sriovAutomation" name="sriov-automation" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Whether the cloud region supports (true) or does not support (false) SR-IOV automation." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudExtraInfo" name="cloud-extra-info" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudEpaCaps" name="cloud-epa-caps" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MultiVIM will discover and expose EPA capabilities." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.onap.org.v11.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.onap.org.v11.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.onap.org.v11.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.onap.org.v11.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.onap.org.v11.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.onap.org.v11.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v11.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v11.VipIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v11.VipIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.onap.org.v11.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.onap.org.v11.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.onap.org.v11.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.onap.org.v11.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.onap.org.v11.Complex" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.onap.org.v11.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.onap.org.v11.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.onap.org.v11.Tenant" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantContext" name="tenant-context" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store the tenant context." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.onap.org.v11.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id,tenant-context" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.onap.org.v11.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.onap.org.v11.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.onap.org.v11.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="allowedAddressPairs" name="allowed-address-pairs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Freeform field for storing an ip address, list of ip addresses or a subnet block." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.onap.org.v11.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.onap.org.v11.SriovVfs" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.onap.org.v11.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface,vnfc" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.onap.org.v11.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnKey" name="vpn-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-key" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface,vnfc" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.onap.org.v11.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.onap.org.v11.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.onap.org.v11.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.onap.org.v11.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="searchable" value="group-id,group-name"/>
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.onap.org.v11.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.onap.org.v11.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.onap.org.v11.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.onap.org.v11.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.onap.org.v11.Pserver" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates who owns and or manages the device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hostProfile" name="host-profile" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The host profile that defines the configuration of the pserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.onap.org.v11.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macAddress" name="mac-addresss" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC Address of the p-interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="inventory status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="sriovPfs" name="sriov-pfs" type="inventory.aai.onap.org.v11.SriovPfs" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name,prov-status" />
- <xml-property name="nameProps" value="prov-status" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.onap.org.v11.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.onap.org.v11.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.onap.org.v11.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.onap.org.v11.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.onap.org.v11.Customers" />
- <xml-element java-attribute="linesOfBusiness" name="lines-of-business" type="inventory.aai.onap.org.v11.LinesOfBusiness" />
- <xml-element java-attribute="owningEntities" name="owning-entities" type="inventory.aai.onap.org.v11.OwningEntities" />
- <xml-element java-attribute="platforms" name="platforms" type="inventory.aai.onap.org.v11.Platforms" />
- <xml-element java-attribute="projects" name="projects" type="inventory.aai.onap.org.v11.Projects" />
- </java-attributes>
- </java-type>
-
- <java-type name="Projects">
- <xml-properties>
- <xml-property name="description" value="Collection of projects" />
- </xml-properties>
- <xml-root-element name="projects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="project" name="project" type="inventory.aai.onap.org.v11.Project" />
- </java-attributes>
- </java-type>
-
- <java-type name="Project">
- <xml-root-element name="project" />
- <java-attributes>
- <xml-element java-attribute="projectName" name="project-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the project deploying a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes the project" />
- <xml-property name="indexedProps" value="project-name" />
- <xml-property name="uniqueProps" value="project-name" />
- <xml-property name="container" value="projects" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.onap.org.v11.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.onap.org.v11.Customer" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.onap.org.v11.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="LinesOfBusiness">
- <xml-properties>
- <xml-property name="description" value="Collection of lines-of-business" />
- </xml-properties>
- <xml-root-element name="lines-of-business" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lineOfBusiness" name="line-of-business" type="inventory.aai.onap.org.v11.LineOfBusiness" />
- </java-attributes>
- </java-type>
-
- <java-type name="LineOfBusiness">
- <xml-root-element name="line-of-business" />
- <java-attributes>
- <xml-element java-attribute="lineOfBusinessName" name="line-of-business-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the line-of-business (product)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes a line-of-business" />
- <xml-property name="indexedProps" value="line-of-business-name" />
- <xml-property name="uniqueProps" value="line-of-business-name" />
- <xml-property name="container" value="lines-of-business" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="OwningEntities">
- <xml-properties>
- <xml-property name="description" value="Collection of owning-entities" />
- </xml-properties>
- <xml-root-element name="owning-entities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="owningEntity" name="owning-entity" type="inventory.aai.onap.org.v11.OwningEntity" />
- </java-attributes>
- </java-type>
-
- <java-type name="OwningEntity">
- <xml-root-element name="owning-entity" />
- <java-attributes>
- <xml-element java-attribute="owningEntityId" name="owning-entity-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of an owning entity" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="owningEntityName" name="owning-entity-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Owning entity name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes an owning-entity" />
- <xml-property name="indexedProps" value="owning-entity-id, owning-entity-name" />
- <xml-property name="searchable" value="owning-entity-id" />
- <xml-property name="uniqueProps" value="owning-entity-id, owning-entity-name" />
- <xml-property name="container" value="owning-entities" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Platforms">
- <xml-properties>
- <xml-property name="description" value="Collection of platforms" />
- </xml-properties>
- <xml-root-element name="platforms" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="platform" name="platform" type="inventory.aai.onap.org.v11.Platform" />
- </java-attributes>
- </java-type>
-
- <java-type name="Platform">
- <xml-root-element name="platform" />
- <java-attributes>
- <xml-element java-attribute="platformName" name="platform-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the platform" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes a platform" />
- <xml-property name="indexedProps" value="platform-name" />
- <xml-property name="uniqueProps" value="platform-name" />
- <xml-property name="container" value="platforms" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.onap.org.v11.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.onap.org.v11.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.onap.org.v11.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceType" name="service-type" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceRole" name="service-role" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing the service role." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="environmentContext" name="environment-context" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store the environment context assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="workloadContext" name="workload-context" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store the workload context assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.onap.org.v11.AllottedResources" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.onap.org.v11.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.onap.org.v11.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.onap.org.v11.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.onap.org.v11.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.onap.org.v11.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.onap.org.v11.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="vnf-image-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.onap.org.v11.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC. Does not strictly map to ASDC services." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.onap.org.v11.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.onap.org.v11.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.onap.org.v11.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.onap.org.v11.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.onap.org.v11.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.onap.org.v11.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.onap.org.v11.Vces" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.onap.org.v11.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.onap.org.v11.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.onap.org.v11.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.onap.org.v11.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.onap.org.v11.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.onap.org.v11.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.onap.org.v11.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.onap.org.v11.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.onap.org.v11.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.onap.org.v11.RouteTableReferences" />
- <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.onap.org.v11.InstanceGroups" />
- <xml-element java-attribute="zones" name="zones" type="inventory.aai.onap.org.v11.Zones" />
- </java-attributes>
- </java-type>
- <java-type name="Configurations">
- <xml-properties>
- <xml-property name="description" value="Collection of configurations" />
- </xml-properties>
- <xml-root-element name="configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="configuration" name="configurations" type="inventory.aai.onap.org.v11.Configuration" />
- </java-attributes>
- </java-type>
-
- <java-type name="Configuration">
- <xml-root-element name="configuration" />
- <java-attributes>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the entity that will manage this feature. Could be an organization or the name of the application as well." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationId" name="configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID assigned to configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationName" name="configuration-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationType" name="configuration-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="port-mirroring-configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationSubType" name="configuration-sub-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="vprobe, pprobe." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of the configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationSelflink" name="configuration-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details from SDN-GC." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of the configuration used to customize the resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Port Mirror Configuration." />
- <xml-property name="indexedProps" value="configuration-id,model-invariant-id,model-version-id" />
- <xml-property name="uniqueProps" value="configuration-id" />
- <xml-property name="container" value="configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.onap.org.v11.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Reason for this entity, role it is playing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.onap.org.v11.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.onap.org.v11.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.onap.org.v11.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.onap.org.v11.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.onap.org.v11.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.onap.org.v11.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.onap.org.v11.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.onap.org.v11.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnRegion" name="vpn-region" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="region of customer vpn" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="customerVpnId" name="customer-vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id for this customer vpn" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargets" name="route-targets" type="inventory.aai.onap.org.v11.RouteTargets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name,vpn-type" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.onap.org.v11.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.onap.org.v11.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.onap.org.v11.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - see child relationships" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.onap.org.v11.PortGroups" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.onap.org.v11.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.onap.org.v11.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.onap.org.v11.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
-
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.onap.org.v11.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfcNamingCode" name="nfc-naming-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Short code that is used in naming instances of the item being modeled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfcFunction" name="nfc-function" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,nfc-function,nfc-naming-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation,model-invariant-id,model-version-id" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.onap.org.v11.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Does not strictly map to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.onap.org.v11.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.onap.org.v11.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.onap.org.v11.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.onap.org.v11.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.onap.org.v11.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.onap.org.v11.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetRole" name="subnet-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role of the subnet, referenced when assigning IPs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipAssignmentDirection" name="ip-assignment-direction" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip address assignment direction of the subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetSequence" name="subnet-sequence" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="sequence of the subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hostRoutes" name="host-routes" type="inventory.aai.onap.org.v11.HostRoutes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.onap.org.v11.GenericVnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of NF" />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this model will be providing" />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="string assigned to this model used for naming purposes" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for S-TAG to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network Management profile of this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.onap.org.v11.VfModules" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- <xml-property name="containsSuggestibleProps" value="true"/>
- <xml-property name="suggestionAliases" value="VNFs"/>
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.onap.org.v11.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id,vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.onap.org.v11.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.onap.org.v11.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.onap.org.v11.Pnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number of the device" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.onap.org.v11.PhysicalLink" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthUpValue" name="service-provider-bandwidth-up-value" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Upstream Bandwidth value agreed with the service provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthUpUnits" name="service-provider-bandwidth-up-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Units for the upstream BW value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthDownValue" name="service-provider-bandwidth-down-value" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Downstream Bandwidth value agreed with the service provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthDownUnits" name="service-provider-bandwidth-down-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Units for downstream BW value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.onap.org.v11.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.onap.org.v11.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.onap.org.v11.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.onap.org.v11.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.onap.org.v11.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.onap.org.v11.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="containsOtherV" name="contains-other-v" type="java.lang.String" />
- <xml-element java-attribute="deleteOtherV" name="delete-other-v" type="java.lang.String" />
- <xml-element java-attribute="svcinfra" name="SVC-INFRA" type="java.lang.String" />
- <xml-element java-attribute="preventDelete" name="prevent-delete" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.onap.org.v11.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-root-element name="model" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
- <xml-property name="nameProps" value="model-type" />
- <xml-property name="indexedProps" value="model-invariant-id,model-type" />
- <xml-property name="uniqueProps" value="model-invariant-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="ModelVers">
- <xml-root-element name="model-vers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.onap.org.v11.ModelVer" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelVer">
- <xml-root-element name="model-ver" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name" />
- <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
- <xml-property name="uniqueProps" value="model-version-id" />
- <xml-property name="container" value="model-vers" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.onap.org.v11.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.onap.org.v11.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.onap.org.v11.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.onap.org.v11.ConstrainedElementSets" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.onap.org.v11.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.onap.org.v11.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.onap.org.v11.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.onap.org.v11.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.onap.org.v11.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.onap.org.v11.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.onap.org.v11.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.onap.org.v11.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.onap.org.v11.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.onap.org.v11.InstanceFilters" />
- <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.onap.org.v11.SecondaryFilts" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.onap.org.v11.OverloadedModel" />
- </java-attributes>
- </java-type>
-
- <java-type name="OverloadedModel">
- <xml-root-element name="overloaded-model" />
- <xml-properties>
- <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.onap.org.v11.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilts">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filts" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.onap.org.v11.SecondaryFilt" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilt">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filt" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.onap.org.v11.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.onap.org.v11.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.onap.org.v11.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.onap.org.v11.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="InstanceGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="instance-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.onap.org.v11.InstanceGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceGroup">
- <xml-root-element name="instance-group" />
- <java-attributes>
- <xml-element java-attribute="instanceGroupRole" name="instance-group-role" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role of the instance group." />
- </xml-properties>
- </xml-element>
-
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
-
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ASDC model version uid for this resource model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subType" name="sub-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="General mechanism for grouping instances" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="searchable" value="id,description"/>
- <xml-property name="indexedProps" value="id,description,type,sub-type" />
- <xml-property name="container" value="instance-groups" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.onap.org.v11.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="AllottedResources">
- <xml-properties>
- <xml-property name="description" value="This object is used to store slices of services being offered" />
- </xml-properties>
- <xml-root-element name="allotted-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.onap.org.v11.AllottedResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="AllottedResource">
- <xml-root-element name="allotted-resource" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Link back to more information in the controller" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of allotted resource." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="role" name="role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this resource will be providing." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v11.TunnelXconnects" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
- <xml-property name="dependentOn" value="service-instance" />
- <xml-property name="container" value="allotted-resources" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="TunnelXconnects">
- <xml-properties>
- <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
- </xml-properties>
- <xml-root-element name="tunnel-xconnects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.onap.org.v11.TunnelXconnect" />
- </java-attributes>
- </java-type>
-
- <java-type name="TunnelXconnect">
- <xml-root-element name="tunnel-xconnect" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id" />
- <xml-property name="dependentOn" value="allotted-resource" />
- <xml-property name="container" value="tunnel-xconnects" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="Entitlements">
- <xml-properties>
- <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="entitlements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.onap.org.v11.Entitlement" />
- </java-attributes>
- </java-type>
-
- <java-type name="Entitlement">
- <xml-root-element name="entitlement" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of an entitlement resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for entitlement group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce" />
- <xml-property name="container" value="entitlements" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="Licenses">
- <xml-properties>
- <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="licenses" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.onap.org.v11.License" />
- </java-attributes>
- </java-type>
-
- <java-type name="License">
- <xml-root-element name="license" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of a license resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for license group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce" />
- <xml-property name="container" value="licenses" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="Zones">
- <xml-properties>
- <xml-property name="description" value="Collection of zones" />
- </xml-properties>
- <xml-root-element name="zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.onap.org.v11.Zone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Zone">
- <xml-root-element name="zone" />
- <java-attributes>
- <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Code assigned by AIC to the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English name associated with the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Design of zone [Medium/Large?]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Context of zone [production/test]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="status" name="status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a zone." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB" />
- <xml-property name="nameProps" value="zone-name" />
- <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
- <xml-property name="uniqueProps" value="zone-id" />
- <xml-property name="container" value="zones" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="RouteTargets">
- <xml-properties>
- <xml-property name="description" value="Collection of route target information" />
- </xml-properties>
- <xml-root-element name="route-targets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.onap.org.v11.RouteTarget" />
- </java-attributes>
- </java-type>
- <java-type name="RouteTarget">
- <xml-root-element name="route-target" />
- <java-attributes>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this route target" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Route target information" />
- <xml-property name="container" value="route-targets" />
- <xml-property name="dependentOn" value="vpn-binding" />
- <xml-property name="canBeLinked" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovPfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Physical Functions." />
- </xml-properties>
- <xml-root-element name="sriov-pfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovPf" name="sriov-pf" type="inventory.aai.onap.org.v11.SriovPf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovPf">
- <xml-root-element name="sriov-pf" />
- <java-attributes>
- <xml-element java-attribute="pfPciId" name="pf-pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier for the sriov-pf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Physical Function" />
- <xml-property name="indexedProps" value="pf-pci-id" />
- <xml-property name="dependentOn" value="p-interface" />
- <xml-property name="container" value="sriov-pfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="HostRoutes">
- <xml-root-element name="host-routes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="hostRoute" name="host-route" type="inventory.aai.onap.org.v11.HostRoute" />
- </java-attributes>
- </java-type>
- <java-type name="HostRoute">
- <xml-root-element name="host-route" />
- <java-attributes>
- <xml-element java-attribute="hostRouteId" name="host-route-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="host-route id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routePrefix" name="route-prefix" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="subnet prefix" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nextHop" name="next-hop" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Could be ip-address, hostname, or service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nextHopType" name="next-hop-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Should be ip-address, hostname, or service-instance to match next-hop" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="host-route-id" />
- <xml-property name="dependentOn" value="subnet" />
- <xml-property name="container" value="host-routes" />
- </xml-properties>
- </java-type>
- <java-type name="VipIpv4AddressList">
- <xml-root-element name="vip-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="vipIpv4Address" name="vip-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vipIpv4PrefixLength" name="vip-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="vip-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- </xml-properties>
- </java-type>
-
- <java-type name="VipIpv6AddressList">
- <xml-root-element name="vip-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="vipIpv6Address" name="vip-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vipIpv6PrefixLength" name="vip-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="vip-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- </xml-properties>
- </java-type>
- </java-types>
-</xml-bindings>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.openecomp.org.v8" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v8" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.openecomp.org.v8.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.openecomp.org.v8.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.openecomp.org.v8.CloudInfrastructure" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.openecomp.org.v8.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.openecomp.org.v8.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.openecomp.org.v8.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.openecomp.org.v8.AaiInternal" />
- </java-attributes>
- </java-type>
-
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.openecomp.org.v8.SearchResults" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.openecomp.org.v8.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.openecomp.org.v8.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v8.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.openecomp.org.v8.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the AAI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.openecomp.org.v8.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.openecomp.org.v8.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.openecomp.org.v8.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.openecomp.org.v8.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.openecomp.org.v8.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.openecomp.org.v8.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.openecomp.org.v8.CloudRegions" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.openecomp.org.v8.Pservers" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.openecomp.org.v8.CloudRegion" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.openecomp.org.v8.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.openecomp.org.v8.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.openecomp.org.v8.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.openecomp.org.v8.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.openecomp.org.v8.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.openecomp.org.v8.Images" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.openecomp.org.v8.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.openecomp.org.v8.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the SDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as SDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.openecomp.org.v8.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by AAI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in AAI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.openecomp.org.v8.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.openecomp.org.v8.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by AAI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.openecomp.org.v8.Tenant" />
- </java-attributes>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.openecomp.org.v8.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.openecomp.org.v8.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.openecomp.org.v8.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-name,vserver-id,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.openecomp.org.v8.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether AAI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.openecomp.org.v8.Vlans" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.openecomp.org.v8.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.openecomp.org.v8.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.openecomp.org.v8.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.openecomp.org.v8.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.openecomp.org.v8.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.openecomp.org.v8.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v8.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.openecomp.org.v8.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.openecomp.org.v8.Pserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v8.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v8.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.openecomp.org.v8.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.openecomp.org.v8.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v8.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.openecomp.org.v8.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.openecomp.org.v8.Customer" />
- </java-attributes>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across OpenECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.openecomp.org.v8.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="subscriber-name,global-customer-id" />
- <xml-property name="uniqueProps" value="global-customer-id,subscriber-name" />
- <xml-property name="alternateKeys1" value="subscriber-name" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.openecomp.org.v8.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across OpenECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from AAI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.openecomp.org.v8.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.openecomp.org.v8.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operational status of the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v8.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by SDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="services" name="services" type="inventory.aai.openecomp.org.v8.Services" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.openecomp.org.v8.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.openecomp.org.v8.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.openecomp.org.v8.LogicalLinks" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.openecomp.org.v8.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.openecomp.org.v8.L3Networks" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.openecomp.org.v8.GenericVnfs" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.openecomp.org.v8.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.openecomp.org.v8.PhysicalLinks" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.openecomp.org.v8.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack (should be ip-version)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,link-id" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.openecomp.org.v8.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.openecomp.org.v8.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across AAI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from SDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.openecomp.org.v8.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.openecomp.org.v8.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.openecomp.org.v8.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant)" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-network-fqdn" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.openecomp.org.v8.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.openecomp.org.v8.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.openecomp.org.v8.GenericVnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the SDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as SDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from SDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v8.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.openecomp.org.v8.VfModules" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.openecomp.org.v8.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.openecomp.org.v8.Pnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration-status is the status of orchestration on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v8.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v8.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.openecomp.org.v8.PhysicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. AAI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.openecomp.org.v8.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.openecomp.org.v8.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.openecomp.org.v8.EdgePropNames" />
- </java-attributes>
- </java-type>
-
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.String" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from SDC."/>
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.openecomp.org.v8.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from SDC." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by SDC to describe the inventory assets and their connections related to SDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.openecomp.org.v8.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by SDC to describe an inventory asset and its connections related to SDC models" />
- <xml-property name="nameProps" value="model-name,model-type" />
- <xml-property name="indexedProps" value="model-name-version-id,model-type,model-name,model-id,model-version" />
- <xml-property name="alternateKeys1" value="model-id,model-version" />
- <xml-property name="uniqueProps" value="model-name-version-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="model" />
- <java-attributes>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in SDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v8.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v8.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.openecomp.org.v8.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-point" type="java.lang.String">
- <xml-element-wrapper name="linkage-points" />
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v8.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.openecomp.org.v8.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.openecomp.org.v8.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.openecomp.org.v8.ConstrainedElementSets" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.openecomp.org.v8.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.openecomp.org.v8.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.openecomp.org.v8.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v8.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v8.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String">
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v8.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.openecomp.org.v8.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v8.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.openecomp.org.v8.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.openecomp.org.v8.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.openecomp.org.v8.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.openecomp.org.v8.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-name" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-value" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.openecomp.org.v8.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.openecomp.org.v8.InstanceFilters" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v8.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.openecomp.org.v8.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.openecomp.org.v8.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v8.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.openecomp.org.v8.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.openecomp.org.v8.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v8.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.openecomp.org.v8.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.openecomp.org.v8.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- </java-types>
-</xml-bindings>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.openecomp.org.v9" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v9" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.openecomp.org.v9.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.openecomp.org.v9.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.openecomp.org.v9.CloudInfrastructure" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.openecomp.org.v9.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.openecomp.org.v9.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.openecomp.org.v9.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.openecomp.org.v9.AaiInternal" />
- <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.openecomp.org.v9.Nodes"/>
- </java-attributes>
- </java-type>
-
- <java-type name="Nodes">
- <xml-root-element name="nodes" />
- </java-type>
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.openecomp.org.v9.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.openecomp.org.v9.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.openecomp.org.v9.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.openecomp.org.v9.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.openecomp.org.v9.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.openecomp.org.v9.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.openecomp.org.v9.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.openecomp.org.v9.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.openecomp.org.v9.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.openecomp.org.v9.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v9.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.openecomp.org.v9.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v9.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.openecomp.org.v9.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.openecomp.org.v9.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.openecomp.org.v9.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.openecomp.org.v9.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.openecomp.org.v9.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.openecomp.org.v9.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.openecomp.org.v9.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.openecomp.org.v9.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.openecomp.org.v9.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.openecomp.org.v9.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.openecomp.org.v9.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.openecomp.org.v9.CloudRegion" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site. NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.openecomp.org.v9.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.openecomp.org.v9.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.openecomp.org.v9.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.openecomp.org.v9.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.openecomp.org.v9.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.openecomp.org.v9.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v9.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v9.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.openecomp.org.v9.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&T's AIC." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.openecomp.org.v9.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModulePersonaModelCustomizationId" name="vf-module-persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
- <xml-property name="dbAlias" value="vf-module-model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.openecomp.org.v9.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.openecomp.org.v9.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.openecomp.org.v9.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.openecomp.org.v9.Complex" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.openecomp.org.v9.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.openecomp.org.v9.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.openecomp.org.v9.Tenant" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.openecomp.org.v9.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.openecomp.org.v9.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.openecomp.org.v9.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.openecomp.org.v9.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.openecomp.org.v9.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.openecomp.org.v9.SriovVfs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,vpe,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.openecomp.org.v9.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.openecomp.org.v9.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- <xml-property name="dbAlias" value="vpn-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.openecomp.org.v9.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.openecomp.org.v9.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.openecomp.org.v9.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.openecomp.org.v9.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.openecomp.org.v9.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.openecomp.org.v9.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and VPEs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.openecomp.org.v9.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.openecomp.org.v9.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.openecomp.org.v9.Pserver" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.openecomp.org.v9.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name,prov-status" />
- <xml-property name="nameProps" value="prov-status" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.openecomp.org.v9.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpe,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.openecomp.org.v9.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.openecomp.org.v9.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
-
-
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.openecomp.org.v9.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.openecomp.org.v9.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.openecomp.org.v9.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.openecomp.org.v9.Customer" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.openecomp.org.v9.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.openecomp.org.v9.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.openecomp.org.v9.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.openecomp.org.v9.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.openecomp.org.v9.AllottedResources" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.openecomp.org.v9.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.openecomp.org.v9.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.openecomp.org.v9.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.openecomp.org.v9.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.openecomp.org.v9.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.openecomp.org.v9.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="vnf-image-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.openecomp.org.v9.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC. Does not strictly map to ASDC services." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.openecomp.org.v9.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.openecomp.org.v9.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.openecomp.org.v9.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.openecomp.org.v9.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.openecomp.org.v9.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.openecomp.org.v9.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.openecomp.org.v9.Vces" />
- <xml-element java-attribute="vpes" name="vpes" type="inventory.aai.openecomp.org.v9.Vpes" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.openecomp.org.v9.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.openecomp.org.v9.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.openecomp.org.v9.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.openecomp.org.v9.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.openecomp.org.v9.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.openecomp.org.v9.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.openecomp.org.v9.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.openecomp.org.v9.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.openecomp.org.v9.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.openecomp.org.v9.RouteTableReferences" />
- <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.openecomp.org.v9.InstanceGroups" />
- <xml-element java-attribute="zones" name="zones" type="inventory.aai.openecomp.org.v9.Zones" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.openecomp.org.v9.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Reason for this entity, role it is playing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.openecomp.org.v9.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.openecomp.org.v9.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.openecomp.org.v9.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.openecomp.org.v9.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="uniqueProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.openecomp.org.v9.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.openecomp.org.v9.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.openecomp.org.v9.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.openecomp.org.v9.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify a VPN, globally unique in the network" />
- <xml-property name="dataLink" value="./route-targets/route-target/{global-route-target}/{route-target-role}" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this route target" />
- <xml-property name="dataLink" value="./route-targets/route-target/{global-route-target}/{route-target-role}" />
- <xml-property name="defaultValue" value="BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name,vpn-type" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,global-route-target,vpn-type" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.openecomp.org.v9.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.openecomp.org.v9.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.openecomp.org.v9.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - see child relationships" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.openecomp.org.v9.PortGroups" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v9.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v9.Entitlements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.openecomp.org.v9.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.openecomp.org.v9.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.openecomp.org.v9.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vpes">
- <xml-properties>
- <xml-property name="description" value="Virtual provider edge router. In 1504, A&AI will populate this object through an M&P and tool provided to operations." />
- </xml-properties>
- <xml-root-element name="vpes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpe" name="vpe" type="inventory.aai.openecomp.org.v9.Vpe" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vpe">
- <xml-root-element name="vpe" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service. Does not map strictly to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use. See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v4Loopback0IpAddress" name="v4-loopback0-ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the vpe operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether vpe access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v9.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v9.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Relationship-list must include related to info for complex." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,regional-resource-zone,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vpes" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.openecomp.org.v9.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.openecomp.org.v9.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Does not strictly map to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.openecomp.org.v9.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.openecomp.org.v9.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.openecomp.org.v9.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.openecomp.org.v9.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.openecomp.org.v9.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.openecomp.org.v9.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.openecomp.org.v9.GenericVnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path." />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.openecomp.org.v9.VfModules" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v9.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v9.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.openecomp.org.v9.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id,vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.openecomp.org.v9.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.openecomp.org.v9.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.openecomp.org.v9.Pnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number of the device" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.openecomp.org.v9.PhysicalLink" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.openecomp.org.v9.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.openecomp.org.v9.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user, nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.openecomp.org.v9.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.openecomp.org.v9.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.openecomp.org.v9.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.openecomp.org.v9.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.Boolean" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.openecomp.org.v9.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-root-element name="model" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
- <xml-property name="nameProps" value="model-type" />
- <xml-property name="indexedProps" value="model-invariant-id,model-type" />
- <xml-property name="uniqueProps" value="model-invariant-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v9.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="ModelVers">
- <xml-root-element name="model-vers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.openecomp.org.v9.ModelVer" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelVer">
- <xml-root-element name="model-ver" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name" />
- <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
- <xml-property name="uniqueProps" value="model-version-id" />
- <xml-property name="container" value="model-vers" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v9.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.openecomp.org.v9.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v9.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.openecomp.org.v9.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.openecomp.org.v9.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.openecomp.org.v9.ConstrainedElementSets" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.openecomp.org.v9.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.openecomp.org.v9.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.openecomp.org.v9.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v9.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v9.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v9.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.openecomp.org.v9.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v9.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.openecomp.org.v9.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.openecomp.org.v9.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.openecomp.org.v9.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.openecomp.org.v9.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.openecomp.org.v9.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.openecomp.org.v9.InstanceFilters" />
- <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.openecomp.org.v9.SecondaryFilts" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v9.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.openecomp.org.v9.OverloadedModel" />
- </java-attributes>
- </java-type>
-
- <java-type name="OverloadedModel">
- <xml-root-element name="overloaded-model" />
- <xml-properties>
- <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v9.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.openecomp.org.v9.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilts">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filts" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.openecomp.org.v9.SecondaryFilt" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilt">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filt" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.openecomp.org.v9.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.openecomp.org.v9.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.openecomp.org.v9.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.openecomp.org.v9.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="InstanceGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="instance-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.openecomp.org.v9.InstanceGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceGroup">
- <xml-root-element name="instance-group" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subType" name="sub-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="General mechanism for grouping instances" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,description,type,sub-type" />
- <xml-property name="container" value="instance-groups" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.openecomp.org.v9.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="AllottedResources">
- <xml-properties>
- <xml-property name="description" value="This object is used to store slices of services being offered" />
- </xml-properties>
- <xml-root-element name="allotted-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.openecomp.org.v9.AllottedResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="AllottedResource">
- <xml-root-element name="allotted-resource" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Link back to more information in the controller" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.openecomp.org.v9.TunnelXconnects" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,persona-model-id,persona-model-version" />
- <xml-property name="dependentOn" value="service-instance" />
- <xml-property name="container" value="allotted-resources" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="TunnelXconnects">
- <xml-properties>
- <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
- </xml-properties>
- <xml-root-element name="tunnel-xconnects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.openecomp.org.v9.TunnelXconnect" />
- </java-attributes>
- </java-type>
-
- <java-type name="TunnelXconnect">
- <xml-root-element name="tunnel-xconnect" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id" />
- <xml-property name="dependentOn" value="allotted-resource" />
- <xml-property name="container" value="tunnel-xconnects" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="Entitlements">
- <xml-properties>
- <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="entitlements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.openecomp.org.v9.Entitlement" />
- </java-attributes>
- </java-type>
-
- <java-type name="Entitlement">
- <xml-root-element name="entitlement" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of an entitlement resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for entitlement group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="entitlements" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="Licenses">
- <xml-properties>
- <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="licenses" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.openecomp.org.v9.License" />
- </java-attributes>
- </java-type>
-
- <java-type name="License">
- <xml-root-element name="license" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of a license resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for license group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="licenses" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,vpe,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="Zones">
- <xml-properties>
- <xml-property name="description" value="Collection of zones" />
- </xml-properties>
- <xml-root-element name="zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.openecomp.org.v9.Zone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Zone">
- <xml-root-element name="zone" />
- <java-attributes>
- <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Code assigned by AIC to the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English name associated with the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Design of zone [Medium/Large…]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Context of zone [production/test]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="status" name="status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a zone." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB" />
- <xml-property name="nameProps" value="zone-name" />
- <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
- <xml-property name="uniqueProps" value="zone-id" />
- <xml-property name="container" value="zones" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- </java-types>
-</xml-bindings>
<route xmlns="http://camel.apache.org/schema/spring" trace="true">
- <from uri="event-bus:mybus/?eventTopic=AAI-EVENT&groupName=datarouter&groupId=datarouter&url=http://dmaap.{{.Release.Namespace}}:3904"/>
+ <from uri="event-bus:mybus/?eventTopic=AAI-EVENT&groupName=datarouter&groupId=datarouter&url=http://message-router.{{.Release.Namespace}}:3904"/>
<to uri="bean:entityEventPolicy?method=process"/>
</route>
---
apiVersion: v1
kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v8
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v8.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v9
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v9.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v10
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v10.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v11
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v11.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
metadata:
name: {{ include "common.fullname" . }}-dynamic
namespace: {{ include "common.namespace" . }}
mountPath: /logroot/
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: SERVICE_BEANS
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v8.xml
- subPath: aai_oxm_v8.xml
- name: {{ include "common.fullname" . }}-model-v8
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v9.xml
- subPath: aai_oxm_v9.xml
- name: {{ include "common.fullname" . }}-model-v9
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v10.xml
- subPath: aai_oxm_v10.xml
- name: {{ include "common.fullname" . }}-model-v10
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v11.xml
- subPath: aai_oxm_v11.xml
- name: {{ include "common.fullname" . }}-model-v11
- mountPath: /opt/app/data-router/config/auth
name: {{ include "common.fullname" . }}-auth
- mountPath: /opt/app/data-router/config/data-router.properties
- name: localtime
hostPath:
path: /etc/localtime
- - name: {{ include "common.fullname" . }}-model-v8
- configMap:
- name: {{ include "common.fullname" . }}-model-v8
- - name: {{ include "common.fullname" . }}-model-v9
- configMap:
- name: {{ include "common.fullname" . }}-model-v9
- - name: {{ include "common.fullname" . }}-model-v10
- configMap:
- name: {{ include "common.fullname" . }}-model-v10
- - name: {{ include "common.fullname" . }}-model-v11
- configMap:
- name: {{ include "common.fullname" . }}-model-v11
- name: {{ include "common.fullname" . }}-auth
secret:
secretName: {{ include "common.fullname" . }}
name: {{ include "common.fullname" . }}-dynamic
- name: {{ include "common.fullname" . }}-logs
hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ include "common.namespace" . }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
repository: nexus3.onap.org:10001
-image: onap/data-router:v1.1.0
+image: onap/data-router:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
+dockerhubRepository: registry.hub.docker.com
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
# application configuration
config:
keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
name: {{ include "common.fullname" . }}
- name: elasticsearch-data
hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ include "common.namespace" . }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- end}}
selector:
app: {{ include "common.fullname" . }}
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
dockerhubRepository: docker.io
service:
type: ClusterIP
name: aai-elasticsearch
+ portName: aai-elasticsearch
internalPort: 9200
ingress:
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+description: Gizmo service
+name: aai-gizmo
+version: 2.0.0
--- /dev/null
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
--- /dev/null
+{
+ "roles": [
+ {
+ "name": "admin",
+ "functions": [
+ {
+ "name": "crud", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" }, { "name": "PATCH"} ]
+ }
+ ],
+
+ "users": [
+ {
+ "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
--- /dev/null
+# CRUD-API configuration
+
+crud.async.request.timeout=60000
+crud.async.response.process.poll.interval=1000
+crud.collection.properties.key=properties
--- /dev/null
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:util="http://www.springframework.org/schema/util"
+ xsi:schemaLocation="
+ http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://www.springframework.org/schema/util
+ http://www.springframework.org/schema/util/spring-util.xsd
+ ">
+
+ <bean id="champDao" class="org.onap.crud.dao.champ.ChampDao">
+ <constructor-arg name="champUrl" value="https://aai-champ.{{.Release.Namespace}}:9522/services/champ-service/v1/"/>
+ <constructor-arg name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10"/>
+ </bean>
+
+ <bean id="dataRouterDAO" class="org.onap.crud.dao.DataRouterDAO">
+ <constructor-arg name="url" value="https://data-router.{{.Release.Namespace}}:9502/services/champ-service/v1/"/>
+ <constructor-arg name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10"/>
+ </bean>
+
+ <!-- Synchronous Mode -->
+ <bean id="graphDataService" class="org.onap.crud.service.CrudGraphDataService" >
+ <constructor-arg name="dao" ref="champDao" />
+ <constructor-arg name="daoForGet" ref="champDao" /> <!-- Using champ for both types of API for now -->
+ </bean>
+
+ <bean id="crudRestService" class="org.onap.crud.service.CrudRestService" init-method="startup" >
+ <constructor-arg name="graphDataService" ref="graphDataService" />
+ </bean>
+
+ <bean id="aaiResourceService" class="org.onap.crud.service.AaiResourceService" init-method="startup" >
+ <constructor-arg name="graphDataService" ref="graphDataService" />
+ </bean>
+
+</beans>
--- /dev/null
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["logstash.{{ .Release.Name }}-log:5044"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/onap" />
+ <property name="componentName" value="aai" />
+ <property name="subComponentName" value="aai-CRUD" />
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <!-- default eelf log file names -->
+ <property name="generalLogName" value="application" />
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${pattern}</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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</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>${queueSize}</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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+ <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger name="com.att.eelf" level="info" additivity="false">
+ <appender-ref ref="asyncEELF" />
+ </logger>
+ <logger name="com.att.eelf.security" level="info" additivity="false">
+ <appender-ref ref="asyncEELFSecurity" />
+ </logger>
+ <logger name="com.att.eelf.perf" level="info" additivity="false">
+ <appender-ref ref="asyncEELFPerformance" />
+ </logger>
+ <logger name="com.att.eelf.server" level="info" additivity="false">
+ <appender-ref ref="asyncEELFServer" />
+ </logger>
+ <logger name="com.att.eelf.policy" level="info" additivity="false">
+ <appender-ref ref="asyncEELFPolicy" />
+ </logger>
+ <logger name="com.att.eelf.debug" level="debug" additivity="false">
+ <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>
+ <logger name="com.att.eelf.error" level="info" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </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" />
+ <!-- AJSC Services (bootstrap services) -->
+ <logger name="ajsc" level="WARN" />
+ <logger name="ajsc.RouteMgmtService" level="WARN" />
+ <logger name="ajsc.ComputeService" level="WARN" />
+ <logger name="ajsc.VandelayService" level="WARN" />
+ <logger name="ajsc.FilePersistenceService" level="WARN" />
+ <logger name="ajsc.UserDefinedJarService" level="WARN" />
+ <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
+ <logger name="ajsc.LoggingConfigurationService" level="WARN" />
+ <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
+ logging) -->
+ <logger name="ajsc.utils" level="WARN" />
+ <logger name="ajsc.utils.DME2Helper" level="WARN" />
+ <logger name="ajsc.filters" level="WARN" />
+ <logger name="ajsc.beans.interceptors" level="WARN" />
+ <logger name="ajsc.restlet" level="WARN" />
+ <logger name="ajsc.servlet" level="WARN" />
+ <logger name="com.att" level="INFO" />
+ <logger name="com.att.ajsc.csi.logging" level="WARN" />
+ <logger name="com.att.ajsc.filemonitor" level="WARN" />
+ <!-- CRUD Service loggers -->
+ <logger name="org.openecomp.crud" level="INFO" />
+ <!-- Other Loggers that may help troubleshoot -->
+ <logger name="net.sf" level="WARN" />
+ <logger name="org.apache" 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 level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
--- /dev/null
+{
+ "contains-other-v": "java.lang.String",
+ "delete-other-v": "java.lang.String",
+ "SVC-INFRA": "java.lang.String",
+ "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
--- /dev/null
+{
+ "contains-other-v": "java.lang.String",
+ "delete-other-v": "java.lang.String",
+ "SVC-INFRA": "java.lang.String",
+ "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
--- /dev/null
+{
+ "contains-other-v": "java.lang.String",
+ "delete-other-v": "java.lang.String",
+ "SVC-INFRA": "java.lang.String",
+ "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-model-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/model/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CONFIG_HOME
+ value: /opt/app/crud-service/config/
+ - name: KEY_STORE_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_STORE_PASSWORD
+ - name: KEY_MANAGER_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_MANAGER_PASSWORD
+ - name: SERVICE_BEANS
+ value: /opt/app/crud-service/dynamic/conf
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/crud-service/config/crud-api.properties
+ subPath: crud-api.properties
+ name: {{ include "common.fullname" . }}-config
+ - mountPath: /opt/app/crud-service/config/model/
+ name: {{ include "common.fullname" . }}-model-config
+ - mountPath: /opt/app/crud-service/config/auth
+ name: {{ include "common.fullname" . }}-auth-secret
+ - mountPath: /opt/app/crud-service/dynamic/conf/crud-beans.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: crud-beans.xml
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/crud-api/bundleconfig/etc/logback.xml
+ name: {{ include "common.fullname" . }}-logback-config
+ subPath: logback.xml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /usr/share/filebeat/data
+ name: {{ include "common.fullname" . }}-data-filebeat
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-auth-secret
+ secret:
+ secretName: {{ include "common.fullname" . }}-auth
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: crud-api.properties
+ path: crud-api.properties
+ - key: crud-beans.xml
+ path: crud-beans.xml
+ - name: {{ include "common.fullname" . }}-logback-config
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ items:
+ - key: logback.xml
+ path: logback.xml
+ - name: {{ include "common.fullname" . }}-model-config
+ configMap:
+ name: {{ include "common.fullname" . }}-model-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-auth
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.Files.Glob "resources/config/auth/*").AsSecrets | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-pass
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ KEY_STORE_PASSWORD: {{ .Values.config.keyStorePassword | b64enc | quote }}
+ KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T
+#
+# 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.
+
+#################################################################
+global:
+ nodePortPrefix: 302
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+image: onap/gizmo:1.1-STAGING-latest
+
+# application configuration
+config:
+ keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+ keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: crud-service
+ portName: crud-service
+ internalPort: 9520
+ nodePort: 68
+
+ingress:
+ enabled: false
+
+resources: {}
volumes:
- name: hbase-data
hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ include "common.namespace" . }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
- name: localtime
hostPath:
path: /etc/localtime
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="subComponentName" value="aai-ml"></property>
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <!-- 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="queueSize" value="256" />
- <property name="maxFileSize" value="50MB" />
- <property name="maxHistory" value="30" />
- <property name="totalSizeCap" value="10GB" />
- <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <!-- Example evaluator filter applied against console appender -->
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
- <file>${logDirectory}/${generalLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
- <!-- 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>${queueSize}</queueSize>
- <appender-ref ref="EELF" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf">
- <appender-ref ref="asyncEELF" />
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.security">
- <appender-ref ref="asyncEELFSecurity" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.perf">
- <appender-ref ref="asyncEELFPerformance" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.server">
- <appender-ref ref="asyncEELFServer" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.policy">
- <appender-ref ref="asyncEELFPolicy" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <logger level="INFO" name="com.att" />
- <!-- Model Loader loggers -->
- <logger level="INFO" name="org.openecomp.modelloader" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <root>
- <appender-ref ref="asyncEELF" />
- <!-- <appender-ref ref="asyncEELFDebug" /> -->
- </root>
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
+ <include resource="org/springframework/boot/logging/logback/base.xml" />
+ <property name="logDir" value="/var/log/onap" />
+ <property name="componentName" value="AAI-ML"></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|ModelLoader|%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>${defaultPattern}</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>
+
+ <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>${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>true</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" />
+
+ <logger name="com.att" level="INFO" />
+
+ <!-- Model Loader loggers -->
+ <logger name="org.openecomp.modelloader" 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>
ml.distribution.POLLING_INTERVAL=30
ml.distribution.POLLING_TIMEOUT=20
ml.distribution.USER=aai
-ml.distribution.ARTIFACT_TYPES=MODEL_INVENTORY_PROFILE,MODEL_QUERY_SPEC,VNF_CATALOG
+ml.distribution.ARTIFACT_TYPES=MODEL_QUERY_SPEC,TOSCA_CSAR
+ml.distribution.MSG_BUS_ADDRESSES=message-router.{{.Release.Namespace}}
# Model Loader AAI REST Client Configuration
ml.aai.BASE_URL=https://aai.{{.Release.Namespace}}:8443
-ml.aai.MODEL_URL=/aai/v10/service-design-and-creation/models/model/
-ml.aai.NAMED_QUERY_URL=/aai/v10/service-design-and-creation/named-queries/named-query/
-ml.aai.VNF_IMAGE_URL=/aai/v8/service-design-and-creation/vnf-images
+ml.aai.MODEL_URL=/aai/v*/service-design-and-creation/models/model/
+ml.aai.NAMED_QUERY_URL=/aai/v*/service-design-and-creation/named-queries/named-query/
+ml.aai.VNF_IMAGE_URL=/aai/v*/service-design-and-creation/vnf-images
ml.aai.KEYSTORE_FILE=aai-os-cert.p12
ml.aai.KEYSTORE_PASSWORD=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
ml.aai.AUTH_USER=ModelLoader
ml.aai.AUTH_PASSWORD=OBF:1qvu1v2h1sov1sar1wfw1j7j1wg21saj1sov1v1x1qxw
+
+# Model Loader Babel REST Client Configuration\r
+ml.babel.BASE_URL=https://aai-babel.{{.Release.Namespace}}:9516
+ml.babel.GENERATE_ARTIFACTS_URL=/services/babel-service/v1/app/generateArtifacts
+ml.babel.KEYSTORE_FILE=babel-client-cert.p12
+ml.babel.KEYSTORE_PASSWORD=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 Amdocs, AT&T
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
spec:
containers:
- name: {{ include "common.name" . }}
- image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: CONFIG_HOME
name: {{ include "common.fullname" . }}-auth-config
- mountPath: /var/log/onap
name: {{ include "common.fullname" . }}-logs
- - mountPath: /opt/app/model-loader/bundleconfig/etc/logback.xml
+ - mountPath: /opt/app/model-loader/logback.xml
name: {{ include "common.fullname" . }}-log-conf
subPath: logback.xml
ports:
name: {{ include "common.fullname" . }}-logs
- mountPath: /usr/share/filebeat/data
name: aai-filebeat
-
volumes:
- name: localtime
hostPath:
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
repository: nexus3.onap.org:10001
-image: onap/model-loader:v1.1.0
+image: onap/model-loader:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
--- /dev/null
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+
+####################################################################
+# REMEMBER TO THINK ABOUT ENVIRONMENTAL DIFFERENCES AND CHANGE THE
+# TEMPLATE AND *ALL* DATAFILES
+####################################################################
+
+####################################################################
+# REMEMBER TO THINK ABOUT ENVIRONMENTAL DIFFERENCES AND CHANGE THE
+# TEMPLATE AND *ALL* DATAFILES
+####################################################################
+
+aai.config.checktime=1000
+
+# this could come from siteconfig.pl?
+aai.config.nodename=AutomaticallyOverwritten
+
+
+
+aai.auth.cspcookies_on=false
+aai.dbmodel.filename=ex5.json
+
+aai.server.url.base=https://aai.{{ include "common.namespace" . }}:8443/aai/
+aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/v11/
+aai.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
+
+aai.tools.enableBasicAuth=true
+aai.tools.username=AAI
+aai.tools.password=AAI
+
+aai.truststore.filename=aai_keystore
+aai.truststore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+aai.keystore.filename=aai_keystore
+aai.keystore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+
+
+aai.notification.current.version=v11
+aai.notificationEvent.default.status=UNPROCESSED
+aai.notificationEvent.default.eventType=AAI-EVENT
+aai.notificationEvent.default.domain=dev
+aai.notificationEvent.default.sourceName=aai
+aai.notificationEvent.default.sequenceNumber=0
+aai.notificationEvent.default.severity=NORMAL
+aai.notificationEvent.default.version=v11
+# This one lets us enable/disable resource-version checking on updates/deletes
+aai.resourceversion.enableflag=true
+aai.logging.maxStackTraceEntries=10
+aai.default.api.version=v11
+
+
+
+# Used by Model-processing code
+aai.model.delete.sleep.per.vtx.msec=500
+aai.model.query.resultset.maxcount=50
+aai.model.query.timeout.sec=90
+
+# Used by Data Grooming
+aai.grooming.default.max.file=150
+aai.grooming.default.sleep.minutes=7
+
+aai.model.proc.max.levels=50
+aai.edgeTag.proc.max.levels=50
+
+# for transaction log
+aai.logging.hbase.interceptor=true
+aai.logging.hbase.enabled=true
+aai.logging.hbase.logrequest=true
+aai.logging.hbase.logresponse=true
+
+# for gremlin server
+aai.server.rebind=g
+hbase.table.name=aailogging.dev
+hbase.table.timestamp.format=YYYYMMdd-HH:mm:ss:SSS
+hbase.zookeeper.quorum=localhost
+hbase.zookeeper.property.clientPort=2181
+hbase.zookeeper.znode.parent=/hbase
+
+aai.logging.trace.enabled=true
+aai.logging.trace.logrequest=false
+aai.logging.trace.logresponse=false
+
+aai.transaction.logging=true
+aai.transaction.logging.get=false
+aai.transaction.logging.post=false
+
+aai.realtime.clients=SDNC,MSO,SO,robot-ete
+
+#timeout for crud enabled flag
+aai.crud.timeoutenabled=true
+
+#timeout app specific -1 to bypass for that app id, a whole number to override the timeout with that value (in ms)
+aai.crud.timeout.appspecific=JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAIRctFeed,-1|NewvceCreator,-1|IANewvceCreator,-1|AAI-CSIOVALS,-1
+
+#default timeout limit added for crud if not overridden (in ms)
+aai.crud.timeoutlimit=100000
+#limit set for bulk consumer APIS
+aai.bulkconsumer.payloadlimit=30
+
+#uncomment and use header X-OverrideLimit with the value to override the bulk api limit
+#aai.bulkconsumer.payloadoverride=E6F04B93462CB5B0EDF41C05A9DDF5C3FE59748F
+aai.bulkconsumer.payloadoverride=false
--- /dev/null
+# The following info parameters are being referenced by ajsc6
+info.build.artifact=aai-resources
+info.build.name=resources
+info.build.description=Resources Microservice
+info.build.version=1.2.0
+
+spring.application.name=aai-resources
+spring.jersey.type=filter
+
+server.contextPath=/
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+spring.profiles.active=production,dmaap
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+
+#Add this properties only if you want to change the URL, AJSC Framework interceptors will intercept
+#com.att.ajsc.common.interceptors.PreInterceptor.url=/**
+#com.att.ajsc.common.interceptors.PostInterceptor.url=/**
+
+#Servlet context parameters
+server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
+kubernetes.namespace={{ include "common.namespace" . }}
+
+# If you get an application startup failure that the port is already taken
+# If thats not it, please check if the key-store file path makes sense
+server.local.startpath=aai-resources/src/main/resources/
+server.basic.auth.location=${server.local.startpath}etc/auth/realm.properties
+
+server.port=8447
+server.ssl.enabled-protocols=TLSv1.1,TLSv1.2
+server.ssl.key-store=${server.local.startpath}etc/auth/aai_keystore
+server.ssl.key-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
+server.ssl.trust-store=${server.local.startpath}etc/auth/aai_keystore
+server.ssl.trust-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
+server.ssl.client-auth=want
+server.ssl.key-store-type=JKS
+
+# JMS bind address host port
+jms.bind.address=tcp://localhost:61647
+dmaap.ribbon.eureka.enabled=false
+dmaap.ribbon.listOfServers=dmaap.{{ include "common.namespace" . }}:3904
+# Number of milliseconds to wait before making ping requests again
+dmaap.ribbon.ServerListRefreshInterval=75000
+dmaap.ribbon.NFLoadBalancerPingInterval=75000
+dmaap.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.AvailabilityFilteringRule
+dmaap.ribbon.NFLoadBalancerPingClassName=org.onap.aai.config.HttpPingImpl
+dmaap.ribbon.EnableMarkingServerDownOnReachingFailureLimit=true
+dmaap.ribbon.ServerDownFailureLimit=1
+# This needs to be verified but it seems that adding this property should automatically
+# Make the dmaap client change the url from http to https depending on the server
+dmaap.ribbon.securePorts=3905
+
+# Custom Dmaap Specific Configuration
+dmaap.ribbon.username=
+dmaap.ribbon.password=
+dmaap.ribbon.health.endpoint=/topics/AAI-EVENT
+# Number of seconds to wait for the ping to work and might need to increase this if the pings are all failing
+dmaap.ribbon.pingport.timeout=3
+
+niws.loadbalancer.dmaap.filterCircuitTripped=true
+niws.loadbalancer.dmaap.connectionFailureCountThreshold=3
+niws.loadbalancer.dmaap.circuitTripMaxTimeoutSeconds=180
+#dmaap.ribbon.retryableStatusCodes=404,503
+#dmaap.ribbon.retryableStatusCodes.MaxAutoRetriesNextServer=2
+#dmaap.ribbon.retryableStatusCodes.MaxAutoRetries=2
+#dmaap.ribbon.retryableStatusCodes.OkToRetryOnAllOperations=true
--- /dev/null
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+{{- $global := . }}
+
+storage.backend=cassandra
+storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+
+storage.cassandra.keyspace=aaigraph
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+#storage.cassandra.replication-strategy-options=MTA1cass,3
+
+#schema.default=none
+storage.lock.wait-time=300
+#caching on
+cache.db-cache = true
+cache.db-cache-clean-wait = 20
+cache.db-cache-time = 180000
+cache.db-cache-size = 0.3
+
+#load graphson file on startup
+load.snapshot.file=false
--- /dev/null
+#
+# ============LICENSE_START=======================================================
+# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+{{- $global := . }}
+
+# the following parameters are not reloaded automatically and require a manual bounce
+storage.backend=cassandra
+storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+storage.cassandra.keyspace=aaigraph
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+#storage.cassandra.replication-strategy-options=MTA1cass,3
+
+#schema.default=none
+storage.lock.wait-time=300
+# Setting db-cache to false ensure the fastest propagation of changes across servers
+cache.db-cache = false
+
+#load graphson file on startup
+load.snapshot.file=false
--- /dev/null
+<!--
+
+ ============LICENSE_START=======================================================
+ org.onap.aai
+ ================================================================================
+ Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+
+ ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+-->
+<configuration>
+ <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+ <appender name="ACCESS"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">
+ <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>
+ </encoder>
+ </appender>
+ <appender-ref ref="ACCESS" />
+</configuration>
+
+<!--
+%a - Remote IP address
+%A - Local IP address
+%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent
+%B - Bytes sent, excluding HTTP headers
+%h - Remote host name
+%H - Request protocol
+%l - Remote logical username from identd (always returns '-')
+%m - Request method
+%p - Local port
+%q - Query string (prepended with a '?' if it exists, otherwise an empty string
+%r - First line of the request
+%s - HTTP status code of the response
+%S - User session ID
+%t - Date and time, in Common Log Format format
+%u - Remote user that was authenticated
+%U - Requested URL path
+%v - Local server name
+%I - current request thread name (can compare later with stacktraces)
+
+%z - Custom pattern that parses the cert for the subject
+%y - Custom pattern determines rest or dme2
+ -->
\ No newline at end of file
+++ /dev/null
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <contextName>${module.ajsc.namespace.name}</contextName>
- <jmxConfigurator />
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="subcomponentName" value="aai-resources"></property>
- <property name="restLogDirectory" value="${logDir}/${componentName}/${subcomponentName}/rest" />
- <property name="dmaapLogDirectory" value="${logDir}/${componentName}/${subcomponentName}/dmaapAAIEventConsumer" />
- <property name="perfLogsDirectory" value="${logDir}/${componentName}/${subcomponentName}/perf-audit" />
- <!-- default eelf log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
- <property name="queueSize" value="256" />
- <property name="maxFileSize" value="50MB" />
- <property name="maxHistory" value="30" />
- <property name="totalSizeCap" value="10GB" />
- <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>ERROR</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <encoder>
- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="SANE">
- <file>${restLogDirectory}/sane.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/sane.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncSANE">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="SANE" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="METRIC">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncMETRIC">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="METRIC" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncDEBUG">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="DEBUG" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <file>${restLogDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncERROR">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="ERROR" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT">
- <file>${restLogDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncAUDIT">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="AUDIT" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="translog">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/translog.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/translog.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asynctranslog">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="translog" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumer">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <File>${dmaapLogDirectory}/${errorLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerDebug">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${debugLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerMetric">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${metricsLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <!-- AJSC Services (bootstrap services) -->
- <logger level="WARN" name="ajsc" />
- <logger level="WARN" name="ajsc.RouteMgmtService" />
- <logger level="WARN" name="ajsc.ComputeService" />
- <logger level="WARN" name="ajsc.VandelayService" />
- <logger level="WARN" name="ajsc.FilePersistenceService" />
- <logger level="WARN" name="ajsc.UserDefinedJarService" />
- <logger level="WARN" name="ajsc.UserDefinedBeansDefService" />
- <logger level="WARN" name="ajsc.LoggingConfigurationService" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger level="WARN" name="ajsc.utils" />
- <logger level="WARN" name="ajsc.utils.DME2Helper" />
- <logger level="WARN" name="ajsc.filters" />
- <logger level="WARN" name="ajsc.beans.interceptors" />
- <logger level="WARN" name="ajsc.restlet" />
- <logger level="WARN" name="ajsc.servlet" />
- <logger level="WARN" name="com.att.ajsc" />
- <logger level="WARN" name="com.att.ajsc.csi.logging" />
- <logger level="WARN" name="com.att.ajsc.filemonitor" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <!-- logback jms appenders & loggers definition starts here -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="auditLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Audit.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Audit.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="perfLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Perform.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Perform.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-audit">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Audit-Record-Queue" />
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-perf">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Performance-Tracker-Queue" />
- </appender>
- <logger additivity="false" level="INFO" name="AuditRecord">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="AuditRecord_DirectCall">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="PerfTrackerRecord">
- <appender-ref ref="ASYNC-perf" />
- <appender-ref ref="perfLogs" />
- </logger>
- <!-- logback jms appenders & loggers definition ends here -->
- <logger additivity="false" level="DEBUG" name="org.onap.aai.interceptors">
- <appender-ref ref="asynctranslog" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PreAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PostAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger additivity="false" level="DEBUG" name="org.onap.aai.dmaap">
- <appender-ref ref="dmaapAAIEventConsumer" />
- <appender-ref ref="dmaapAAIEventConsumerDebug" />
- <appender-ref ref="dmaapAAIEventConsumerMetric" />
- </logger>
- <logger level="WARN" name="org.apache" />
- <logger level="WARN" name="org.zookeeper" />
- <logger level="WARN" name="com.thinkaurelius" />
- <!-- ============================================================================ -->
- <!-- General EELF logger -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="WARN" name="com.att.eelf">
- <appender-ref ref="asyncDEBUG" />
- <appender-ref ref="asyncERROR" />
- <appender-ref ref="asyncMETRIC" />
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncDEBUG" />
- </root>
-</configuration>
--- /dev/null
+<!--
+ ============LICENSE_START=======================================================
+ org.onap.aai
+ ================================================================================
+ Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+ ECOMP is a trademark and service mark of AT&T Intellectual Property.
+-->
+<configuration scan="true" scanPeriod="60 seconds" debug="false">
+ <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
+ <property resource="application.properties" />
+ <property name="namespace" value="aai-resources"/>
+ <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+ <jmxConfigurator />
+ <property name="logDirectory" value="${AJSC_HOME}/logs" />
+ <property name="eelfLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <property name="eelfAuditLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <property name="eelfMetricLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{targetVirtualEntity}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <!-- <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> -->
+ <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%ecompResponseCode|%ecompResponseDescription|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <property name="eelfTransLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{partnerName}:%m%n"/>
+ <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
+ <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
+ <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>
+ %clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
+ </pattern>
+ </encoder>
+ </appender>
+ <appender name="SANE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/rest/sane.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/sane.log.%d{yyyy-MM-dd}</fileNamePattern>
+ </rollingPolicy>
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+ </pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncSANE" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="SANE" />
+ </appender>
+ <appender name="METRIC"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>INFO</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <file>${logDirectory}/rest/metrics.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/metrics.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfMetricLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncMETRIC" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="METRIC" />
+ </appender>
+ <appender name="DEBUG"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>DEBUG</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <file>${logDirectory}/rest/debug.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/debug.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncDEBUG" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="DEBUG" />
+ </appender>
+ <appender name="ERROR"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <file>${logDirectory}/rest/error.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/error.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfErrorLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncERROR" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="ERROR" />
+ </appender>
+ <appender name="AUDIT"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/rest/audit.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/audit.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfAuditLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncAUDIT" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="AUDIT" />
+ </appender>
+ <appender name="translog"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>DEBUG</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <file>${logDirectory}/rest/translog.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/translog.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfTransLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asynctranslog" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="translog" />
+ </appender>
+ <appender name="dmaapAAIEventConsumer"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <File>${logDirectory}/dmaapAAIEventConsumer/error.log</File>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/error.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="dmaapAAIEventConsumerDebug"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>DEBUG</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <File>${logDirectory}/dmaapAAIEventConsumer/debug.log</File>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/debug.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="dmaapAAIEventConsumerMetric"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>INFO</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <File>${logDirectory}/dmaapAAIEventConsumer/metrics.log</File>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/metrics.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfMetricLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="external"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <file>${logDirectory}/external/external.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/external/external.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <logger name="org.onap.aai" level="DEBUG" additivity="false">
+ <appender-ref ref="asyncDEBUG" />
+ <appender-ref ref="asyncERROR" />
+ <appender-ref ref="asyncMETRIC" />
+ <appender-ref ref="asyncSANE" />
+ </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" />
+ <logger name="com.jayway.jsonpath" level="WARN" />
+ <!-- AJSC Services (bootstrap services) -->
+ <logger name="ajsc" level="WARN" />
+ <logger name="ajsc.RouteMgmtService" level="WARN" />
+ <logger name="ajsc.ComputeService" level="WARN" />
+ <logger name="ajsc.VandelayService" level="WARN" />
+ <logger name="ajsc.FilePersistenceService" level="WARN" />
+ <logger name="ajsc.UserDefinedJarService" level="WARN" />
+ <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
+ <logger name="ajsc.LoggingConfigurationService" level="WARN" />
+ <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
+ logging) -->
+ <logger name="org.codehaus.groovy" level="WARN" />
+ <logger name="com.att.scamper" level="WARN" />
+ <logger name="ajsc.utils" level="WARN" />
+ <logger name="ajsc.utils.DME2Helper" level="WARN" />
+ <logger name="ajsc.filters" level="WARN" />
+ <logger name="ajsc.beans.interceptors" level="WARN" />
+ <logger name="ajsc.restlet" level="WARN" />
+ <logger name="ajsc.servlet" level="WARN" />
+ <logger name="com.att.ajsc" level="WARN" />
+ <logger name="com.att.ajsc.csi.logging" level="WARN" />
+ <logger name="com.att.ajsc.filemonitor" level="WARN" />
+ <logger name="com.netflix.loadbalancer" level="WARN" />
+ <logger name="org.apache.zookeeper" level="OFF" />
+ <!-- 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" />
+ <logger name="org.hibernate.validator" level="WARN" />
+ <logger name="org.hibernate" level="WARN" />
+ <logger name="org.hibernate.ejb" level="OFF" />
+ <!-- logback internals logging -->
+ <logger name="ch.qos.logback.classic" level="WARN" />
+ <logger name="ch.qos.logback.core" level="WARN" />
+ <logger name="org.eclipse.jetty" level="WARN" />
+ <!-- logback jms appenders & loggers definition starts here -->
+ <appender name="auditLogs"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
+ <file>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.log
+ </file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+ </encoder>
+ </appender>
+ <appender name="perfLogs"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
+ <file>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.log
+ </file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+ </encoder>
+ </appender>
+ <logger name="AuditRecord" level="INFO" additivity="false">
+ <appender-ref ref="auditLogs" />
+ </logger>
+ <logger name="AuditRecord_DirectCall" level="INFO" additivity="false">
+ <appender-ref ref="auditLogs" />
+ </logger>
+ <logger name="PerfTrackerRecord" level="INFO" additivity="false">
+ <appender-ref ref="perfLogs" />
+ </logger>
+ <!-- logback jms appenders & loggers definition ends here -->
+ <logger name="org.onap.aai.interceptors.post" level="DEBUG"
+ additivity="false">
+ <appender-ref ref="asynctranslog" />
+ </logger>
+ <logger name="org.onap.aai.interceptors.pre.SetLoggingContext" level="DEBUG">
+ <appender-ref ref="asyncAUDIT"/>
+ </logger>
+ <logger name="org.onap.aai.interceptors.post.ResetLoggingContext" level="DEBUG">
+ <appender-ref ref="asyncAUDIT"/>
+ </logger>
+ <logger name="org.onap.aai.dmaap" level="DEBUG" additivity="false">
+ <appender-ref ref="dmaapAAIEventConsumer" />
+ <appender-ref ref="dmaapAAIEventConsumerDebug" />
+ <appender-ref ref="dmaapAAIEventConsumerMetric" />
+ </logger>
+ <logger name="org.apache" level="OFF" />
+ <logger name="org.zookeeper" level="OFF" />
+ <logger name="com.thinkaurelius" level="WARN" />
+ <logger name="com.att.aft.dme2" level="WARN" />
+ <!-- ============================================================================ -->
+ <!-- General EELF logger -->
+ <!-- ============================================================================ -->
+ <logger name="com.att.eelf" level="WARN" additivity="false">
+ <appender-ref ref="asyncDEBUG" />
+ <appender-ref ref="asyncERROR" />
+ <appender-ref ref="asyncMETRIC" />
+ </logger>
+ <root level="DEBUG">
+ <appender-ref ref="external" />
+ </root>
+</configuration>
--- /dev/null
+# format : username: password[,rolename ...]
+# default username/password: AAI/AAI, MSO/MSO, ModelLoader/ModelLoader...
+AAI:OBF:1gfr1ev31gg7,admin
+MSO:OBF:1jzx1lz31k01,admin
+SDNC:OBF:1itr1i0l1i151isv,admin
+DCAE:OBF:1g8u1f9d1f991g8w,admin
+POLICY:OBF:1mk61i171ima1im41i0j1mko,admin
+ASDC:OBF:1f991j0u1j001f9d,admin
+VID:OBF:1jm91i0v1jl9,admin
+APPC:OBF:1f991ksf1ksf1f9d,admin
+ModelLoader:OBF:1qvu1v2h1sov1sar1wfw1j7j1wg21saj1sov1v1x1qxw,admin
+AaiUI:OBF:1gfr1p571unz1p4j1gg7,admin
+OOF:OBF:1img1ke71ily,admin
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/localhost-access-logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-db-real-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/janusgraph-realtime.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-db-cached-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/janusgraph-cached.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/aaiconfig.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-springapp-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-realm-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
release: {{ .Release.Name }}
name: {{ include "common.name" . }}
annotations:
+ checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
msb.onap.org/service-info: '[
{
"serviceName": "_aai-cloudInfrastructure",
}
]'
spec:
+ hostname: aai-resources
initContainers:
- command:
- /root/ready.py
args:
- --container-name
- - aai-hbase
+ - aai-cassandra
env:
- name: NAMESPACE
valueFrom:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- - name: CHEF_BRANCH
- value: master
- - name: AAI_CHEF_ENV
- value: simpledemo
- - name: AAI_CORE_VERSION
- value: {{ .Values.config.aaicoreversion }}
- - name: AAI_CHEF_LOC
- value: /var/chef/aai-data/environments
- - name: CHEF_GIT_URL
- value: http://gerrit.onap.org/r/aai
- - name: HBASE_STARTUP_ARTIFICIAL_DELAY
- value: "60"
+ - name: LOCAL_USER_ID
+ value: {{ .Values.config.userId | quote }}
+ - name: LOCAL_GROUP_ID
+ value: {{ .Values.config.groupId | quote }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /var/chef/aai-data/chef-config/dev/.knife/solo.rb
- subPath: solo.rb
- name: aai-chef-config
- - mountPath: /var/chef/aai-data/environments/
- name: aai-data
- - mountPath: /var/log/onap
- name: aai-resources-logs
- - mountPath: /opt/app/aai-resources/bundleconfig/etc/logback.xml
- name: aai-resources-log-conf
+ - mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-db-real-conf
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-db-cached-conf
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-resources/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-aaiconfig-conf
+ subPath: aaiconfig.properties
+ - mountPath: /opt/aai/logroot/AAI-RES
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-resources/resources/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
subPath: logback.xml
+ - mountPath: /opt/app/aai-resources/resources/localhost-access-logback.xml
+ name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ subPath: localhost-access-logback.xml
+ - mountPath: /opt/app/aai-resources/resources/application.properties
+ name: {{ include "common.fullname" . }}-springapp-conf
+ subPath: application.properties
+ - mountPath: /opt/app/aai-resources/resources/etc/auth/aai_keystore
+ name: {{ include "common.fullname" . }}-auth-sec
+ subPath: aai_keystore
ports:
- containerPort: {{ .Values.service.internalPort }}
- containerPort: {{ .Values.service.internalPort2 }}
subPath: filebeat.yml
name: filebeat-conf
- mountPath: /var/log/onap
- name: aai-resources-logs
+ name: {{ include "common.fullname" . }}-logs
- mountPath: /usr/share/filebeat/data
- name: aai-resources-filebeat
+ name: {{ include "common.fullname" . }}-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
- - name: aai-chef-config
- configMap:
- name: aai-chef-config
- - name: aai-data
- configMap:
- name: aai-resources-environments
- name: filebeat-conf
configMap:
name: aai-filebeat
- - name: aai-resources-logs
+ - name: {{ include "common.fullname" . }}-logs
emptyDir: {}
- - name: aai-resources-filebeat
+ - name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: aai-resources-log-conf
+ - name: {{ include "common.fullname" . }}-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+ - name: {{ include "common.fullname" . }}-db-real-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-db-real-configmap
+ - name: {{ include "common.fullname" . }}-db-cached-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-db-cached-configmap
+ - name: {{ include "common.fullname" . }}-aaiconfig-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ - name: {{ include "common.fullname" . }}-springapp-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-springapp-configmap
+ - name: {{ include "common.fullname" . }}-realm-conf
configMap:
- name: {{ include "common.fullname" . }}
- restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
+ name: {{ include "common.fullname" . }}-realm-configmap
+ - name: {{ include "common.fullname" . }}-auth-sec
+ secret:
+ secretName: aai-auth-secret
+ restartPolicy: {{ .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- else -}}
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# application image
repository: nexus3.onap.org:10001
-image: openecomp/aai-resources:v1.1.0
+image: onap/aai-resources:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
-# application configuration
-config:
- aaicoreversion: 1.1.0-SNAPSHOT
-
# default number of instances
replicaCount: 1
+# Configuration for the resources deployment
+config:
+ userId: 1000
+ groupId: 1000
+
nodeSelector: {}
affinity: {}
service:
type: ClusterIP
- name: aai-resources
+ portName: aai-resources-8447
internalPort: 8447
+ portName2: aai-resources-5005
internalPort2: 5005
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="subcomponentName" value="aai-sdb" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subcomponentName}" />
- <!-- default eelf log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
- <property name="queueSize" value="256" />
- <property name="maxFileSize" value="50MB" />
- <property name="maxHistory" value="30" />
- <property name="totalSizeCap" value="10GB" />
- <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <!-- Example evaluator filter applied against console appender -->
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
- <file>${logDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
- <!-- 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>${queueSize}</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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>false</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf">
- <appender-ref ref="asyncEELF" />
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.security">
- <appender-ref ref="asyncEELFSecurity" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.perf">
- <appender-ref ref="asyncEELFPerformance" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.server">
- <appender-ref ref="asyncEELFServer" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.policy">
- <appender-ref ref="asyncEELFPolicy" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <!-- AJSC Services (bootstrap services) -->
- <logger level="WARN" name="ajsc" />
- <logger level="WARN" name="ajsc.RouteMgmtService" />
- <logger level="WARN" name="ajsc.ComputeService" />
- <logger level="WARN" name="ajsc.VandelayService" />
- <logger level="WARN" name="ajsc.FilePersistenceService" />
- <logger level="WARN" name="ajsc.UserDefinedJarService" />
- <logger level="WARN" name="ajsc.UserDefinedBeansDefService" />
- <logger level="WARN" name="ajsc.LoggingConfigurationService" />
- <logger level="WARN" name="ajsc.ErrorMessageLookupService" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger level="WARN" name="ajsc.utils" />
- <logger level="WARN" name="ajsc.utils.DME2Helper" />
- <logger level="WARN" name="ajsc.filters" />
- <logger level="WARN" name="ajsc.beans.interceptors" />
- <logger level="WARN" name="ajsc.restlet" />
- <logger level="WARN" name="ajsc.servlet" />
- <logger level="INFO" name="com.att" />
- <logger level="WARN" name="com.att.ajsc.csi.logging" />
- <logger level="WARN" name="com.att.ajsc.filemonitor" />
- <!-- SearchDB loggers -->
- <logger level="INFO" name="org.openecomp.sa" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <root>
- <appender-ref ref="asyncEELF" />
- <!-- <appender-ref ref="asyncEELFDebug" /> -->
- </root>
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+
+ <property name="logDir" value="/var/log/onap" />
+
+
+ <!-- specify the component name
+ <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
+ <property name="componentName" value="AAI-SDB"></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|SearchDataService|%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" />
+
+ <!-- SearchDB loggers -->
+ <logger name="org.openecomp.sa" 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>
spec:
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: CONFIG_HOME
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# application image
repository: nexus3.onap.org:10001
-image: onap/search-data-service:v1.1.0
+image: onap/search-data-service:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
+++ /dev/null
-################################################################################################################
-############################## ActiveInventoryDataCollector TLS/SSL configuration ##############################
-################################################################################################################
-
-############################## Networking ##############################
-#
-# The ip address/hostname and port to the desired AAI instance
-#
-aai.rest.host=aai.{{.Release.Namespace}}
-aai.rest.port=8443
-
-############################## REST ##############################
-# OXM version
-aai.rest.resourceBasePath=/aai/v9
-aai.rest.connectTimeoutInMs=30000
-aai.rest.readTimeoutInMs=60000
-aai.rest.numRequestRetries=5
-# HTTP_NOAUTH - straight HTTP no user/pass
-# SSL_BASIC - HTTP/S with user/pass
-# SSL_CERT - HTTP/S with client cert
-aai.rest.authenticationMode=SSL_BASIC
-
-############################## Cache ##############################
-# Experimental caching feature that is NOT production ready.
-# Enable at your own risk... it might not work.
-aai.rest.cache.enabled=false
-aai.rest.cache.numWorkers=10
-aai.rest.cache.cacheFailures=false
-aai.rest.cache.useCacheOnly=false
-aai.rest.cache.storageFolderOverride=
-aai.rest.cache.maxTimeToLiveInMs=-1
-
-# The shallowEntity filter will display the entity in a visualization
-# but will not collect it's relationships or complex attributes.
-aai.rest.shallowEntities=cloud-region,complex,vnf-image,att-aic,image
-
-############################## Certs, Auth, and SSL Settings ##############################
-aai.ssl.keystore.filename=aai-os-cert.p12
-aai.ssl.keystore.pass=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
-aai.ssl.keystore.type=pkcs12
-# Enable debug on the SSL connections
-aai.ssl.enableDebug=false
-# Degree of strictness to SSL connection standards
-aai.ssl.validateServerHostName=false;
-aai.ssl.validateServerCertificateChain=false;
-# If basic auth is implemented, username and password as required
-aai.ssl.basicAuth.username=AaiUI
-aai.ssl.basicAuth.password=OBF:1gfr1p571unz1p4j1gg7
-
-############################## Statistics Report Formatting ##############################
-#
-# During synchronization, a formatted statisitics log is generated
-#
-# Response size in bytes histogram
-aai.taskProcessor.bytesHistogramLabel="[Response Size In Bytes]"
-aai.taskProcessor.bytesHistogramMaxYAxis=1000000
-aai.taskProcessor.bytesHistogramNumBins=20
-aai.taskProcessor.bytesHistogramNumDecimalPoints=2
-# "Work on Hand" statisitcs for external resource requests
-aai.taskProcessor.queueLengthHistogramLabel="[Queue Item Length]"
-aai.taskProcessor.queueLengthHistogramMaxYAxis=20000
-aai.taskProcessor.queueLengthHistogramNumBins=20
-aai.taskProcessor.queueLengthHistogramNumDecimalPoints=2
-# Time on queue (how long does a task stay on the work queue)
-aai.taskProcessor.taskAgeHistogramLabel="[Task Age In Ms]"
-aai.taskProcessor.taskAgeHistogramMaxYAxis=600000
-aai.taskProcessor.taskAgeHistogramNumBins=20
-aai.taskProcessor.taskAgeHistogramNumDecimalPoints=2
-# Per transaction response time for external resource requests
-aai.taskProcessor.responseTimeHistogramLabel="[Response Time In Ms]"
-aai.taskProcessor.responseTimeHistogramMaxYAxis=10000
-aai.taskProcessor.responseTimeHistogramNumBins=20
-aai.taskProcessor.responseTimeHistogramNumDecimalPoints=2
-# Transaction throughput velocity
-aai.taskProcessor.tpsHistogramLabel="[Transactions Per Second]"
-aai.taskProcessor.tpsHistogramMaxYAxis=100
-aai.taskProcessor.tpsHistogramNumBins=20
-aai.taskProcessor.tpsHistogramNumDecimalPoints=2
-
-############################## Deprecated, to be removed or updated ##############################
-aai.rest.numResolverWorkers=15
-aai.ssl.truststore.filename=asdc-client.jks
-aai.ssl.truststore.type=jks
-aai.taskProcessor.maxConcurrentWorkers=5
-aai.taskProcessor.transactionRateControllerEnabled=false
-aai.taskProcessor.numSamplesPerThreadForRunningAverage=100
-aai.taskProcessor.targetTPS=100
--- /dev/null
+global.login.url=aaiportal.onap.org
+
+# MOTS ID of the application
+application.id=12345
+
+# valid domains for open redirect
+redirect-domain=domain.com
+
+# Required by esGateKeeper. Valid values are:
+# DEVL - used during development
+# PROD - used in production
+gatekeeper.environment=TEST
\ No newline at end of file
--- /dev/null
+<rests xmlns="http://camel.apache.org/schema/spring">
+ <rest>
+ <post uri="/search/filterAggregation">
+ <to uri="bean:aggregateSummaryProcessor?method=getFilteredAggregation"/>
+ </post>
+ </rest>
+</rests>
\ No newline at end of file
--- /dev/null
+<rests xmlns="http://camel.apache.org/schema/spring">
+ <rest>
+ <post uri="/visualization/prepareVisualization">
+ <route>
+ <to uri="bean:schemaVisualizationProcessor?method=processVisualizationRequest" />
+ </route>
+ </post>
+ </rest>
+</rests>
+
+
--- /dev/null
+<rests xmlns="http://camel.apache.org/schema/spring">
+ <rest>
+ <get uri="/subscription/getsubscription">
+ <to uri="bean:subscriptionServiceProcessor?method=getSubscription"/>
+ </get>
+ </rest>
+</rests>
\ No newline at end of file
--- /dev/null
+<rests xmlns="http://camel.apache.org/schema/spring">
+ <rest>
+ <post uri="/search/querysearch">
+ <to uri="bean:unifiedSearchProcessor?method=search"/>
+ </post>
+ </rest>
+</rests>
\ No newline at end of file
--- /dev/null
+<rests xmlns="http://camel.apache.org/schema/spring">
+ <rest>
+ <post uri="/search/unifiedFilterRequest">
+ <to uri="bean:filterProcessor?method=getFiltersWithValues"/>
+ </post>
+ </rest>
+</rests>
\ No newline at end of file
--- /dev/null
+{
+ "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
+++ /dev/null
-#######################################################################################
-############################## ElasticSearch Config ###################################
-#######################################################################################
-
-############################## Networking ##############################
-#
-# The ip address/hostname and port to the desired AAI instance
-# For development it's recommended to use a local instance of ES
-#
-elasticsearch.ipAddress=aai-elasticsearch.{{.Release.Namespace}}
-elasticsearch.httpPort={{ .Values.config.elasticsearchHttpPort }}
-elasticsearch.javaApiPort=8443
-
-############################## Indexes ##############################
-#
-# Index names for various searches.
-#
-elasticsearch.indexName=entitysearchindex
-elasticsearch.topographicalIndexName=topographicalsearchindex
-elasticsearch.entityCountHistoryIndexName=entitycounthistoryindex
-elasticsearch.autosuggestIndexname=entityautosuggestindex
-
-# Default document type
-elasticsearch.type=default
-
-############################## Index Mappings and Settings ##############################
-#
-# JSON files for sparky elasticsearch indexes.
-#
-elasticsearch.mappingsFileName=/etc/es_mappings.json
-elasticsearch.settingsFileName=/etc/es_settings.json
-elasticsearch.autosuggestSettingsFileName=/etc/autoSuggestSettings.json
-elasticsearch.autosuggestMappingsFileName=/etc/autoSuggestMappings.json
-elasticsearch.dynamicMappingsFileName=/etc/dynamicMappings.json
-elasticsearch.entityCountHistoryMappingsFileName=/etc/entityCountHistoryMappings.json
-
-############################## Statistics Report Formatting ##############################
-#
-# During synchronization, a formatted statisitics log is generated.
-#
-# Response size in bytes histogram
-elasticsearch.taskProcessor.bytesHistogramLabel="[Response Size In Bytes]"
-elasticsearch.taskProcessor.bytesHistogramMaxYAxis=1000000
-elasticsearch.taskProcessor.bytesHistogramNumBins=20
-elasticsearch.taskProcessor.bytesHistogramNumDecimalPoints=2
-# "Work on Hand" statisitcs for external resource requests
-elasticsearch.taskProcessor.queueLengthHistogramLabel="[Queue Item Length]"
-elasticsearch.taskProcessor.queueLengthHistogramMaxYAxis=20000
-elasticsearch.taskProcessor.queueLengthHistogramNumBins=20
-elasticsearch.taskProcessor.queueLengthHistogramNumDecimalPoints=2
-# Time on queue (how long does a task stay on the work queue)
-elasticsearch.taskProcessor.taskAgeHistogramLabel="[Task Age In Ms]"
-elasticsearch.taskProcessor.taskAgeHistogramMaxYAxis=600000
-elasticsearch.taskProcessor.taskAgeHistogramNumBins=20
-elasticsearch.taskProcessor.taskAgeHistogramNumDecimalPoints=2
-# Per transaction response time for external resource requests
-elasticsearch.taskProcessor.responseTimeHistogramLabel="[Response Time In Ms]"
-elasticsearch.taskProcessor.responseTimeHistogramMaxYAxis=1000
-elasticsearch.taskProcessor.responseTimeHistogramNumBins=20
-elasticsearch.taskProcessor.responseTimeHistogramNumDecimalPoints=2
-# Transaction throughput velocity
-elasticsearch.taskProcessor.tpsHistogramLabel="[Transactions Per Second]"
-elasticsearch.taskProcessor.tpsHistogramMaxYAxis=100
-elasticsearch.taskProcessor.tpsHistogramNumBins=20
-elasticsearch.taskProcessor.tpsHistogramNumDecimalPoints=2
-
-############################## Deprecated, to be removed or updated ##############################
-elasticsearch.taskProcessor.maxConcurrentWorkers=5
-elasticsearch.taskProcessor.transactionRateControllerEnabled=false
-elasticsearch.taskProcessor.numSamplesPerThreadForRunningAverage=100
-elasticsearch.taskProcessor.targetTPS=100
-elasticsearch.clusterName=ES_AAI_LOCALHOST
--- /dev/null
+{
+ "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
--- /dev/null
+{
+ "views": [
+ {
+ "viewName" : "vnfSearch",
+ "filters" : [
+ {
+ "filterId": "1"
+ },
+ {
+ "filterId": "2"
+ },
+ {
+ "filterId": "7"
+ },
+ {
+ "filterId": "8"
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
--- /dev/null
+{
+ "target": "",
+ "origin": "",
+ "messageType": "",
+ "topic": "",
+ "message": {
+ "applicationName": "",
+ "payload": {
+ "action": "",
+ "params": {
+ "objectName": "",
+ "externalClassId": ""
+ }
+ }
+ }
+}
-<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="3 seconds" debug="false">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="AAI-UI" />
- <property name="logDirectory" value="${logDir}/${componentName}" />
- <!-- default eelf log file names -->
- <property name="generalLogName" value="application" />
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
- <property name="queueSize" value="256" />
- <property name="maxFileSize" value="50MB" />
- <property name="maxHistory" value="30" />
- <property name="totalSizeCap" value="10GB" />
- <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
-
- <!-- Example evaluator filter applied against console appender -->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${pattern}</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}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</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>${queueSize}</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}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</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}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
-
- <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- </appender>
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFError" />
- </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}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>false</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger name="com.att.eelf" level="INFO" additivity="false" />
- <logger name="org.elasticsearch.plugins" level="WARN" />
- <logger name="com.att.eelf.debug" level="debug" additivity="false">
- <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>
- <logger name="com.att.eelf.error" level="info" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </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" />
- <!-- AJSC Services (bootstrap services) -->
- <logger name="ajsc" level="WARN" />
- <logger name="ajsc.RouteMgmtService" level="WARN" />
- <logger name="ajsc.ComputeService" level="WARN" />
- <logger name="ajsc.VandelayService" level="WARN" />
- <logger name="ajsc.FilePersistenceService" level="WARN" />
- <logger name="ajsc.UserDefinedJarService" level="WARN" />
- <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
- <logger name="ajsc.LoggingConfigurationService" level="WARN" />
- <logger name="ajsc.ErrorMessageLookupService" level="WARN" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger name="ajsc.utils" level="WARN" />
- <logger name="ajsc.utils.DME2Helper" level="WARN" />
- <logger name="ajsc.filters" level="WARN" />
- <logger name="ajsc.beans.interceptors" level="WARN" />
- <logger name="ajsc.restlet" level="WARN" />
- <logger name="ajsc.servlet" level="WARN" />
- <logger name="com.att" level="WARN" />
- <logger name="com.att.ajsc.csi.logging" level="WARN" />
- <logger name="com.att.ajsc.filemonitor" level="WARN" />
- <!-- 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="INFO" />
- <logger name="ch.qos.logback.core" level="INFO" />
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-</configuration>
\ No newline at end of file
+ <!--<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>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.att.com.v9" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://com.att.aai.inventory/v9" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.att.com.v9.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.att.com.v9.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.att.com.v9.CloudInfrastructure" />
- <xml-element java-attribute="licenseManagement" name="license-management" type="inventory.aai.att.com.v9.LicenseManagement" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.att.com.v9.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.att.com.v9.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.att.com.v9.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.att.com.v9.AaiInternal" />
- </java-attributes>
- </java-type>
-
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.att.com.v9.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.att.com.v9.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.att.com.v9.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.att.com.v9.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.att.com.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.att.com.v9.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.att.com.v9.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.att.com.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.att.com.v9.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.att.com.v9.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.att.com.v9.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.att.com.v9.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.att.com.v9.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.att.com.v9.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.att.com.v9.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.att.com.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.att.com.v9.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.att.com.v9.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.att.com.v9.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.att.com.v9.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.att.com.v9.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.att.com.v9.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.att.com.v9.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.att.com.v9.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.att.com.v9.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.att.com.v9.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.att.com.v9.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.att.com.v9.CloudRegion" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name, e.g., att-aic. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., DCP, LCP)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.att.com.v9.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.att.com.v9.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.att.com.v9.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.att.com.v9.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.att.com.v9.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.att.com.v9.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.att.com.v9.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.att.com.v9.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.att.com.v9.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&T's AIC." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.att.com.v9.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.att.com.v9.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.att.com.v9.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.att.com.v9.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.att.com.v9.Complex" />
- </java-attributes>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.att.com.v9.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- <xml-property name="geoProps" value="latitude,longitude" />
- <xml-property name="geoLat" value="latitude" />
- <xml-property name="geoLong" value="longitude" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.att.com.v9.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.att.com.v9.Tenant" />
- </java-attributes>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.att.com.v9.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.att.com.v9.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.att.com.v9.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.att.com.v9.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.att.com.v9.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.att.com.v9.SriovVfs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,vpe,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.att.com.v9.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.att.com.v9.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.att.com.v9.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.att.com.v9.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.att.com.v9.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.att.com.v9.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.att.com.v9.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.att.com.v9.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and VPEs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.att.com.v9.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.att.com.v9.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.att.com.v9.Pserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.att.com.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.att.com.v9.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.att.com.v9.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpe,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.att.com.v9.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.att.com.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.att.com.v9.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="LicenseManagement">
- <xml-root-element name="license-management" />
- <java-attributes>
- <xml-element java-attribute="licenseKeyResources" name="license-key-resources" type="inventory.aai.att.com.v9.LicenseKeyResources" />
- </java-attributes>
- </java-type>
-
- <java-type name="LicenseKeyResources">
- <xml-root-element name="license-key-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="licenseKeyResource" name="license-key-resource" type="inventory.aai.att.com.v9.LicenseKeyResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="LicenseKeyResource">
- <xml-root-element name="license-key-resource" />
- <java-attributes>
- <xml-element java-attribute="attUuid" name="att-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="assignmentType" name="assignment-type" type="java.lang.String" />
- <xml-element java-attribute="assignmentStatus" name="assignment-status" type="java.lang.String" />
- <xml-element java-attribute="assignmentGroupUuid" name="assignment-group-uuid" required="true" type="java.lang.String" />
- <xml-element java-attribute="assignmentDate" name="assignment-date" type="java.lang.String" />
- <xml-element java-attribute="name" name="name" type="java.lang.String" />
- <xml-element java-attribute="modelUuid" name="model-uuid" type="java.lang.String" />
- <xml-element java-attribute="modelVersion" name="model-version" type="java.lang.String" />
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String" />
- <xml-element java-attribute="licenseKeyFileUrl" name="license-key-file-url" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="supplierReleaseList" name="supplier-release-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="name" />
- <xml-property name="indexedProps" value="assignment-group-uuid,att-uuid,name" />
- <xml-property name="uniqueProps" value="att-uuid" />
- <xml-property name="container" value="license-key-resources" />
- <xml-property name="namespace" value="license-management" />
- </xml-properties>
- </java-type>
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.att.com.v9.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.att.com.v9.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.att.com.v9.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.att.com.v9.Customer" />
- </java-attributes>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.att.com.v9.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id,subscriber-name" />
- <xml-property name="alternateKeys1" value="subscriber-name" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.att.com.v9.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.att.com.v9.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.att.com.v9.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operational status of the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.att.com.v9.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.att.com.v9.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.att.com.v9.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.att.com.v9.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.att.com.v9.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.att.com.v9.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="attUuid" name="att-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,att-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="att-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.att.com.v9.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.att.com.v9.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.att.com.v9.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.att.com.v9.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.att.com.v9.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.att.com.v9.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.att.com.v9.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.att.com.v9.Vces" />
- <xml-element java-attribute="vpes" name="vpes" type="inventory.aai.att.com.v9.Vpes" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.att.com.v9.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.att.com.v9.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.att.com.v9.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.att.com.v9.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.att.com.v9.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.att.com.v9.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.att.com.v9.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.att.com.v9.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.att.com.v9.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.att.com.v9.RouteTableReferences" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.att.com.v9.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack (should be att-ip-version)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,link-id" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.att.com.v9.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.att.com.v9.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.att.com.v9.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.att.com.v9.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="uniqueProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.att.com.v9.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.att.com.v9.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.att.com.v9.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.att.com.v9.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify a VPN, globally unique in the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,global-route-target" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.att.com.v9.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.att.com.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.att.com.v9.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.att.com.v9.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Expect this to change as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Entitlement resource uuid" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.att.com.v9.PortGroups" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vpe-id,vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.att.com.v9.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.att.com.v9.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.att.com.v9.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vpes">
- <xml-properties>
- <xml-property name="description" value="Virtual provider edge router. In 1504, A&AI will populate this object through an M&P and tool provided to operations." />
- </xml-properties>
- <xml-root-element name="vpes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpe" name="vpe" type="inventory.aai.att.com.v9.Vpe" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vpe">
- <xml-root-element name="vpe" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v4Loopback0IpAddress" name="v4-loopback0-ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the vpe operation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether vpe access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Relationship-list must include related to info for complex." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,regional-resource-zone,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vpes" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.att.com.v9.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.att.com.v9.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.att.com.v9.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.att.com.v9.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.att.com.v9.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-network-fqdn" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.att.com.v9.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.att.com.v9.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.att.com.v9.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.att.com.v9.GenericVnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- <xml-property name="suggestionVerbs" value="is,in,at,with,on,off,changed,changing"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- <xml-property name="suggestionVerbs" value="is,in,at,with,on,off,changed,changing"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.att.com.v9.VfModules" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- <xml-property name="containsSuggestibleProps" value="true" />
- <xml-property name="suggestionAliases" value="VNFs" />
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.att.com.v9.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id, vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.att.com.v9.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.att.com.v9.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.att.com.v9.Pnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration-status is the status of orchestration on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.att.com.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.att.com.v9.PhysicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.att.com.v9.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.att.com.v9.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.att.com.v9.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.att.com.v9.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.att.com.v9.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.att.com.v9.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.String" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.att.com.v9.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name,model-type" />
- <xml-property name="indexedProps" value="model-name-version-id,model-type,model-name,model-id,model-version" />
- <xml-property name="alternateKeys1" value="model-id,model-version" />
- <xml-property name="uniqueProps" value="model-name-version-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="model" />
- <java-attributes>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.att.com.v9.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.att.com.v9.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-point" type="java.lang.String">
- <xml-element-wrapper name="linkage-points" />
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.att.com.v9.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.att.com.v9.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.att.com.v9.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.att.com.v9.ConstrainedElementSets" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.att.com.v9.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.att.com.v9.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.att.com.v9.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.att.com.v9.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.att.com.v9.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String">
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.att.com.v9.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.att.com.v9.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.att.com.v9.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.att.com.v9.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.att.com.v9.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.att.com.v9.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.att.com.v9.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-name" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-value" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.att.com.v9.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.att.com.v9.InstanceFilters" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.att.com.v9.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.att.com.v9.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.att.com.v9.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.att.com.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.att.com.v9.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.att.com.v9.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.att.com.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.att.com.v9.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.att.com.v9.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.att.com.v9.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,vpe,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
- </java-types>
-</xml-bindings>
\ No newline at end of file
--- /dev/null
+################################################################################
+############################## Portal properties ###############################
+################################################################################
+
+# Java class that implements the ECOMP role and user mgt API
+portal.api.impl.class = org.onap.aai.sparky.security.portal.PortalRestAPIServiceImpl
+
+# Instance of ECOMP Portal where the app has been on-boarded
+# use insecure http for dev purposes to avoid self-signed certificate
+ecomp_rest_url = http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/auxapi
+
+# Standard global logon page
+ecomp_redirect_url = http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/login.htm
+
+# Name of cookie to extract on login request
+csp_cookie_name = EPService
+# Alternate values: DEVL, V_DEVL, V_PROD
+csp_gate_keeper_prod_key = PROD
+
+# Toggles use of UEB
+ueb_listeners_enable = false
+# IDs application withing UEB flow
+ueb_app_key = qFKles9N8gDTV0Zc
-##########################################################################################
-############################## eCOMP Portal Auth Properties ##############################
-##########################################################################################
-
-############################## Auth ##############################
-username=aaiui
-password=1t2v1vfv1unz1vgz1t3b
-
-############################## ##############################
-#
-# ONAP Cookie Processing - During initial development, this flag, if true, will
-# prevent the portal interface's login processing from searching for a user
-# specific cookie, and will instead allow passage if a valid session cookie is discovered.
-onap_enabled=true
\ No newline at end of file
+#####################################################################################\r
+############################## Portal Auth Properties ##############################\r
+#####################################################################################\r
+\r
+############################## Auth ##############################\r
+username={{.Values.config.portalUsername}}\r
+password={{.Values.config.portalPassword}}\r
+\r
+############################## ##############################\r
+#\r
+# ONAP Cookie Processing - During initial development, this flag, if true, will\r
+# prevent the portal interface's login processing from searching for a user\r
+# specific cookie, and will instead allow passage if a valid session cookie is discovered.\r
+onap_enabled={{.Values.config.portalOnapEnabled}}\r
+++ /dev/null
-######################################################################################
-############################## eCOMP Portal properties ###############################
-######################################################################################
-
-# 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
-# use insecure http for dev purposes to avoid self-signed certificate
-ecomp_rest_url = http://portalapps.{{.Release.Namespace}}:8989/ONAPPORTAL/auxapi
-
-# Standard global logon page
-ecomp_redirect_url = http://portalapps.{{.Release.Namespace}}:8989/ONAPPORTAL/login.htm
-
-# Name of cookie to extract on login request
-csp_cookie_name = EPService
-# Alternate values: DEVL, V_DEVL, V_PROD
-csp_gate_keeper_prod_key = PROD
-
-# Toggles use of UEB
-ueb_listeners_enable = false
-# IDs application withing UEB flow
-ueb_app_key = qFKles9N8gDTV0Zc
--- /dev/null
+[
+ {
+ "id":1,
+ "name":"View"
+ }
+]
\ No newline at end of file
-[
- {
- "id":1,
- "name":"View"
- }
+[\r
+ {\r
+ "id":1,\r
+ "name":"View"\r
+ }\r
]
\ No newline at end of file
--- /dev/null
+{
+ "properties" : {
+ "entity_suggest" : {
+ "type" : "completion",
+ "payloads" : true,
+ "analyzer" : "custom_analyzer",
+ "preserve_position_increments": false
+ }
+ }
+}
\ No newline at end of file
--- /dev/null
+{
+ "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
--- /dev/null
+{
+ "dynamic_templates": [
+ {
+ "strings": {
+ "match_mapping_type": "string",
+ "match": "*",
+ "mapping": {
+ "type": "string",
+ "index": "not_analyzed"
+ }
+ }
+ }
+ ]
+}
\ No newline at end of file
--- /dev/null
+{
+ "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"
+ }
+ }
+}
+
--- /dev/null
+{
+ "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
--- /dev/null
+{
+ "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
+++ /dev/null
-########################################################################################
-############################## Search Data Service Config ##############################
-########################################################################################
-
-############################## Networking ##############################
-#
-# The ip address/hostname and port to the desired Search Data Service instance
-#
-search-service.ipAddress=aai-search-data.{{.Release.Namespace}}
-search-service.httpPort=9509
-
-############################## Indexes ##############################
-#
-# Index values that will be associated with searches
-#
-# Searchable entities
-search-service.indexName=entitysearchindex
-# Inventory searches
-search-service.topographicalIndexName=topographicalsearchindex
-search-service.entityCountHistoryIndexName=entitycounthistoryindex
-
-############################## Version ##############################
-#
-# Search Data Service version and type (see Search Data Service for more details)
-#
-search-service.version=v1
-search-service.type=default
-
-############################## Certs ##############################
-search-service.ssl.cert-name=client-cert-onap.p12
-search-service.ssl.keystore-password=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
-search-service.ssl.keystore=tomcat_keystore
--- /dev/null
+camel.springboot.name = SparkyCamelContext
+#camel.springboot.xmlRoutes = file:${CONFIG_HOME}/camel-routes/*.route
+camel.springboot.xmlRests = file:${CONFIG_HOME}/camel-rests/*.xml
+
+camel.component.servlet.mapping.context-path=/rest/*
+server.servlet.context-path=/services/aai/webapp/
+
+#
+# attempt to externalize ui JS classes + resources
+#
+spring.resources.static-locations=file:${APP_HOME}/static/
--- /dev/null
+server.port = 9517
\ No newline at end of file
--- /dev/null
+server.port = 8000
+server.ssl.key-store=file:${CONFIG_HOME}/auth/tomcat_keystore
+server.ssl.key-alias=tomcat
\ No newline at end of file
--- /dev/null
+<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>
--- /dev/null
+<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="synapseRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
+ <property name="endpointIpAddress" value="aai.synapse.simpledemo.openecomp.org" />
+ <property name="endpointServerPort" value="9502" />
+ <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/client-cert-onap.p12" />
+ <property name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
+ <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
+ <property name="validateServerCertChain" value="false" />
+ <property name="validateServerHostname" value="false" />
+ <property name="resourceLoader" ref="sparkyResourceLoader" />
+
+ </bean>
+
+ <bean id="aaiuiProxyProcessor"
+ class="org.onap.aai.sparky.dal.proxy.processor.AaiUiProxyProcessor">
+ <constructor-arg ref="synapseRestEndpointConfig" />
+ <constructor-arg name="apiGatewayEndpoint" value="ui-request" />
+ </bean>
+
+</beans>
+
+
--- /dev/null
+<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="gizmoRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
+ <property name="endpointIpAddress" value="{{.Values.global.gizmo.serviceName}}.{{.Release.Namespace}}" />
+ <property name="endpointServerPort" value="9520" />
+ <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/client-cert-onap.p12" />
+ <property name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
+ <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
+ <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/v13/" />
+ <property name="inventoryBasePath" value="/services/inventory/v13/" />
+ </bean>
+
+</beans>
--- /dev/null
+<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="{{.Values.global.aaiElasticsearch.serviceName}}.{{.Release.Namespace}}" />
+ <property name="endpointServerPort" value="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="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="aaiRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
+ <property name="endpointIpAddress" value="{{.Values.global.aai.serviceName}}" />
+ <property name="endpointServerPort" value="8443" />
+ <property name="numRequestRetries" value="5" />
+ <property name="restAuthenticationMode" value="SSL_BASIC" />
+ <property name="connectTimeoutInMs" value="60000" />
+ <property name="readTimeoutInMs" value="30000" />
+ <property name="basicAuthUserName" value="AaiUI" />
+ <property name="basicAuthPassword" value="OBF:1gfr1p571unz1p4j1gg7" />
+ <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
+ <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>
+
+ <bean id="syncControllerRegistry" class="org.onap.aai.sparky.sync.SyncControllerRegistry" />
+
+ <bean id="elasticSearchEndpointConfig"
+ class="org.onap.aai.sparky.sync.config.ElasticSearchEndpointConfig">
+ <property name="esIpAddress" value="{{.Values.global.aaiElasticsearch.serviceName}}.{{.Release.Namespace}}" />
+ <property name="esServerPort" value="9200" />
+ <property name="scrollContextTimeToLiveInMinutes" value="5" />
+ <property name="scrollContextBatchRequestSize" value="5000" />
+ </bean>
+
+ <bean id="aggregationSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
+ <property name="controllerName" value="Aggregation-Sync-Controller" />
+ <property name="enabled" value="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="05: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="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="05: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="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="05: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="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="05: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="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="05: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="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="05:00:00 UTC+00:00" />
+ </bean>
+
+ <bean id="viewInspectySchemaConfig" class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
+ <property name="indexName" value="entitysearchindex" />
+ <property name="indexDocType" value="default" />
+ <property name="indexMappingsFileName" value="/schemas/es_mappings.json" />
+ <property name="indexSettingsFileName" value="/schemas/es_settings.json" />
+ </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="viewInspectySchemaConfig" />
+ <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>
--- /dev/null
+<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="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="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="viewInspectySchemaConfig" />
+ <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>
--- /dev/null
+<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="entitysearchindex" />
+ <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>
--- /dev/null
+<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="{{.Values.global.searchData.serviceName}}.{{.Release.Namespace}}" />
+ <property name="endpointServerPort" value="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/client-cert-onap.p12" />
+ <property name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
+ <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
+ <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>
+
+ <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="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="oxmModelLoader" class="org.onap.aai.sparky.config.oxm.OxmModelLoader" init-method="loadLatestOxmModel">
+ <!-- the int argument is the latestVersionOverride. -1 disables the override -->
+ <constructor-arg type="int" value="-1" />
+ <constructor-arg ref="oxmModelProcessorSet" />
+ </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="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>
+
+ <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>
+
+ <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>
+++ /dev/null
-######################################################################################
-############################## Suggestive Search Config ##############################
-######################################################################################
-
-# Indexes to be taken into account when generating suggestion entries
-suggestion.indexes=elasticsearch.autosuggestIndexname,elasticsearch.indexName
-# List of stop words to be used during suggestive search
-suggestion.stopwords=a,an,and,are,as,at,be,but,by,called,for,if,in,into,is,it,no,not,of,on,or,such,that,the,their,then,there,these,they,this,to,was,will,with
-# Assigns which class, within sparky, will process the searches related to an assosiated index
-suggestion.routing=elasticsearch.autosuggestIndexname:SearchServiceWrapper,elasticsearch.indexName:VnfSearchService
-
-############################## Pairings ##############################
-#
-# "called" pairings, keys reference types within the OXM, and the value
-# is the suggestion term used for matches with any of the "called" keys.
-# e.g. "x called vserver-id" (but actual value of vserver-id)
-suggestion.pairing.called.key=volume-group-id,volume-group-name,physical-location-id,data-center-code,complex-name,tenant-id,tenant-name,vserver-id,vserver-name,vserver-name2,hostname,pserver-name2,pserver-id,global-customer-id,subscriber-name,service-instance-id,service-instance-name,link-name,vpn-id,vpn-name,vpe-id,vnf-id,vnf-name,vnf-name2,vnfc-name,network-id,network-name,network-policy-id,vf-module-id,vf-module-name,vnf-id2,pnf-name,circuit-id
-suggestion.pairing.called.value=called
-#
-# Exact same explanation as the "called" pairings above.
-# e.g. "x at ipv4-oam-address"
-suggestion.pairing.at.key=street1,street2,postal-code,ipv4-oam-address,network-policy-fqdn
-suggestion.pairing.at.value=at
-#
-# Default pairing values for any OXM types that aren't part of the the other
-# pairing lists.
-suggestion.pairing.default.value=with
\ No newline at end of file
+++ /dev/null
-##############################################################################################
-############################## ElasticSearchSynchronizer Config ##############################
-##############################################################################################
-
-# Initial delay on startup before starting synchronization tasks
-synchronizer.syncTask.initialDelayInMs=60000
-# The frequency at which the synchronizationtask will be run
-synchronizer.syncTask.taskFrequencyInDay=2
-
-# Time at which to run synchronization. Format = hh:mm:ss UTC(-/+)hh:mm
-synchronizer.syncTask.startTimestamp=05:00:00 UTC+00:00
-
-# Generates a count in elasticsearch related to inventory
-synchronizer.historicalEntitySummarizerEnabled=true
-# Toggles the suggestion synchronizer
-synchronizer.autosuggestSynchronizationEnabled=true
-# Frequency at which above count is generated
-synchronizer.historicalEntitySummarizedFrequencyInMinutes=60
-
-# Elasticsearch scroll api context keep alive value
-synchronizer.scrollContextTimeToLiveInMinutes=5
-# Elasticsearch scroll api context max items per batch request
-synchronizer.numScrollContextItemsToRetrievePerRequest=5000
-
-
-############################## Deprecated, to be removed or updated ##############################
-synchronizer.resolver.progressLogFrequencyInMs=60000
-synchronizer.resolver.queueMonitorFrequencyInMs=1000
-synchronizer.resolver.displayVerboseQueueManagerStats=false
-synchronizer.indexIntegrityValidator.enabled=false
-synchronizer.indexIntegrityValidatorFrequencyInMs=3600000
-synchronizer.suppressResourceNotFoundErrors=true
-synchronizer.applyNodesOnlyModifier=false
\ No newline at end of file
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-model
+ name: {{ include "common.fullname" . }}-portal
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/model/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/portal/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-portal
+ name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/portal/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-log
+ name: {{ include "common.fullname" . }}-camel-rests
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/camel-rests/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-descriptors
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/descriptors/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-filters
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/filters/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-schemas
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/schemas/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-spring-beans
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/spring-beans/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-boot-inf
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/portal/BOOT-INF/classes/*").AsConfig . | indent 2 }}
+
spec:
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: CONFIG_HOME
- value: /opt/app/sparky/config/
- - name: KEY_MANAGER_PASSWORD
- value: {{ .Values.config.keyManagerPassword }}
- - name: KEY_STORE_PASSWORD
+ value: /opt/app/sparky/appconfig/
+ - name: KEYSTORE_ALIAS_PASSWORD
+ value: {{ .Values.config.keystoreAliasPassword }}
+ - name: KEYSTORE_PASSWORD
value: {{ .Values.config.keyStorePassword }}
+ - name: SPARKY_SSL_ENABLED
+ value: 'true'
+ - name: SPARKY_PORTAL_ENABLED
+ value: 'false'
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /opt/app/sparky/config/auth/
+ - mountPath: /opt/app/sparky/appconfig/auth/
name: {{ include "common.fullname" . }}-auth-config
- - mountPath: /opt/app/sparky/config/synchronizer.properties
- subPath: synchronizer.properties
+ - mountPath: /opt/app/sparky/appconfig/camel-rests/
+ name: {{ include "common.fullname" . }}-camel-rests-config
+ - mountPath: /opt/app/sparky/appconfig/descriptors/
+ name: {{ include "common.fullname" . }}-descriptors-config
+ - mountPath: /opt/app/sparky/appconfig/filters/
+ name: {{ include "common.fullname" . }}-filters-config
+ - mountPath: /opt/app/sparky/appconfig/
name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/suggestive-search.properties
- subPath: suggestive-search.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/search-service.properties
- subPath: search-service.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/roles.config
- subPath: roles.config
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/elasticsearch.properties
- subPath: elasticsearch.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/aai.properties
- subPath: aai.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/model/
- name: {{ include "common.fullname" . }}-model-config
- - mountPath: /opt/app/sparky/config/portal/
+ - mountPath: /opt/app/sparky/appconfig/portal
name: {{ include "common.fullname" . }}-portal-config
+ - mountPath: /opt/app/sparky/appconfig/portal/BOOT-INF/classes
+ name: {{ include "common.fullname" . }}-portal-boot-inf-config
+ - mountPath: /opt/app/sparky/appconfig/schemas
+ name: {{ include "common.fullname" . }}-schemas-config
+ - mountPath: /opt/app/sparky/appconfig/spring-beans/
+ name: {{ include "common.fullname" . }}-spring-beans-config
- mountPath: /var/log/onap
name: {{ include "common.fullname" . }}-logs
- - mountPath: /opt/app/sparky/bundleconfig/etc/logback.xml
+ - mountPath: /opt/app/sparky/appconfig/logging/
name: {{ include "common.fullname" . }}-log-conf
- subPath: logback.xml
ports:
- containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
{{- if eq .Values.liveness.enabled true }}
livenessProbe:
tcpSocket:
- port: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort2 }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
{{ end -}}
readinessProbe:
tcpSocket:
- port: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort2 }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
resources:
- name: {{ include "common.fullname" . }}-config
configMap:
name: {{ include "common.fullname" . }}
- - name: {{ include "common.fullname" . }}-model-config
+ - name: {{ include "common.fullname" . }}-auth-config
+ secret:
+ secretName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-camel-rests-config
configMap:
- name: {{ include "common.fullname" . }}-model
+ name: {{ include "common.fullname" . }}-camel-rests
+ - name: {{ include "common.fullname" . }}-descriptors-config
+ configMap:
+ name: {{ include "common.fullname" . }}-descriptors
+ - name: {{ include "common.fullname" . }}-filters-config
+ configMap:
+ name: {{ include "common.fullname" . }}-filters
- name: {{ include "common.fullname" . }}-portal-config
configMap:
name: {{ include "common.fullname" . }}-portal
- - name: {{ include "common.fullname" . }}-auth-config
- secret:
- secretName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-portal-boot-inf-config
+ configMap:
+ name: {{ include "common.fullname" . }}-boot-inf
+ - name: {{ include "common.fullname" . }}-schemas-config
+ configMap:
+ name: {{ include "common.fullname" . }}-schemas
+ - name: {{ include "common.fullname" . }}-spring-beans-config
+ configMap:
+ name: {{ include "common.fullname" . }}-spring-beans
- name: filebeat-conf
configMap:
name: aai-filebeat
emptyDir: {}
- name: {{ include "common.fullname" . }}-log-conf
configMap:
- name: {{ include "common.fullname" . }}-log
+ name: {{ include "common.fullname" . }}-log
restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
-
+ aai:
+ serviceName: aai-aai
+ aaiElasticsearch:
+ serviceName: aai-elasticsearch
+ gizmo:
+ serviceName: aai-gizmo
+ searchData:
+ serviceName: aai-search-data
# application image
repository: nexus3.onap.org:10001
-image: onap/sparky-be:v1.1.0
+image: onap/sparky-be:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
+dockerhubRepository: registry.hub.docker.com
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
# application configuration
config:
elasticsearchHttpPort: 9200
keyStorePassword: OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
- keyManagerPassword: OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
+ keystoreAliasPassword: OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
+ gerritBranch: master
+ gerritProject: http://gerrit.onap.org/r/aai/test-config
+ portalUsername: aaiui
+ portalPassword: 1t2v1vfv1unz1vgz1t3b
+
+# ONAP Cookie Processing - During initial development, the following flag, if true, will
+# prevent the portal interface's login processing from searching for a user
+# specific cookie, and will instead allow passage if a valid session cookie is discovered.
+ portalOnapEnabled: true
+#
# override chart name (sparky-be) to share a common namespace
# suffix with parent chart (aai)
type: ClusterIP
name: aai-sparky-be
internalPort: 9517
+ internalPort2: 8000
ingress:
enabled: false
--- /dev/null
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+
+####################################################################
+# REMEMBER TO THINK ABOUT ENVIRONMENTAL DIFFERENCES AND CHANGE THE
+# TEMPLATE AND *ALL* DATAFILES
+####################################################################
+
+####################################################################
+# REMEMBER TO THINK ABOUT ENVIRONMENTAL DIFFERENCES AND CHANGE THE
+# TEMPLATE AND *ALL* DATAFILES
+####################################################################
+
+aai.config.checktime=1000
+
+# this could come from siteconfig.pl?
+aai.config.nodename=AutomaticallyOverwritten
+
+
+
+aai.auth.cspcookies_on=false
+aai.dbmodel.filename=ex5.json
+
+aai.server.url.base=https://aai.{{ include "common.namespace" . }}:8443/aai/
+aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/v11/
+aai.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
+
+aai.tools.enableBasicAuth=true
+aai.tools.username=AAI
+aai.tools.password=AAI
+
+aai.truststore.filename=aai_keystore
+aai.truststore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+aai.keystore.filename=aai_keystore
+aai.keystore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+
+
+aai.notification.current.version=v11
+aai.notificationEvent.default.status=UNPROCESSED
+aai.notificationEvent.default.eventType=AAI-EVENT
+aai.notificationEvent.default.domain=dev
+aai.notificationEvent.default.sourceName=aai
+aai.notificationEvent.default.sequenceNumber=0
+aai.notificationEvent.default.severity=NORMAL
+aai.notificationEvent.default.version=v11
+# This one lets us enable/disable resource-version checking on updates/deletes
+aai.resourceversion.enableflag=true
+aai.logging.maxStackTraceEntries=10
+aai.default.api.version=v11
+
+
+
+# Used by Model-processing code
+aai.model.delete.sleep.per.vtx.msec=500
+aai.model.query.resultset.maxcount=50
+aai.model.query.timeout.sec=90
+
+# Used by Data Grooming
+aai.grooming.default.max.file=150
+aai.grooming.default.sleep.minutes=7
+
+aai.model.proc.max.levels=50
+aai.edgeTag.proc.max.levels=50
+
+# for transaction log
+aai.logging.hbase.interceptor=true
+aai.logging.hbase.enabled=true
+aai.logging.hbase.logrequest=true
+aai.logging.hbase.logresponse=true
+
+# for gremlin server
+aai.server.rebind=g
+hbase.table.name=aailogging.dev
+hbase.table.timestamp.format=YYYYMMdd-HH:mm:ss:SSS
+hbase.zookeeper.quorum=localhost
+hbase.zookeeper.property.clientPort=2181
+hbase.zookeeper.znode.parent=/hbase
+
+aai.logging.trace.enabled=true
+aai.logging.trace.logrequest=false
+aai.logging.trace.logresponse=false
+
+aai.transaction.logging=true
+aai.transaction.logging.get=false
+aai.transaction.logging.post=false
+
+aai.realtime.clients=SDNC,MSO,SO,robot-ete
+
+#timeout for traversal enabled flag
+aai.traversal.timeoutenabled=true
+
+#timeout app specific
+aai.traversal.timeout.appspecific=JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAI-FILEGEN-GFPIP,-1
+
+#default timeout limit added for traversal if not overridden (in ms)
+aai.traversal.timeoutlimit=180000
--- /dev/null
+# The following info parameters are being referenced by ajsc6
+info.build.artifact=aai-traversal
+info.build.name=traversal
+info.build.description=Traversal Microservice
+info.build.version=1.2.0
+
+spring.application.name=aai-traversal
+spring.jersey.type=filter
+
+server.contextPath=/
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+spring.profiles.active=production,dmaap
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+
+#Add this properties only if you want to change the URL, AJSC Framework interceptors will intercept
+#com.att.ajsc.common.interceptors.PreInterceptor.url=/**
+#com.att.ajsc.common.interceptors.PostInterceptor.url=/**
+
+#Servlet context parameters
+server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
+kubernetes.namespace={{ include "common.namespace" . }}
+
+# If you get an application startup failure that the port is already taken
+# If thats not it, please check if the key-store file path makes sense
+server.local.startpath=aai-traversal/src/main/resources/
+server.basic.auth.location=${server.local.startpath}etc/auth/realm.properties
+
+server.port=8446
+server.ssl.enabled-protocols=TLSv1.1,TLSv1.2
+server.ssl.key-store=${server.local.startpath}etc/auth/aai_keystore
+server.ssl.key-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
+server.ssl.trust-store=${server.local.startpath}etc/auth/aai_keystore
+server.ssl.trust-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
+server.ssl.client-auth=want
+server.ssl.key-store-type=JKS
+
+# JMS bind address host port
+jms.bind.address=tcp://localhost:61647
+dmaap.ribbon.eureka.enabled=false
+dmaap.ribbon.listOfServers=message-router.{{ include "common.namespace" . }}:3904
+# Number of milliseconds to wait before making ping requests again
+dmaap.ribbon.ServerListRefreshInterval=75000
+dmaap.ribbon.NFLoadBalancerPingInterval=75000
+dmaap.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.AvailabilityFilteringRule
+dmaap.ribbon.NFLoadBalancerPingClassName=org.onap.aai.config.HttpPingImpl
+dmaap.ribbon.EnableMarkingServerDownOnReachingFailureLimit=true
+dmaap.ribbon.ServerDownFailureLimit=1
+# This needs to be verified but it seems that adding this property should automatically
+# Make the dmaap client change the url from http to https depending on the server
+dmaap.ribbon.securePorts=3905
+
+# Custom Dmaap Specific Configuration
+dmaap.ribbon.username=
+dmaap.ribbon.password=
+dmaap.ribbon.health.endpoint=/topics/AAI-EVENT
+# Number of seconds to wait for the ping to work and might need to increase this if the pings are all failing
+dmaap.ribbon.pingport.timeout=3
+
+niws.loadbalancer.dmaap.filterCircuitTripped=true
+niws.loadbalancer.dmaap.connectionFailureCountThreshold=3
+niws.loadbalancer.dmaap.circuitTripMaxTimeoutSeconds=180
+#dmaap.ribbon.retryableStatusCodes=404,503
+#dmaap.ribbon.retryableStatusCodes.MaxAutoRetriesNextServer=2
+#dmaap.ribbon.retryableStatusCodes.MaxAutoRetries=2
+#dmaap.ribbon.retryableStatusCodes.OkToRetryOnAllOperations=true
--- /dev/null
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+{{- $global := . }}
+
+storage.backend=cassandra
+storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+
+storage.cassandra.keyspace=aaigraph
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+#storage.cassandra.replication-strategy-options=MTA1cass,3
+
+#schema.default=none
+storage.lock.wait-time=300
+#caching on
+cache.db-cache = true
+cache.db-cache-clean-wait = 20
+cache.db-cache-time = 180000
+cache.db-cache-size = 0.3
+
+#load graphson file on startup
+load.snapshot.file=false
--- /dev/null
+#
+# ============LICENSE_START=======================================================
+# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+{{- $global := . }}
+
+# the following parameters are not reloaded automatically and require a manual bounce
+storage.backend=cassandra
+storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+
+storage.cassandra.keyspace=aaigraph
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+#storage.cassandra.replication-strategy-options=MTA1cass,3
+
+#schema.default=none
+storage.lock.wait-time=300
+# Setting db-cache to false ensure the fastest propagation of changes across servers
+cache.db-cache = false
+
+#load graphson file on startup
+load.snapshot.file=false
--- /dev/null
+<!--
+
+ ============LICENSE_START=======================================================
+ org.onap.aai
+ ================================================================================
+ Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+
+ ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+-->
+<configuration>
+ <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+ <appender name="ACCESS"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">
+ <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>
+ </encoder>
+ </appender>
+ <appender-ref ref="ACCESS" />
+</configuration>
+
+<!--
+%a - Remote IP address
+%A - Local IP address
+%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent
+%B - Bytes sent, excluding HTTP headers
+%h - Remote host name
+%H - Request protocol
+%l - Remote logical username from identd (always returns '-')
+%m - Request method
+%p - Local port
+%q - Query string (prepended with a '?' if it exists, otherwise an empty string
+%r - First line of the request
+%s - HTTP status code of the response
+%S - User session ID
+%t - Date and time, in Common Log Format format
+%u - Remote user that was authenticated
+%U - Requested URL path
+%v - Local server name
+%I - current request thread name (can compare later with stacktraces)
+
+%z - Custom pattern that parses the cert for the subject
+%y - Custom pattern determines rest or dme2
+ -->
\ No newline at end of file
+++ /dev/null
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <contextName>${module.ajsc.namespace.name}</contextName>
- <jmxConfigurator />
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="restLogDirectory" value="${logDir}/${componentName}/rest" />
- <property name="dmaapLogDirectory" value="${logDir}/${componentName}/dmaapAAIEventConsumer" />
- <property name="perfLogsDirectory" value="${logDir}/${componentName}/perf-audit" />
- <!-- default eelf log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
- <property name="queueSize" value="256" />
- <property name="maxFileSize" value="50MB" />
- <property name="maxHistory" value="30" />
- <property name="totalSizeCap" value="10GB" />
- <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>ERROR</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <encoder>
- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="SANE">
- <file>${restLogDirectory}/sane.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/sane.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncSANE">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="SANE" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="METRIC">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncMETRIC">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="METRIC" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncDEBUG">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="DEBUG" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <file>${restLogDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncERROR">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="ERROR" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT">
- <file>${restLogDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncAUDIT">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="AUDIT" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="translog">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/translog.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/translog.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asynctranslog">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="translog" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumer">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <File>${dmaapLogDirectory}/${errorLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerDebug">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${debugLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerMetric">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${metricsLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <!-- AJSC Services (bootstrap services) -->
- <logger level="WARN" name="ajsc" />
- <logger level="WARN" name="ajsc.RouteMgmtService" />
- <logger level="WARN" name="ajsc.ComputeService" />
- <logger level="WARN" name="ajsc.VandelayService" />
- <logger level="WARN" name="ajsc.FilePersistenceService" />
- <logger level="WARN" name="ajsc.UserDefinedJarService" />
- <logger level="WARN" name="ajsc.UserDefinedBeansDefService" />
- <logger level="WARN" name="ajsc.LoggingConfigurationService" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger level="WARN" name="ajsc.utils" />
- <logger level="WARN" name="ajsc.utils.DME2Helper" />
- <logger level="WARN" name="ajsc.filters" />
- <logger level="WARN" name="ajsc.beans.interceptors" />
- <logger level="WARN" name="ajsc.restlet" />
- <logger level="WARN" name="ajsc.servlet" />
- <logger level="WARN" name="com.att.ajsc" />
- <logger level="WARN" name="com.att.ajsc.csi.logging" />
- <logger level="WARN" name="com.att.ajsc.filemonitor" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <!-- logback jms appenders & loggers definition starts here -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="auditLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="perfLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-audit">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Audit-Record-Queue" />
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-perf">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Performance-Tracker-Queue" />
- </appender>
- <logger additivity="false" level="INFO" name="AuditRecord">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="AuditRecord_DirectCall">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="PerfTrackerRecord">
- <appender-ref ref="ASYNC-perf" />
- <appender-ref ref="perfLogs" />
- </logger>
- <!-- logback jms appenders & loggers definition ends here -->
- <logger additivity="false" level="DEBUG" name="org.onap.aai.interceptors">
- <appender-ref ref="asynctranslog" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PreAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PostAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger additivity="false" level="DEBUG" name="org.onap.aai.dmaap">
- <appender-ref ref="dmaapAAIEventConsumer" />
- <appender-ref ref="dmaapAAIEventConsumerDebug" />
- <appender-ref ref="dmaapAAIEventConsumerMetric" />
- </logger>
- <logger level="WARN" name="org.apache" />
- <logger level="WARN" name="org.zookeeper" />
- <logger level="WARN" name="com.thinkaurelius" />
- <!-- ============================================================================ -->
- <!-- General EELF logger -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="WARN" name="com.att.eelf">
- <appender-ref ref="asyncDEBUG" />
- <appender-ref ref="asyncERROR" />
- <appender-ref ref="asyncMETRIC" />
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncDEBUG" />
- <appender-ref ref="asyncERROR" />
- </root>
-</configuration>
--- /dev/null
+<!--
+ ============LICENSE_START=======================================================
+ org.onap.aai
+ ================================================================================
+ Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+ ECOMP is a trademark and service mark of AT&T Intellectual Property.
+-->
+<configuration scan="true" scanPeriod="60 seconds" debug="false">
+ <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
+ <property resource="application.properties" />
+ <property name="namespace" value="aai-traversal"/>
+ <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+ <jmxConfigurator />
+ <property name="logDirectory" value="${AJSC_HOME}/logs" />
+ <property name="eelfLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <property name="eelfAuditLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <property name="eelfMetricLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{targetVirtualEntity}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <!-- <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> -->
+ <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%ecompResponseCode|%ecompResponseDescription|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+ <property name="eelfTransLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{partnerName}:%m%n"/>
+ <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
+ <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
+ <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>
+ %clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
+ </pattern>
+ </encoder>
+ </appender>
+ <appender name="SANE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/rest/sane.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/sane.log.%d{yyyy-MM-dd}</fileNamePattern>
+ </rollingPolicy>
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+ </pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncSANE" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="SANE" />
+ </appender>
+ <appender name="METRIC"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>INFO</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <file>${logDirectory}/rest/metrics.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/metrics.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfMetricLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncMETRIC" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="METRIC" />
+ </appender>
+ <appender name="DEBUG"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>DEBUG</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <file>${logDirectory}/rest/debug.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/debug.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncDEBUG" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="DEBUG" />
+ </appender>
+ <appender name="ERROR"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <file>${logDirectory}/rest/error.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/error.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfErrorLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncERROR" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="ERROR" />
+ </appender>
+ <appender name="AUDIT"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/rest/audit.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/audit.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfAuditLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncAUDIT" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="AUDIT" />
+ </appender>
+ <appender name="translog"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>DEBUG</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <file>${logDirectory}/rest/translog.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/rest/translog.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfTransLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asynctranslog" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>1000</queueSize>
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="translog" />
+ </appender>
+ <appender name="dmaapAAIEventConsumer"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <File>${logDirectory}/dmaapAAIEventConsumer/error.log</File>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/error.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="dmaapAAIEventConsumerDebug"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>DEBUG</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <File>${logDirectory}/dmaapAAIEventConsumer/debug.log</File>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/debug.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="dmaapAAIEventConsumerMetric"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>INFO</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <File>${logDirectory}/dmaapAAIEventConsumer/metrics.log</File>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/metrics.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfMetricLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="external"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <file>${logDirectory}/external/external.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/external/external.log.%d{yyyy-MM-dd}
+ </fileNamePattern>
+ </rollingPolicy>
+ <encoder class="org.onap.aai.logging.EcompEncoder">
+ <pattern>${eelfLogPattern}</pattern>
+ </encoder>
+ </appender>
+ <logger name="org.onap.aai" level="DEBUG" additivity="false">
+ <appender-ref ref="asyncDEBUG" />
+ <appender-ref ref="asyncERROR" />
+ <appender-ref ref="asyncMETRIC" />
+ <appender-ref ref="asyncSANE" />
+ </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" />
+ <logger name="com.jayway.jsonpath" level="WARN" />
+ <!-- AJSC Services (bootstrap services) -->
+ <logger name="ajsc" level="WARN" />
+ <logger name="ajsc.RouteMgmtService" level="WARN" />
+ <logger name="ajsc.ComputeService" level="WARN" />
+ <logger name="ajsc.VandelayService" level="WARN" />
+ <logger name="ajsc.FilePersistenceService" level="WARN" />
+ <logger name="ajsc.UserDefinedJarService" level="WARN" />
+ <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
+ <logger name="ajsc.LoggingConfigurationService" level="WARN" />
+ <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
+ logging) -->
+ <logger name="org.codehaus.groovy" level="WARN" />
+ <logger name="com.att.scamper" level="WARN" />
+ <logger name="ajsc.utils" level="WARN" />
+ <logger name="ajsc.utils.DME2Helper" level="WARN" />
+ <logger name="ajsc.filters" level="WARN" />
+ <logger name="ajsc.beans.interceptors" level="WARN" />
+ <logger name="ajsc.restlet" level="WARN" />
+ <logger name="ajsc.servlet" level="WARN" />
+ <logger name="com.att.ajsc" level="WARN" />
+ <logger name="com.att.ajsc.csi.logging" level="WARN" />
+ <logger name="com.att.ajsc.filemonitor" level="WARN" />
+ <logger name="com.netflix.loadbalancer" level="WARN" />
+ <logger name="org.apache.zookeeper" level="OFF" />
+ <!-- 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" />
+ <logger name="org.hibernate.validator" level="WARN" />
+ <logger name="org.hibernate" level="WARN" />
+ <logger name="org.hibernate.ejb" level="OFF" />
+ <!-- logback internals logging -->
+ <logger name="ch.qos.logback.classic" level="WARN" />
+ <logger name="ch.qos.logback.core" level="WARN" />
+ <logger name="org.eclipse.jetty" level="WARN" />
+ <!-- logback jms appenders & loggers definition starts here -->
+ <appender name="auditLogs"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
+ <file>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.log
+ </file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+ </encoder>
+ </appender>
+ <appender name="perfLogs"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
+ <file>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.log
+ </file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+ </encoder>
+ </appender>
+ <appender name="miscLogs" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/misc/misc.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/misc/misc.log.%d{yyyy-MM-dd}</fileNamePattern>
+ </rollingPolicy>
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+ </pattern>
+ </encoder>
+ </appender>
+ <logger name="AuditRecord" level="INFO" additivity="false">
+ <appender-ref ref="auditLogs" />
+ </logger>
+ <logger name="AuditRecord_DirectCall" level="INFO" additivity="false">
+ <appender-ref ref="auditLogs" />
+ </logger>
+ <logger name="PerfTrackerRecord" level="INFO" additivity="false">
+ <appender-ref ref="perfLogs" />
+ </logger>
+ <logger name="MiscRecord" level="INFO" additivity="false">
+ <appender-ref ref="miscLogs" />
+ </logger>
+ <!-- logback jms appenders & loggers definition ends here -->
+ <logger name="org.onap.aai.interceptors.post" level="DEBUG"
+ additivity="false">
+ <appender-ref ref="asynctranslog" />
+ </logger>
+ <logger name="org.onap.aai.interceptors.pre.SetLoggingContext" level="DEBUG">
+ <appender-ref ref="asyncAUDIT"/>
+ </logger>
+ <logger name="org.onap.aai.interceptors.post.ResetLoggingContext" level="DEBUG">
+ <appender-ref ref="asyncAUDIT"/>
+ </logger>
+ <logger name="org.onap.aai.dmaap" level="DEBUG" additivity="false">
+ <appender-ref ref="dmaapAAIEventConsumer" />
+ <appender-ref ref="dmaapAAIEventConsumerDebug" />
+ <appender-ref ref="dmaapAAIEventConsumerMetric" />
+ </logger>
+ <logger name="org.apache" level="OFF" />
+ <logger name="org.zookeeper" level="OFF" />
+ <logger name="com.thinkaurelius" level="WARN" />
+ <logger name="com.att.aft.dme2" level="WARN" />
+ <!-- ============================================================================ -->
+ <!-- General EELF logger -->
+ <!-- ============================================================================ -->
+ <logger name="com.att.eelf" level="WARN" additivity="false">
+ <appender-ref ref="asyncDEBUG" />
+ <appender-ref ref="asyncERROR" />
+ <appender-ref ref="asyncMETRIC" />
+ </logger>
+ <root level="DEBUG">
+ <appender-ref ref="external" />
+ </root>
+</configuration>
--- /dev/null
+# format : username: password[,rolename ...]
+# default username/password: AAI/AAI, MSO/MSO, ModelLoader/ModelLoader...
+AAI:OBF:1gfr1ev31gg7,admin
+MSO:OBF:1jzx1lz31k01,admin
+SDNC:OBF:1itr1i0l1i151isv,admin
+DCAE:OBF:1g8u1f9d1f991g8w,admin
+POLICY:OBF:1mk61i171ima1im41i0j1mko,admin
+ASDC:OBF:1f991j0u1j001f9d,admin
+VID:OBF:1jm91i0v1jl9,admin
+APPC:OBF:1f991ksf1ksf1f9d,admin
+ModelLoader:OBF:1qvu1v2h1sov1sar1wfw1j7j1wg21saj1sov1v1x1qxw,admin
+AaiUI:OBF:1gfr1p571unz1p4j1gg7,admin
+OOF:OBF:1img1ke71ily,admin
name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/localhost-access-logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-db-real-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/janusgraph-realtime.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-db-cached-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/janusgraph-cached.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/aaiconfig.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-springapp-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-realm-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
release: {{ .Release.Name }}
name: {{ include "common.name" . }}
annotations:
+ checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
msb.onap.org/service-info: '[
{
"serviceName": "_aai-generic-query",
}
]'
spec:
+ hostname: aai-traversal
initContainers:
- command:
- /root/ready.py
args:
- --container-name
+ - aai-cassandra
+ - --container-name
- aai-resources
env:
- name: NAMESPACE
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- - name: CHEF_BRANCH
- value: master
- - name: AAI_CHEF_ENV
- value: simpledemo
- - name: AAI_CORE_VERSION
- value: {{ .Values.config.aaicoreversion }}
- - name: AAI_CHEF_LOC
- value: /var/chef/aai-data/environments
- - name: CHEF_GIT_URL
- value: http://gerrit.onap.org/r/aai
- - name: RESOURCES_HOSTNAME
- value: aai-resources.{{ include "common.namespace" . }}
+ - name: DISABLE_UPDATE_QUERY
+ value: {{ .Values.config.disableUpdateQuery | quote }}
+ - name: LOCAL_USER_ID
+ value: {{ .Values.config.userId | quote }}
+ - name: LOCAL_GROUP_ID
+ value: {{ .Values.config.groupId | quote }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /var/chef/aai-data/chef-config/dev/.knife/solo.rb
- subPath: solo.rb
- name: aai-chef-config
- - mountPath: /var/chef/aai-data/environments/
- name: aai-data
- - mountPath: /var/log/onap
- name: aai-traversal-logs
- - mountPath: /opt/app/aai-traversal/bundleconfig/etc/logback.xml
- name: aai-traversal-log-conf
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-db-real-conf
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-db-cached-conf
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-aaiconfig-conf
+ subPath: aaiconfig.properties
+ - mountPath: /opt/aai/logroot/AAI-GQ
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-traversal/resources/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
subPath: logback.xml
+ - mountPath: /opt/app/aai-traversal/resources/localhost-access-logback.xml
+ name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ subPath: localhost-access-logback.xml
+ - mountPath: /opt/app/aai-traversal/resources/application.properties
+ name: {{ include "common.fullname" . }}-springapp-conf
+ subPath: application.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/auth/aai_keystore
+ name: {{ include "common.fullname" . }}-auth-sec
+ subPath: aai_keystore
ports:
- containerPort: {{ .Values.service.internalPort }}
- containerPort: {{ .Values.service.internalPort2 }}
subPath: filebeat.yml
name: filebeat-conf
- mountPath: /var/log/onap
- name: aai-traversal-logs
+ name: {{ include "common.fullname" . }}-logs
- mountPath: /usr/share/filebeat/data
- name: aai-traversal-filebeat
-
+ name: {{ include "common.fullname" . }}-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
- - name: aai-chef-config
- configMap:
- name: aai-chef-config
- - name: aai-data
- configMap:
- name: aai-resources-environments
- name: filebeat-conf
configMap:
name: aai-filebeat
- - name: aai-traversal-logs
+ - name: {{ include "common.fullname" . }}-logs
emptyDir: {}
- - name: aai-traversal-filebeat
+ - name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: aai-traversal-log-conf
+ - name: {{ include "common.fullname" . }}-log-conf
configMap:
name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+ - name: {{ include "common.fullname" . }}-db-real-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-db-real-configmap
+ - name: {{ include "common.fullname" . }}-db-cached-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-db-cached-configmap
+ - name: {{ include "common.fullname" . }}-aaiconfig-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ - name: {{ include "common.fullname" . }}-springapp-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-springapp-configmap
+ - name: {{ include "common.fullname" . }}-realm-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-realm-configmap
+ - name: {{ include "common.fullname" . }}-auth-sec
+ secret:
+ secretName: aai-auth-secret
restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017-2018 AT&T
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-update-query-data
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aai
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - bash
+ - "-c"
+ - |
+ set -x
+ mkdir -p /opt/aai/logroot/AAI-GQ/misc
+ bash -x /opt/app/aai-traversal/docker-entrypoint.sh install/updateQueryData.sh
+ env:
+ - name: LOCAL_USER_ID
+ value: "1000"
+ - name: LOCAL_GROUP_ID
+ value: "1000"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-db-real-conf
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-db-cached-conf
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-aaiconfig-conf
+ subPath: aaiconfig.properties
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-traversal/resources/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
+ subPath: logback.xml
+ - mountPath: /opt/app/aai-traversal/resources/localhost-access-logback.xml
+ name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ subPath: localhost-access-logback.xml
+ - mountPath: /opt/app/aai-traversal/resources/application.properties
+ name: {{ include "common.fullname" . }}-springapp-conf
+ subPath: application.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/auth/aai_keystore
+ name: {{ include "common.fullname" . }}-auth-sec
+ subPath: aai_keystore
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: aai-filebeat
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}-update-query
+ - name: {{ include "common.fullname" . }}-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+ - name: {{ include "common.fullname" . }}-db-real-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-db-real-configmap
+ - name: {{ include "common.fullname" . }}-db-cached-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-db-cached-configmap
+ - name: {{ include "common.fullname" . }}-aaiconfig-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ - name: {{ include "common.fullname" . }}-springapp-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-springapp-configmap
+ - name: {{ include "common.fullname" . }}-realm-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-realm-configmap
+ - name: {{ include "common.fullname" . }}-auth-sec
+ secret:
+ secretName: aai-auth-secret
+ restartPolicy: OnFailure
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- else -}}
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# application image
repository: nexus3.onap.org:10001
-image: openecomp/aai-traversal:v1.1.0
+image: onap/aai-traversal:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
# application configuration
config:
aaicoreversion: 1.1.0-SNAPSHOT
+ userId: 1000
+ groupId: 1000
+ disableUpdateQuery: true
+persistence:
+ mountPath: /dockerdata-nfs
+ mountSubPath: aai/aai-traversal
# default number of instances
replicaCount: 1
service:
type: ClusterIP
- name: aai-traversal
+ portName: aai-traversal-8446
internalPort: 8446
+ portName2: aai-traversal-5005
internalPort2: 5005
ingress:
"AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
"APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
"AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "dmaap.{{.Release.Namespace}}:3904",
+ "AAI_DMAAP_HOST_PORT": "message-router.{{.Release.Namespace}}:3904",
"AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
"AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
"AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
"AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
"APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
"AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "dmaap.{{.Release.Namespace}}:3904",
+ "AAI_DMAAP_HOST_PORT": "message-router.{{.Release.Namespace}}:3904",
"AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
"AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
"AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
name: aai-deployment-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/haproxy/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/haproxy/haproxy.cfg").AsConfig . | indent 2 }}
---
-# this is a shared resource for subcharts
apiVersion: v1
-kind: ConfigMap
+kind: Secret
metadata:
- name: aai-chef-config
+ name: aai-haproxy-secret
namespace: {{ include "common.namespace" . }}
+type: Opaque
data:
-{{ tpl (.Files.Glob "resources/config/aai-data/chef-config/dev/.knife/solo.rb").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/haproxy/aai.pem").AsSecrets . | indent 2 }}
+# This is a shared key for both resources and traversal
---
-# this is a shared resource for subcharts
apiVersion: v1
-kind: ConfigMap
+kind: Secret
metadata:
- name: aai-resources-environments
+ name: aai-auth-secret
namespace: {{ include "common.namespace" . }}
+type: Opaque
data:
-{{ tpl (.Files.Glob "resources/config/aai-data/environments/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aai/aai_keystore").AsSecrets . | indent 2 }}
+
global: # global defaults
nodePortPrefix: 302
repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
dockerhubRepository: docker.io
busyboxImage: busybox
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
restartPolicy: Always
+ cassandra:
+ serviceName: aai-cassandra
+ replicas: 3
+ aai:
+ serviceName: aai-aai
+ babel:
+ serviceName: aai-babel
+ champ:
+ serviceName: aai-champ
+ aaiElasticsearch:
+ serviceName: aai-elasticsearch
+ hbase:
+ serviceName: aai-hbase
+ resources:
+ serviceName: aai-resources
+ sparkyBe:
+ serviceName: aai-sparky-be
+ dataRouter:
+ serviceName: aai-data-router
+ gizmo:
+ serviceName: aai-gizmo
+ modelloader:
+ serviceName: aai-modelloader
+ searchData:
+ serviceName: aai-search-data
+ traversal:
+ serviceName: aai-traversal
+
# application image
dockerhubRepository: registry.hub.docker.com
-image: aaionap/haproxy:1.1.0
+image: aaionap/haproxy:1.2.2
pullPolicy: Always
# flag to enable debugging - application support required
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: ONAP APPC Self Service Controller Design Tool
+name: appc-cdt
+version: 2.0.0
--- /dev/null
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/appc-cdt-image:1.3.0-SNAPSHOT-latest
+pullPolicy: Always
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: appc-cdt
+ externalPort: 80
+ internalPort: 80
+ nodePort: 89
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
# ============LICENSE_END=========================================================
###
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
-APPC_HOME=${APPC_HOME:-/opt/openecomp/appc}
+SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
+APPC_HOME=${APPC_HOME:-/opt/onap/appc}
MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
APPC_DB_USER=${APPC_DB_USER:-appcctl}
exit
fi
- echo "Installing Opendaylight cluster features"
- ${ODL_HOME}/bin/client -u karaf feature:install odl-mdsal-clustering
- ${ODL_HOME}/bin/client -u karaf feature:install odl-jolokia
-
echo "Update cluster information statically"
hm=$(hostname)
echo "Get current Hostname ${hm}"
}
ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
-ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-admin}
+SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
APPC_HOME=${APPC_HOME:-/opt/onap/appc}
SLEEP_TIME=${SLEEP_TIME:-120}
MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
+appcInstallStartTime=$(date +%s)
+
#
# Adding the DMAAP_TOPIC_ENV variable into APPC-ASDC-LISTENER properties
#
then
echo "Installing SDNC database"
${SDNC_HOME}/bin/installSdncDb.sh
+
echo "Installing APPC database"
${APPC_HOME}/bin/installAppcDb.sh
+
+ echo "Installing ODL Host Key"
+ ${SDNC_HOME}/bin/installOdlHostKey.sh
+
echo "Starting OpenDaylight"
${ODL_HOME}/bin/start
+
echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
sleep ${SLEEP_TIME}
- echo "Inserting modified installFeatures.sh for sdnc"
- rm ${SDNC_HOME}/bin/installFeatures.sh
- cp ${APPC_HOME}/data/sdncInstallFeatures.sh ${SDNC_HOME}/bin/installFeatures.sh
+
+ echo "Copying a working version of the logging configuration into the opendaylight etc folder"
+ cp ${APPC_HOME}/data/org.ops4j.pax.logging.cfg ${ODL_HOME}/etc/org.ops4j.pax.logging.cfg
+ echo "Copying a new version of aaf cadi shiro into the opendaylight deploy folder"
+ cp ${APPC_HOME}/data/aaf-shiro-aafrealm-osgi-bundle.jar ${ODL_HOME}/deploy/aaf-shiro-aafrealm-osgi-bundle.jar
+
echo "Installing SDNC platform features"
${SDNC_HOME}/bin/installFeatures.sh
+
if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
then
echo "Installing directed graphs"
${SDNC_HOME}/svclogic/bin/install.sh
fi
+ if $ENABLE_ODL_CLUSTER ; then echo "Installing Opendaylight cluster features" ; ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering ; ${ODL_HOME}/bin/client feature:install odl-jolokia ; fi
+
echo "Installing APPC platform features"
${APPC_HOME}/bin/installFeatures.sh
+
if [ -x ${APPC_HOME}/svclogic/bin/install.sh ]
then
echo "Installing APPC DGs using platform-logic"
if $ENABLE_ODL_CLUSTER ; then enable_odl_cluster ; fi
+ echo "Adding a property system.properties for AAF cadi.properties location"
+ echo "" >> ${ODL_HOME}/etc/system.properties
+ echo "cadi_prop_files=${APPC_HOME}/data/properties/cadi.properties" >> ${ODL_HOME}/etc/system.properties
+ echo "" >> ${ODL_HOME}/etc/system.properties
+
+ echo "Copying the aaa shiro configuration into opendaylight"
+ cp ${APPC_HOME}/data/aaa-app-config.xml ${ODL_HOME}/etc/opendaylight/datastore/initial/config/aaa-app-config.xml
+
+
echo "Restarting OpenDaylight"
${ODL_HOME}/bin/stop
+ checkRun () {
+ running=0
+ while read a b c d e f g h
+ do
+ if [ "$h" == "/bin/sh /opt/opendaylight/current/bin/karaf server" ]
+ then
+ running=1
+ fi
+ done < <(ps -eaf)
+ echo $running
+ }
+
+ while [ $( checkRun ) == 1 ]
+ do
+ echo "Karaf is still running, waiting..."
+ sleep 5s
+ done
+ echo "Karaf process has stopped"
+ sleep 10s
echo "Installed at `date`" > ${SDNC_HOME}/.installed
fi
+ appcInstallEndTime=$(date +%s)
+ echo "Total Appc install took $(expr $appcInstallEndTime - $appcInstallStartTime) seconds"
+
exec ${ODL_HOME}/bin/karaf
#
# Certificate keystore and truststore
#
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/openecomp/appc/data/stores/truststore.openecomp.client.jks
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/appc/data/stores/ONAPall.p12
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=changeit
+org.onap.ccsdk.sli.adaptors.aai.ssl.key=/opt/onap/appc/data/stores/ONAPall.p12
+org.onap.ccsdk.sli.adaptors.aai.ssl.key.psswd=changeit
org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true
org.onap.ccsdk.sli.adaptors.aai.client.name=AAI
#
# Configuration file for A&AI Client
#
-org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.{{.Release.Namespace}}:8443
-
+org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
# query
-org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query
-org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
-org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
+org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v13/search/sdn-zone-query
+org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v13/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
+org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v13/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
# named query
org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query
#update
-org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update
+org.onap.ccsdk.sli.adaptors.aai.update=/aai/v13/actions/update
# vce
-org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/
-org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/
+org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v13/network/vces/vce/
+org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v13/network/vces/
# vpe
-org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/
-org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/
+org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v13/network/vpes/vpe/
+org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v13/network/vpes/
# customer
-org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id}
+org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v13/business/customers/customer/{customer-id}
# service subscription
-org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
+org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v13/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
# service instance
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
-org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v13/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v13/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
+org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v13/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
# complex
-org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes
-org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
+org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v13/cloud-infrastructure/complexes
+org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v13/cloud-infrastructure/complexes/complex/{physical-location-id}
# tenant
-org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
-org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
+org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
+org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
# vservers
-org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
-org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
+org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
+org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
# vpls-pe
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/
+org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v13/network/vpls-pes/
+org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v13/network/vpls-pes/vpls-pe/
# ctag-pool
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
+org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v13/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
+org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v13/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
#
#-------------- 1510 ----------------------
#
# pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
+org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v13/cloud-infrastructure/pservers
+org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}
# generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v13/network/generic-vnfs
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}
# dvs-switch
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
+org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
+org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
# L3 Networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id}
-org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name}
+org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v13/network/l3-networks
+org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v13/network/l3-networks/l3-network/{network-id}
+org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v13/network/l3-networks/l3-network?network-name={network-name}
# P-Interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
# Physical Link
-org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links
-org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name}
+org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v13/network/physical-links
+org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v13/network/physical-links/physical-link/{link-name}
# VPN Bindings
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
+org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v13/network/vpn-bindings/
+org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v13/network/vpn-bindings/vpn-binding/{vpn-id}
# VNF IMAGES
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v13/service-design-and-creation/vnf-images
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v13/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v13/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
# UBB Notify
-org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
+org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v13/actions/notify
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
# Service
-org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
-org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services
+org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v13/service-design-and-creation/services/service/{service-id}
+org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v13/service-design-and-creation/services
#
#
# VNFC
-org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name}
+org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v13/network/vnfcs/vnfc/{vnfc-name}
# class-of-service
-org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
+org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
# site-pair
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
+org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
# routing-instance
-org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
# site-pair-set
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
+org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}
# license key resource
-org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v13/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v13/license-management/license-key-resources/license-key-resource/{att-uuid}
# logical-link
-org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name}
+org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v13/network/logical-links/logical-link/{link-name}
# virtual-data-center
-org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
+org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v13/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
# wan-connector
-org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v13/business/connectors/connector/{resource-instance-id}
# l-interface
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
# l-interface pnf
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v13/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v13/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
# subinterface
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v13/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v13/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
# vlans
-org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
# l3-interface-ipv4-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
# l3-interface-ipv6-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
# ipsec-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
+org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v13/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
# vig server
-org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
+org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v13/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
# l3-network
-org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id}
+org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v13/network/l3-networks/l3-network/{network-id}
# subnet
-org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
+org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v13/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
# multicast-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
+org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v13/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
# volume.group
-org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
+org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
#cloud region
-org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
+org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
# vf-module
-org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
+org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
# l-interface through generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
# network-policy
-org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id}
+org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v13/network/network-policies/network-policy/{network-policy-id}
# pnf
-org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v13/network/pnfs/pnf/{pnf-name}
#
# Formatting
### ###
### Properties for demo ###
### ###
-appc.demo.poolMembers=dmaap.{{.Release.Namespace}}:3904
+appc.demo.poolMembers=message-router.{{.Release.Namespace}}:3904
appc.demo.topic.read=APPC-CL
appc.demo.topic.write=APPC-CL
appc.demo.client.name=appcDemoEventListener
appc.demo.threads.poolsize.min=1
appc.demo.threads.poolsize.max=2
appc.demo.provider.user=admin
-appc.demo.provider.pass=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+appc.demo.provider.pass=admin
appc.demo.provider.url=http://localhost:8181/restconf/operations/appc-provider
-appc.provider.vfodl.url=http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@appc-sdnhost.{{.Release.Namespace}}:8282/restconf/config/network-topology:network-topology/topology/topology-netconf/node/NODE_NAME/yang-ext:mount/sample-plugin:sample-plugin/pg-streams/
+appc.provider.vfodl.url=http://admin:admin@appc-sdnhost.{{.Release.Namespace}}:8282/restconf/config/network-topology:network-topology/topology/topology-netconf/node/NODE_NAME/yang-ext:mount/sample-plugin:sample-plugin/pg-streams/
# The properties right below are needed to properly call the Master DG to serve demo purposes
appc.service.logic.module.name=APPC
appc.topology.dg.version=2.0.0
# TEMP - Properties that might be needed to make the AAI-APPC connection
-org.openecomp.appc.db.url.appcctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/appcctl
-org.openecomp.appc.db.user.appcctl=appcctl
-org.openecomp.appc.db.pass.appcctl=appcctl
+org.onap.appc.db.url.appcctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/appcctl
+org.onap.appc.db.user.appcctl=appcctl
+org.onap.appc.db.pass.appcctl=appcctl
-org.openecomp.appc.db.url.sdnctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
-org.openecomp.appc.db.user.sdnctl=sdnctl
-org.openecomp.appc.db.pass.sdnctl=gamma
+org.onap.appc.db.url.sdnctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.appc.db.user.sdnctl=sdnctl
+org.onap.appc.db.pass.sdnctl=gamma
### ###
### OpenStack credentials (these properties also are used in appc-rest-adapter-bundle, appc-chef-adapter-bundle, appc-iaas-adapter-bundle) ###
### ###
-provider1.type=OpenStackProvider
-provider1.name=OpenStack
-provider1.identity=http://localhost:8181/apidoc/explorer/index.html
-provider1.tenant1.name=default
-provider1.tenant1.domain=default
-provider1.tenant1.userid=admin
-provider1.tenant1.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-
-
-
-
+provider1.type={{.Values.config.openStackType}}
+provider1.name={{.Values.config.openStackName}}
+provider1.identity={{.Values.config.openStackKeyStoneUrl}}
+provider1.tenant1.name={{.Values.config.openStackServiceTenantName}}
+provider1.tenant1.domain={{.Values.config.openStackDomain}}
+provider1.tenant1.userid={{.Values.config.openStackUserName}}
+provider1.tenant1.password={{.Values.config.openStackEncryptedPassword}}
### ###
### Properties that are not covered or being replaced from default.properties files. Default value for DMaaP IP is 10.0.11.1:3904 ###
# Property below is valid in appc-command-executor-core, appc-license-manager-core, appc-lifecycle-management-core,
# appc-request-handler-core, appc-workflow-management-core (all from the appc-dispatcher package).
-dmaap.poolMembers=dmaap.{{.Release.Namespace}}:3904
+dmaap.poolMembers=message-router.{{.Release.Namespace}}:3904
# appc-event-listener-bundle properties (only defined in src/test of default.properties)
-appc.LCM.poolMembers=dmaap.{{.Release.Namespace}}:3904
+appc.LCM.poolMembers=message-router.{{.Release.Namespace}}:3904
appc.LCM.topic.read=APPC-LCM-READ
appc.LCM.topic.write=APPC-LCM-WRITE
appc.LCM.client.name=APPC-EVENT-LISTENER-TEST
appc.LCM.provider.user=admin
-appc.LCM.provider.pass=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+appc.LCM.provider.pass=admin
appc.LCM.provider.url=http://localhost:8181/restconf/operations/appc-provider-lcm
+appc.LCM.scopeOverlap.endpoint=http://localhost:8181/restconf/operations/interfaces-service:execute-service
# properties from appc-netconf-adapter-bundle, appc-dg-common, appc-dmaap-adapter-bundle
-poolMembers=dmaap.{{.Release.Namespace}}:3904
-event.pool.members=dmaap.{{.Release.Namespace}}:3904
+poolMembers=message-router.{{.Release.Namespace}}:3904
+event.pool.members=message-router.{{.Release.Namespace}}:3904
restconf.user=admin
-restconf.pass=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+restconf.pass=admin
# properties found in appc-rest-adapter-bundle, appc-chef-adapter-bundle, appc-iaas-adapter-bundle)
# Port 8774 below is default port for OpenStack's Nova API Service
test.url=http://api.appc.local/vm/9999999/test/99999999-9999-9999-9999-999999999999
#skips hypervisor check which usually occurs during iaas-adapter-bundle startup
-org.openecomp.appc.iaas.skiphypervisorcheck=true
+org.onap.appc.iaas.skiphypervisorcheck=true
# Properties from default.properties in the src/test and src/main paths of appc-asdc-listener-bundle
appc.sdc.host=sdc-be.{{.Release.Namespace}}:8443
DCAE.dmaap.event.topic.write=EventSenderTest
DCAE.dmaap.appc.username=test
DCAE.dmaap.appc.password=test
-DCAE.dmaap.event.pool.members=dmaap.{{.Release.Namespace}}:3904
+DCAE.dmaap.event.pool.members=message-router.{{.Release.Namespace}}:3904
#OAM Listener
appc.OAM.disabled=true
appc.OAM.provider.url=http://localhost:8181/restconf/operations/appc-oam
-appc.OAM.poolMembers=dmaap.{{.Release.Namespace}}:3904
+appc.OAM.poolMembers=message-router.{{.Release.Namespace}}:3904
appc.OAM.service=ueb
appc.OAM.topic.read=testOAM
appc.OAM.topic.write=testOAM
appc.OAM.client.name=testOAM
appc.OAM.provider.user=admin
-appc.OAM.provider.pass=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+appc.OAM.provider.pass=admin
--- /dev/null
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+
+SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
+SDNC_DB_PASSWD=${SDNC_DB_PASSWD:-gamma}
+SDNC_DB_DATABASE=${SDN_DB_DATABASE:-sdnctl}
+
+
+# Create tablespace and user account
+mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} mysql <<-END
+CREATE DATABASE ${SDNC_DB_DATABASE};
+CREATE USER '${SDNC_DB_USER}'@'localhost' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+CREATE USER '${SDNC_DB_USER}'@'%' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'localhost' WITH GRANT OPTION;
+GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'%' WITH GRANT OPTION;
+commit;
+END
+
+if [ -f ${SDNC_HOME}/data/odlsli.dump ]
+then
+mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/odlsli.dump
+fi
+
--- /dev/null
+###
+# ============LICENSE_START=======================================================
+# APPC
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+#
+# Configuration file for A&AI Client
+#
+
+#
+# Certificate keystore and truststore
+#
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/openecomp/appc/data/stores/truststore.openecomp.client.jks
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin
+org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true
+
+org.onap.ccsdk.sli.adaptors.aai.client.name=AAI
+org.onap.ccsdk.sli.adaptors.aai.client.psswd=AAI
+
+org.onap.ccsdk.sli.adaptors.aai.application=openECOMP
+#connection.timeout=1000
+#read.timeout=2000
+
+#
+# Configuration file for A&AI Client
+#
+org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
+
+
+# query
+org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query
+org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
+org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
+
+# named query
+org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query
+
+
+#update
+org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update
+
+# vce
+org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/
+org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/
+
+# vpe
+org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/
+org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/
+
+# customer
+org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id}
+
+# service subscription
+org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
+
+# service instance
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
+org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
+
+# complex
+org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes
+org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
+
+# tenant
+org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
+org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
+
+# vservers
+org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
+org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
+
+# vpls-pe
+org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/
+org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/
+
+# ctag-pool
+org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
+org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
+
+#
+#-------------- 1510 ----------------------
+#
+
+# pservers
+org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers
+org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
+
+# generic-vnf
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
+
+# dvs-switch
+org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
+org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
+
+# L3 Networks
+org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks
+org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id}
+org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name}
+
+# P-Interfaces
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
+
+# Physical Link
+org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links
+org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name}
+
+# VPN Bindings
+org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/
+org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
+
+# VNF IMAGES
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
+
+# UBB Notify
+org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
+
+# Service
+org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
+org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services
+
+
+#
+#-------------- 1604 ----------------------
+#
+
+# VNFC
+org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name}
+
+# class-of-service
+org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
+
+# site-pair
+org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
+
+# routing-instance
+org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
+
+# site-pair-set
+org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
+
+# license key resource
+org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid}
+
+# logical-link
+org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name}
+
+# virtual-data-center
+org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
+
+# wan-connector
+org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id}
+
+# l-interface
+org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+
+# l-interface pnf
+org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+
+# subinterface
+org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+
+# vlans
+org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+
+# l3-interface-ipv4-address-list
+org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+
+# l3-interface-ipv6-address-list
+org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+
+# ipsec-configuration
+org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
+
+# vig server
+org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
+
+# l3-network
+org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id}
+
+# subnet
+org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
+
+# multicast-configuration
+org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
+
+# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+
+# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+
+# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+
+# volume.group
+org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
+
+#cloud region
+org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
+
+# vf-module
+org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
+
+# l-interface through generic-vnf
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
+
+# network-policy
+org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id}
+
+# pnf
+org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
+
+#
+# Formatting
+#
+org.onap.ccsdk.sli.adaptors.aai.param.format=filter=%s:%s
+org.onap.ccsdk.sli.adaptors.aai.param.vnf_type=vnf-type
+org.onap.ccsdk.sli.adaptors.aai.param.physical.location.id=physical-location-id
+org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type
+++ /dev/null
-#!/bin/bash
-
-###
-# ============LICENSE_START=======================================================
-# openECOMP : SDN-C
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights
-# reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=========================================================
-###
-
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
-
-SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
-SDNC_DB_PASSWD=${SDNC_DB_PASSWD:-gamma}
-SDNC_DB_DATABASE=${SDN_DB_DATABASE:-sdnctl}
-
-
-# Create tablespace and user account
-mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} mysql <<-END
-CREATE DATABASE ${SDNC_DB_DATABASE};
-CREATE USER '${SDNC_DB_USER}'@'localhost' IDENTIFIED BY '${SDNC_DB_PASSWD}';
-CREATE USER '${SDNC_DB_USER}'@'%' IDENTIFIED BY '${SDNC_DB_PASSWD}';
-GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'localhost' WITH GRANT OPTION;
-GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'%' WITH GRANT OPTION;
-commit;
-END
-
-if [ -f ${SDNC_HOME}/data/odlsli.dump ]
-then
-mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/odlsli.dump
-fi
-
+++ /dev/null
-###
-# ============LICENSE_START=======================================================
-# APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=========================================================
-###
-
-#
-# Configuration file for A&AI Client
-#
-
-#
-# Certificate keystore and truststore
-#
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/openecomp/appc/data/stores/truststore.openecomp.client.jks
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin
-org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true
-
-org.onap.ccsdk.sli.adaptors.aai.client.name=AAI
-org.onap.ccsdk.sli.adaptors.aai.client.psswd=AAI
-
-org.onap.ccsdk.sli.adaptors.aai.application=openECOMP
-#connection.timeout=1000
-#read.timeout=2000
-
-#
-# Configuration file for A&AI Client
-#
-org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.{{.Release.Namespace}}:8443
-
-
-# query
-org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query
-org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
-org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
-
-# named query
-org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query
-
-
-#update
-org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update
-
-# vce
-org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/
-org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/
-
-# vpe
-org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/
-org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/
-
-# customer
-org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id}
-
-# service subscription
-org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
-
-# service instance
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
-org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
-
-# complex
-org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes
-org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
-
-# tenant
-org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
-org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
-
-# vservers
-org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
-org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
-
-# vpls-pe
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/
-
-# ctag-pool
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
-
-#
-#-------------- 1510 ----------------------
-#
-
-# pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
-
-# generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
-
-# dvs-switch
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
-
-# L3 Networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id}
-org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name}
-
-# P-Interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
-
-# Physical Link
-org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links
-org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name}
-
-# VPN Bindings
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
-
-# VNF IMAGES
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
-
-# UBB Notify
-org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
-
-# Service
-org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
-org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services
-
-
-#
-#-------------- 1604 ----------------------
-#
-
-# VNFC
-org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name}
-
-# class-of-service
-org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
-
-# site-pair
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
-
-# routing-instance
-org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
-
-# site-pair-set
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
-
-# license key resource
-org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid}
-
-# logical-link
-org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name}
-
-# virtual-data-center
-org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
-
-# wan-connector
-org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id}
-
-# l-interface
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# l-interface pnf
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# subinterface
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# vlans
-org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-
-# l3-interface-ipv4-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# l3-interface-ipv6-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-
-# ipsec-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
-
-# vig server
-org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
-
-# l3-network
-org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id}
-
-# subnet
-org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
-
-# multicast-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-
-# volume.group
-org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
-
-#cloud region
-org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
-
-# vf-module
-org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
-
-# l-interface through generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
-
-# network-policy
-org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id}
-
-# pnf
-org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
-
-#
-# Formatting
-#
-org.onap.ccsdk.sli.adaptors.aai.param.format=filter=%s:%s
-org.onap.ccsdk.sli.adaptors.aai.param.vnf_type=vnf-type
-org.onap.ccsdk.sli.adaptors.aai.param.physical.location.id=physical-location-id
-org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type
name: {{ include "common.fullname" . }}-onap-sdnc-bin
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/bin/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/bin/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
name: {{ include "common.fullname" . }}-onap-sdnc-data-properties
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/data/properties/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/data/properties/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
name: {{ include "common.fullname" . }}-onap-sdnc-svclogic-bin
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/svclogic/bin/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/svclogic/bin/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
name: {{ include "common.fullname" . }}-onap-sdnc-svclogic-config
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/svclogic/config/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/svclogic/config/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{ $pvNum := default 1 .Values.replicaCount | int }}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data0
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+{{ if gt $pvNum 1 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data1
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
+{{ end }}
+{{ if gt $pvNum 2 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data2
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}2
+{{ end }}
+{{ if gt $pvNum 3 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data3
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}3
+{{ end }}
+{{ if gt $pvNum 4 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data4
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}4
+{{ end }}
+{{- end -}}
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: "{{ .Values.service.name }}-8282"
+ name: "{{ .Values.service.portName }}-8282"
- port: {{ .Values.service.externalPort2 }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: "{{ .Values.service.name }}-1830"
+ name: "{{ .Values.service.portName }}-1830"
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}-8282
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}-1830
{{- end}}
selector:
app: {{ include "common.name" . }}
apiVersion: v1
kind: Service
metadata:
- name: {{ .Values.service.name }}-cluster
+ name: {{ include "common.servicename" . }}-cluster
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
spec:
ports:
- - name: "{{ .Values.service.name }}-cluster-port"
+ - name: "{{ .Values.service.portName }}-cluster-port"
port: {{ .Values.service.clusterPort }}
clusterIP: None
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
initContainers:
- command:
- /root/ready.py
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command:
- /opt/appc/bin/startODL.sh
- mountPath: /opt/onap/appc/bin/installAppcDb.sh
name: onap-appc-bin
subPath: installAppcDb.sh
- - mountPath: /opt/onap/sdnc/data/properties/dblib.properties
+ - mountPath: /opt/onap/ccsdk/data/properties/dblib.properties
name: onap-sdnc-data-properties
subPath: dblib.properties
- - mountPath: /opt/onap/sdnc/data/properties/svclogic.properties
+ - mountPath: /opt/onap/ccsdk/data/properties/svclogic.properties
name: onap-sdnc-data-properties
subPath: svclogic.properties
- - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties
+ - mountPath: /opt/onap/ccsdk/data/properties/aaiclient.properties
name: onap-sdnc-data-properties
subPath: aaiclient.properties
- - mountPath: /opt/onap/sdnc/svclogic/config/svclogic.properties
+ - mountPath: /opt/onap/ccsdk/svclogic/config/svclogic.properties
name: onap-sdnc-svclogic-config
subPath: svclogic.properties
- - mountPath: /opt/onap/sdnc/svclogic/bin/showActiveGraphs.sh
+ - mountPath: /opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh
name: onap-sdnc-svclogic-bin
subPath: showActiveGraphs.sh
- - mountPath: /opt/onap/sdnc/bin/startODL.sh
+ - mountPath: /opt/onap/ccsdk/bin/startODL.sh
name: onap-sdnc-bin
subPath: startODL.sh
- - mountPath: /opt/onap/sdnc/bin/installSdncDb.sh
+ - mountPath: /opt/onap/ccsdk/bin/installSdncDb.sh
name: onap-sdnc-bin
subPath: installSdncDb.sh
+ - mountPath: {{ .Values.persistence.mdsalPath }}
+ name: {{ include "common.fullname" . }}-data
- mountPath: /var/log/onap
name: logs
- mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
configMap:
name: {{ include "common.fullname" . }}-onap-sdnc-bin
defaultMode: 0755
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
+{{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ emptyDir: {}
+{{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-data
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{ end }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
-# If mountPath is over NFS (e.g. /dockerdata-nfs is NFS mounted between the nodes), uncomment following lines.
-# persistence:
-# mountPath: /dockerdata
+ persistence:
+ mountPath: /dockerdata-nfs
#################################################################
# Application configuration defaults.
dmaapTopic: SUCCESS
logstashServiceName: log-ls
logstashPort: 5044
+ openStackType: OpenStackProvider
+ openStackName: OpenStack
+ openStackKeyStoneUrl: http://localhost:8181/apidoc/explorer/index.html
+ openStackServiceTenantName: default
+ openStackDomain: default
+ openStackUserName: admin
+ openStackEncryptedPassword: admin
mysql:
nameOverride: appc-db
dgbuilder:
nameOverride: appc-dgbuilder
- dbPodName: appc-db
- dbServiceName: appc-dbhost
+ config:
+ dbPodName: appc-db
+ dbServiceName: appc-dbhost
+ service:
+ name: appc-dgbuilder
# default number of instances
-replicaCount: 3
+replicaCount: 1
nodeSelector: {}
service:
type: NodePort
name: appc
+ portName: appc
#targetPort
internalPort: 8181
#port
nodePort2: 31
clusterPort: 2550
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: appc/mdsal
+ mdsalPath: /opt/opendaylight/current/daexim
+
ingress:
enabled: false
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+description: ONAP Clamp Dashboard Elasticsearch
+name: clamp-dash-es
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+# ======================== Elasticsearch Configuration =========================
+#
+# NOTE: Elasticsearch comes with reasonable defaults for most settings.
+# Before you set out to tweak and tune the configuration, make sure you
+# understand what are you trying to accomplish and the consequences.
+#
+# The primary way of configuring a node is via this file. This template lists
+# the most important settings you may want to configure for a production cluster.
+#
+# Please consult the documentation for further information on configuration options:
+# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
+#
+# ---------------------------------- Cluster -----------------------------------
+#
+# Name of the Elasticsearch cluster.
+# A node can only join a cluster when it shares its cluster.name with all the other nodes in the cluster.
+# The default name is elasticsearch, but you should change it to an appropriate name which describes the
+# purpose of the cluster.
+#
+cluster.name: "clamp-dashboard"
+#
+# The port that other nodes in the cluster should use when communicating with this node.
+# Required for Elasticsearch's nodes running on different cluster nodes.
+# More : https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-transport.html
+#transport.publish_port:$transport.publish_port
+#
+# The host address to publish for nodes in the cluster to connect to.
+# Required for Elasticsearch's nodes running on different cluster nodes.
+# More : https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-transport.html
+#transport.publish_host:$transport.publish_host
+#
+# ------------------------------------ Node ------------------------------------
+#
+# It is better to provide different meaningfull names fot different elastic nodes.
+# By default, Elasticsearch will take the 7 first character of the randomly generated uuid used as the node id.
+# Note that the node id is persisted and does not change when a node restarts
+#
+#node.name: $node.name
+#
+# Add custom attributes to the node:
+#
+#node.attr.rack: r1
+#
+# ----------------------------------- Paths ------------------------------------
+#
+# The location of the data files of each index / shard allocated on the node. Can hold multiple locations separated by coma.
+# In production, we should not keep this default to "/elasticsearch/data", as on upgrading Elasticsearch, directory structure
+# may change & can deal to data loss.
+path.data: /usr/share/elasticsearch/data
+#
+# Elasticsearch's log files location. In production, we should not keep this default to "/elasticsearch/logs",
+# as on upgrading Elasticsearch, directory structure may change.
+path.logs: /usr/share/elasticsearch/logs
+#
+# ----------------------------------- Memory -----------------------------------
+#
+# It is vitally important to the health of your node that none of the JVM is ever swapped out to disk.
+# Lock the memory on startup.
+#
+bootstrap.memory_lock: false
+#
+# Make sure that the heap size is set to about half the memory available
+# on the system and that the owner of the process is allowed to use this
+# limit.
+#
+# Elasticsearch performs poorly when the system is swapping the memory.
+#
+# ---------------------------------- Network -----------------------------------
+#
+# Set the bind address to a specific IP (IPv4 or IPv6):
+# In order to communicate and to form a cluster with nodes on other servers, your node will need to bind to a
+# non-loopback address.
+network.host: 0.0.0.0
+#
+# Set a custom port for HTTP: If required, default is 9200-9300
+#
+#http.port: $http.port
+#
+# For more information, consult the network module documentation.
+#
+# --------------------------------- Discovery ----------------------------------
+#
+# Pass an initial list of hosts to perform discovery when new node is started
+# To form a cluster with nodes on other servers, you have to provide a seed list of other nodes in the cluster
+# that are likely to be live and contactable.
+# By default, Elasticsearch will bind to the available loopback addresses and will scan ports 9300 to 9305 to try
+# to connect to other nodes running on the same server.
+#
+#$discovery.zen.ping.unicast.hosts
+#
+# This setting tells Elasticsearch to not elect a master unless there are enough master-eligible nodes
+# available. Only then will an election take place.
+# Prevent the "split brain" by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
+discovery.zen.minimum_master_nodes: 1
+#
+# For more information, consult the zen discovery module documentation.
+#
+# ---------------------------------- Gateway -----------------------------------
+#
+# Block initial recovery after a full cluster restart until N nodes are started:
+#
+#gateway.recover_after_nodes: 3
+#
+# For more information, consult the gateway module documentation.
+#
+# ---------------------------------- Various -----------------------------------
+#
+# Require explicit names when deleting indices:
+#
+#action.destructive_requires_name: true
+# Set a custom port for HTTP: If required, default is 9200-9300
+# This is used for REST APIs
+http.port: {{.Values.service.externalPort}}
+# Port to bind for communication between nodes. Accepts a single value or a range.
+# If a range is specified, the node will bind to the first available port in the range.
+# Defaults to 9300-9400.
+# More info:
+transport.tcp.port: {{.Values.service.externalPort2}}
+
+xpack.graph.enabled: false
+#Set to false to disable X-Pack graph features.
+
+xpack.ml.enabled: false
+#Set to false to disable X-Pack machine learning features.
+
+xpack.monitoring.enabled: false
+#Set to false to disable X-Pack monitoring features.
+
+xpack.security.enabled: false
+#Set to false to disable X-Pack security features.
+
+xpack.watcher.enabled: false
+#Set to false to disable Watcher.
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /bin/sh
+ - -c
+ - |
+ sysctl -w vm.max_map_count=262144
+ mkdir -p /usr/share/elasticsearch/logs
+ mkdir -p /usr/share/elasticsearch/data
+ chmod -R 777 /usr/share/elasticsearch
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ securityContext:
+ privileged: true
+ image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.busyboxImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: init-sysctl
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /usr/share/elasticsearch/logs/
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /usr/share/elasticsearch/data/
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ include "common.servicename" . }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ include "common.servicename" . }}2
+# disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort2 }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/share/elasticsearch/config/elasticsearch.yml
+ name: {{ include "common.fullname" . }}-config
+ subPath: elasticsearch.yml
+ - mountPath: /usr/share/elasticsearch/data/
+ name: {{ include "common.fullname" . }}-data
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: elasticsearch.yml
+ path: elasticsearch.yml
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPathLogs }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.config.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.config.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}-tcp
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.config.portName2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.config.portName2 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+# application image
+loggingRepository: docker.elastic.co
+image: elasticsearch/elasticsearch:5.6.9
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ accessMode: ReadWriteMany
+ size: 4Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: clamp/dashboard-elasticsearch/data
+ mountSubPathLogs: clamp
+
+service:
+ type: ClusterIP
+ name: cdash-es
+ portName: cdash-es-rest
+ externalPort: 9200
+ internalPort: 9200
+ type2: ClusterIP
+ portName2: cdash-es-tcp
+ externalPort2: 9300
+ internalPort2: 9300
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+description: ONAP Clamp Dashboard Kibana
+name: clamp-dash-kibana
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+{"_index":".kibana","_type":"visualization","_id":"AWI967sW8kHy-lwNJZrR","_score":1,"_source":{"title":"CL Total Activity","visState":"{\"title\":\"CL Total Activity\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"sum\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"index-pattern","_id":"AWIk7j2UDjJ4k3sPXRaY","_score":1,"_source":{"title":"logstash-*","timeFieldName":"closedLoopAlarmStart","notExpandable":true,"fields":"[{\"name\":\"@timestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"@version\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"@version.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.cloud-region.identity-url\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.cloud-region.identity-url.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.complex.physical-location-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.complex.physical-location-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.generic-vnf.service-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.generic-vnf.service-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.generic-vnf.vnf-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.generic-vnf.vnf-name.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.tenant.tenant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.tenant.tenant-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.is-closed-loop-disabled\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.is-closed-loop-disabled.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.prov-status\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.prov-status.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.vserver-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.vserver-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.vserver-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.vserver-name.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.vserver-selflink\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.vserver-selflink.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"OPS_CL_timer\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"_id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_index\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_score\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_source\",\"type\":\"_source\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"closedLoopAlarmEnd\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopAlarmStart\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopControlName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"closedLoopControlName.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopEventClient\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"closedLoopEventClient.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopEventStatus\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"closedLoopEventStatus.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"from\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"from.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.actor\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.actor.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.end\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.message\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.message.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.operation\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.operation.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.outcome\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.outcome.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.start\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.subRequestId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.subRequestId.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.target\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.target.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"notification\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"notification.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"notificationTime\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"policyName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"policyName.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"policyScope\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"policyScope.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"policyVersion\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"policyVersion.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"requestID\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"requestID.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"target\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"target.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"target_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"target_type.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"version\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"version.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"eventDuration\",\"type\":\"number\",\"count\":0,\"scripted\":true,\"script\":\"if (doc.containsKey('closedLoopEventStatus') && doc.get('closedLoopEventStatus.keyword').value == 'ABATED') { \\n return doc.get('closedLoopAlarmEnd').value- doc.get('closedLoopAlarmStart').value; \\n} \\nreturn null\",\"lang\":\"painless\",\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false}]","fieldFormatMap":"{\"eventDuration\":{\"id\":\"duration\",\"params\":{\"inputFormat\":\"milliseconds\"}}}"}}
+{"_index":".kibana","_type":"visualization","_id":"AWIk-5O-DjJ4k3sPXRd1","_score":1,"_source":{"title":"ClosedLoopActivationsTable","visState":"{\"title\":\"ClosedLoopActivationsTable\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":true,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk8yDIDjJ4k3sPXRbu","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWIk9P-qDjJ4k3sPXRcQ","_score":1,"_source":{"title":"ABATED","description":"","columns":["closedLoopAlarmStart","closedLoopAlarmEnd","closedLoopControlName","closedLoopEventStatus","notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"query_string\":{\"query\":\"closedLoopEventStatus: \\\"ABATED\\\"\",\"analyze_wildcard\":true}},\"filter\":[{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":false,\"alias\":\"ABATED\",\"type\":\"phrase\",\"key\":\"closedLoopEventStatus.keyword\",\"value\":\"ABATED\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ABATED\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}},{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":true,\"alias\":\"ONSET\",\"type\":\"phrase\",\"key\":\"closedLoopEventStatus.keyword\",\"value\":\"ONSET\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ONSET\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}}]}"}}}
+{"_index":".kibana","_type":"config","_id":"5.6.7","_score":1,"_source":{"buildNum":15610,"defaultIndex":"AWIk7j2UDjJ4k3sPXRaY"}}
+{"_index":".kibana","_type":"visualization","_id":"AWIlBLT7DjJ4k3sPXRe7","_score":1,"_source":{"title":"Closed loop failed action : needs attention","visState":"{\"title\":\"Closed loop failed action : needs attention\",\"type\":\"table\",\"params\":{\"perPage\":5,\"showMeticsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIlAjTaDjJ4k3sPXRe1","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWI91Rvl8kHy-lwNJZrN","_score":1,"_source":{"title":"CL efficiency - CL reponse time","visState":"{\"title\":\"CL efficiency - CL reponse time\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJxqD67B2zw2CQxMIeq","_score":1,"_source":{"title":"Top Error Messages","visState":"{\"title\":\"Top Error Messages\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"history.actor.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Actor\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"history.message.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Message\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"history.operation.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Operation\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"query\":{\"match_all\":{}},\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWI922pp8kHy-lwNJZrP","_score":1,"_source":{"title":"CLEventDurationTables","visState":"{\"title\":\"CLEventDurationTables\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\",\"customLabel\":\"Event Duration\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\",\"row\":true}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"requestID.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWIk_VLEDjJ4k3sPXReS","_score":1,"_source":{"title":"Top 5 closed loop success action","visState":"{\"title\":\"Top 5 closed loop success action\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":true,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJoFDTyr1AwiIiFoV5R","_score":1,"_source":{"title":"Hottest closed loops","visState":"{\"title\":\"Hottest closed loops\",\"type\":\"pie\",\"params\":{\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"isDonut\":false,\"type\":\"pie\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"legendOpen\":true}}","description":"","savedSearchId":"AWIk8yDIDjJ4k3sPXRbu","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWJsTEvYr1AwiIiFoV6S","_score":1,"_source":{"title":"FINAL: FAILURE","description":"","columns":["notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"match_all\":{}},\"filter\":[{\"meta\":{\"negate\":false,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"type\":\"phrase\",\"key\":\"notification\",\"value\":\"FINAL: FAILURE\",\"disabled\":false,\"alias\":null},\"query\":{\"match\":{\"notification\":{\"query\":\"FINAL: FAILURE\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}}]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJsT-HUr1AwiIiFoV6T","_score":1,"_source":{"title":"CL Efficiency - Failed actions","visState":"{\"title\":\"CL Efficiency - Failed actions\",\"type\":\"gauge\",\"params\":{\"addLegend\":true,\"addTooltip\":true,\"gauge\":{\"backStyle\":\"Full\",\"colorSchema\":\"Green to Red\",\"colorsRange\":[{\"from\":0,\"to\":4},{\"from\":4,\"to\":6},{\"from\":7,\"to\":10}],\"extendRange\":false,\"gaugeColorMode\":\"Labels\",\"gaugeStyle\":\"Full\",\"gaugeType\":\"Arc\",\"invertColors\":false,\"labels\":{\"color\":\"black\",\"show\":true},\"orientation\":\"vertical\",\"percentageMode\":false,\"scale\":{\"color\":\"#333\",\"labels\":false,\"show\":true},\"style\":{\"bgColor\":false,\"bgFill\":\"#eee\",\"bgMask\":false,\"bgWidth\":0.9,\"fontSize\":60,\"labelColor\":true,\"mask\":false,\"maskBars\":50,\"subText\":\"\",\"width\":0.9},\"type\":\"meter\",\"verticalSplit\":true},\"isDisplayWarning\":true,\"type\":\"gauge\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"defaultColors\":{\"0 - 4\":\"rgb(0,104,55)\",\"4 - 6\":\"rgb(255,255,190)\",\"7 - 10\":\"rgb(165,0,38)\"}}}","description":"","savedSearchId":"AWJsTEvYr1AwiIiFoV6S","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJoJdIjr1AwiIiFoV5T","_score":1,"_source":{"title":"CL Onset/Abated Variance","visState":"{\"title\":\"CL Onset/Abated Variance\",\"type\":\"histogram\",\"params\":{\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"type\":\"category\",\"position\":\"left\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\"},\"labels\":{\"show\":true,\"rotate\":0,\"filter\":false,\"truncate\":200},\"title\":{\"text\":\"Closed Loop\"}}],\"valueAxes\":[{\"id\":\"ValueAxis-3\",\"name\":\"BottomAxis-1\",\"type\":\"value\",\"position\":\"bottom\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\",\"mode\":\"normal\"},\"labels\":{\"show\":true,\"rotate\":75,\"filter\":true,\"truncate\":100},\"title\":{\"text\":\"Count\"}}],\"seriesParams\":[{\"show\":true,\"type\":\"histogram\",\"mode\":\"normal\",\"data\":{\"label\":\"Count\",\"id\":\"1\"},\"valueAxis\":\"ValueAxis-3\",\"drawLinesBetweenPoints\":true,\"showCircles\":true}],\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"times\":[],\"addTimeMarker\":false,\"type\":\"horizontal_bar\",\"radiusRatio\":\"13\",\"orderBucketsBySum\":false},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\",\"customLabel\":\"Closed Loop\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"closedLoopEventStatus.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\"}}],\"listeners\":{}}","uiStateJSON":"{}","description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"query\":{\"match_all\":{}},\"filter\":[]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWIlAjTaDjJ4k3sPXRe1","_score":1,"_source":{"title":"FAILURE NOTIFICATION","description":"","columns":["closedLoopAlarmStart","closedLoopAlarmEnd","closedLoopControlName","closedLoopEventStatus","notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"match_all\":{}},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":\"ABATED\",\"disabled\":true,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"key\":\"closedLoopEventStatus.keyword\",\"negate\":false,\"type\":\"phrase\",\"value\":\"ABATED\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ABATED\",\"type\":\"phrase\"}}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":\"ONSET\",\"disabled\":true,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"key\":\"closedLoopEventStatus.keyword\",\"negate\":false,\"type\":\"phrase\",\"value\":\"ONSET\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ONSET\",\"type\":\"phrase\"}}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":\"FAILURE NOTIFICATION\",\"disabled\":false,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"key\":\"notification.keyword\",\"negate\":false,\"type\":\"phrase\",\"value\":\"FINAL: FAILURE\"},\"query\":{\"match\":{\"notification.keyword\":{\"query\":\"FINAL: FAILURE\",\"type\":\"phrase\"}}}}]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWIk8yDIDjJ4k3sPXRbu","_score":1,"_source":{"title":"ONSET","description":"","columns":["closedLoopAlarmStart","closedLoopAlarmEnd","closedLoopControlName","closedLoopEventStatus","notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"match_all\":{}},\"filter\":[{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":false,\"alias\":null,\"type\":\"phrase\",\"key\":\"closedLoopEventStatus.keyword\",\"value\":\"ONSET\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ONSET\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}}]}"}}}
+{"_index":".kibana","_type":"dashboard","_id":"AWI-9KyytmDBG_mksMZL","_score":1,"_source":{"title":"CLAMP Dashboard","description":"","panelsJSON":"[{\"col\":5,\"id\":\"AWIk_VLEDjJ4k3sPXReS\",\"panelIndex\":1,\"row\":1,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":9,\"id\":\"AWIlBLT7DjJ4k3sPXRe7\",\"panelIndex\":2,\"row\":1,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"AWI967sW8kHy-lwNJZrR\",\"panelIndex\":3,\"row\":7,\"size_x\":5,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"AWI91Rvl8kHy-lwNJZrN\",\"panelIndex\":4,\"row\":4,\"size_x\":5,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"AWJoFDTyr1AwiIiFoV5R\",\"panelIndex\":5,\"row\":1,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":9,\"id\":\"AWJoJdIjr1AwiIiFoV5T\",\"panelIndex\":6,\"row\":7,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":9,\"id\":\"AWJoMx0_r1AwiIiFoV5V\",\"panelIndex\":7,\"row\":4,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":6,\"id\":\"AWJsT-HUr1AwiIiFoV6T\",\"panelIndex\":8,\"row\":4,\"size_x\":3,\"size_y\":6,\"type\":\"visualization\"},{\"size_x\":6,\"size_y\":3,\"panelIndex\":9,\"type\":\"visualization\",\"id\":\"AWJxqD67B2zw2CQxMIeq\",\"col\":1,\"row\":10}]","optionsJSON":"{\"darkTheme\":false}","uiStateJSON":"{\"P-1\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-2\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-3\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-4\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-6\":{\"vis\":{\"legendOpen\":true}},\"P-8\":{\"vis\":{\"defaultColors\":{\"0 - 4\":\"rgb(0,104,55)\",\"4 - 6\":\"rgb(255,255,190)\",\"7 - 10\":\"rgb(165,0,38)\"},\"legendOpen\":false}},\"P-9\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}}","timeRestore":false,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[{\"query\":{\"match_all\":{}}}],\"highlightAll\":true,\"version\":true}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJoMx0_r1AwiIiFoV5V","_score":1,"_source":{"title":"CL Efficiency - Total Activity","visState":"{\"title\":\"CL Efficiency - Total Activity\",\"type\":\"line\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"show\":true,\"truncate\":100},\"position\":\"bottom\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"closedLoopAlarmStart per 10 seconds\"},\"type\":\"category\"}],\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"legendPosition\":\"right\",\"seriesParams\":[{\"data\":{\"id\":\"1\",\"label\":\"Sum of eventDuration\"},\"drawLinesBetweenPoints\":true,\"interpolate\":\"cardinal\",\"lineWidth\":2,\"mode\":\"normal\",\"show\":\"true\",\"showCircles\":true,\"type\":\"line\",\"valueAxis\":\"ValueAxis-1\"}],\"times\":[],\"type\":\"line\",\"valueAxes\":[{\"id\":\"ValueAxis-1\",\"labels\":{\"filter\":false,\"rotate\":0,\"show\":true,\"truncate\":100},\"name\":\"LeftAxis-1\",\"position\":\"left\",\"scale\":{\"defaultYExtents\":true,\"mode\":\"normal\",\"setYExtents\":false,\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"Sum of eventDuration\"},\"type\":\"value\"}]},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"sum\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"closedLoopAlarmStart\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":0,\"extended_bounds\":{}}}],\"listeners\":{}}","uiStateJSON":"{}","description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"query\":{\"match_all\":{}},\"filter\":[{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":false,\"alias\":null,\"type\":\"exists\",\"key\":\"closedLoopAlarmEnd\",\"value\":\"exists\"},\"exists\":{\"field\":\"closedLoopAlarmEnd\"},\"$state\":{\"store\":\"appState\"}}]}"}}}
--- /dev/null
+xpack.graph.enabled: false
+#Set to false to disable X-Pack graph features.
+xpack.ml.enabled: false
+#Set to false to disable X-Pack machine learning features.
+xpack.monitoring.enabled: false
+#Set to false to disable X-Pack monitoring features.
+xpack.reporting.enabled: false
+#Set to false to disable X-Pack reporting features.
+xpack.security.enabled: false
+#Set to false to disable X-Pack security features.
+xpack.watcher.enabled: false
+#Set to false to disable Watcher.
+# Kibana is served by a back end server. This setting specifies the port to use.
+server.port: {{.Values.service.externalPort}}
+
+# Specifies the address to which the Kibana server will bind. IP addresses and host names are both valid values.
+# The default is 'localhost', which usually means remote machines will not be able to connect.
+# To allow connections from remote users, set this parameter to a non-loopback address.
+server.host: "0.0.0.0"
+
+# Enables you to specify a path to mount Kibana at if you are running behind a proxy. This only affects
+# the URLs generated by Kibana, your proxy is expected to remove the basePath value before forwarding requests
+# to Kibana. This setting cannot end in a slash.
+#server.basePath: ""
+
+# The maximum payload size in bytes for incoming server requests.
+#server.maxPayloadBytes: 1048576
+
+# The Kibana server's name. This is used for display purposes.
+server.name: "Clamp Dashboard"
+
+# The URL of the Elasticsearch instance to use for all your queries.
+elasticsearch.url: "http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}"
+# When this setting's value is true Kibana uses the hostname specified in the server.host
+# setting. When the value of this setting is false, Kibana uses the hostname of the host
+# that connects to this Kibana instance.
+#elasticsearch.preserveHost: true
+
+# Kibana uses an index in Elasticsearch to store saved searches, visualizations and
+# dashboards. Kibana creates a new index if the index doesn't already exist.
+#kibana.index: ".kibana"
+
+# The default application to load.
+#kibana.defaultAppId: "discover"
+
+# If your Elasticsearch is protected with basic authentication, these settings provide
+# the username and password that the Kibana server uses to perform maintenance on the Kibana
+# index at startup. Your Kibana users still need to authenticate with Elasticsearch, which
+# is proxied through the Kibana server.
+#elasticsearch.username: "elastic"
+#elasticsearch.password: "changeme"
+# Enables SSL and paths to the PEM-format SSL certificate and SSL key files, respectively.
+# These settings enable SSL for outgoing requests from the Kibana server to the browser.
+#server.ssl.enabled: $server_ssl_enabled
+#server.ssl.certificate: $server_ssl_certificate
+#server.ssl.key: $server_ssl_key
+
+# Optional settings that provide the paths to the PEM-format SSL certificate and key files.
+# These files validate that your Elasticsearch backend uses the same key files.
+#elasticsearch.ssl.certificate: $elasticsearch_ssl_certificate
+#elasticsearch.ssl.key: $elasticsearch_ssl_key
+
+# Optional setting that enables you to specify a path to the PEM file for the certificate
+# authority for your Elasticsearch instance.
+#elasticsearch.ssl.certificateAuthorities: $elasticsearch_ssl_certificateAuthorities
+
+# To disregard the validity of SSL certificates, change this setting's value to 'none'.
+#elasticsearch.ssl.verificationMode: $elasticsearch_ssl_verificationMode
+
+# Time in milliseconds to wait for Elasticsearch to respond to pings. Defaults to the value of
+# the elasticsearch.requestTimeout setting.
+#elasticsearch.pingTimeout: 1500
+
+# Time in milliseconds to wait for responses from the back end or Elasticsearch. This value
+# must be a positive integer.
+#elasticsearch.requestTimeout: 30000
+
+# List of Kibana client-side headers to send to Elasticsearch. To send *no* client-side
+# headers, set this value to [] (an empty list).
+#elasticsearch.requestHeadersWhitelist: [ authorization ]
+
+# Header names and values that are sent to Elasticsearch. Any custom headers cannot be overwritten
+# by client-side headers, regardless of the elasticsearch.requestHeadersWhitelist configuration.
+#elasticsearch.customHeaders: {}
+
+# Time in milliseconds for Elasticsearch to wait for responses from shards. Set to 0 to disable.
+#elasticsearch.shardTimeout: 0
+
+# Time in milliseconds to wait for Elasticsearch at Kibana startup before retrying.
+#elasticsearch.startupTimeout: 5000
+
+# Specifies the path where Kibana creates the process ID file.
+#pid.file: /var/run/kibana.pid
+
+# Enables you specify a file where Kibana stores log output.
+#logging.dest: stdout
+
+# Set the value of this setting to true to suppress all logging output.
+#logging.silent: false
+
+# Set the value of this setting to true to suppress all logging output other than error messages.
+#logging.quiet: false
+
+# Set the value of this setting to true to log all events, including system usage information
+# and all requests.
+#logging.verbose: false
+
+# Set the interval in milliseconds to sample system and process performance
+# metrics. Minimum is 100ms. Defaults to 5000.
+#ops.interval: 5000
+
+# The default locale. This locale can be used in certain circumstances to substitute any missing
+# translations.
+#i18n.defaultLocale: "en"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - clamp-dash-es
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ - args:
+ - --output=http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}/.kibana
+ - --input=/config/default.json
+ - --type=data
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.configRepository }}/{{ .Values.configImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-config
+ volumeMounts:
+ - mountPath: /config/default.json
+ name: {{ include "common.fullname" . }}
+ subPath: default.json
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ include "common.servicename" . }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+# disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/share/kibana/config/kibana.yml
+ name: {{ include "common.fullname" . }}
+ subPath: kibana.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: kibana.yml
+ path: kibana.yml
+ - key: default.json
+ path: default.json
+
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.config.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.config.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# Configuration image
+configRepository: docker.io
+configImage: taskrabbit/elasticsearch-dump
+
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+# application image
+loggingRepository: docker.elastic.co
+image: kibana/kibana:5.6.9
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ elasticsearchServiceName: cdash-es
+ elasticsearchPort: 9200
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 360
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: cdash-kibana
+ portName: cdash-kibana-http
+ externalPort: 5601
+ internalPort: 5601
+ nodePort: 90
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+description: ONAP Clamp Dashboard Logstash
+name: clamp-dash-logstash
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+http.host: "0.0.0.0"
+## Path where pipeline configurations reside
+path.config: /usr/share/logstash/pipeline
+
+## Type of queue : memeory based or file based
+#queue.type: persisted
+## Size of queue
+#queue.max_bytes: 1024mb
+## Setting true makes logstash check periodically for change in pipeline configurations
+config.reload.automatic: true
+
+## xpack configurations
+#xpack.monitoring.elasticsearch.url: ["http://10.247.186.12:9200", "http://10.247.186.13:9200"]
+#xpack.monitoring.elasticsearch.username: elastic
+#xpack.monitoring.elasticsearch.password: changeme
+xpack.monitoring.enabled: false
--- /dev/null
+input {
+ http_poller {
+ urls => {
+ event_queue => {
+ method => get
+ url => "${dmaap_base_url}/events/${event_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
+ headers => {
+ Accept => "application/json"
+ }
+ add_field => { "topic" => "${event_topic}" }
+ }
+ notification_queue => {
+ method => get
+ url => "${dmaap_base_url}/events/${notification_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
+ headers => {
+ Accept => "application/json"
+ }
+ add_field => { "topic" => "${notification_topic}" }
+ }
+ request_queue => {
+ method => get
+ url => "${dmaap_base_url}/events/${request_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
+ headers => {
+ Accept => "application/json"
+ }
+ add_field => { "topic" => "${request_topic}" }
+ }
+ }
+ socket_timeout => 30
+ request_timeout => 30
+ interval => 60
+ codec => "plain"
+ }
+}
+
+filter {
+ # avoid noise if no entry in the list
+ if [message] == "[]" {
+ drop { }
+ }
+
+ # parse json, split the list into multiple events, and parse each event
+ json {
+ source => "[message]"
+ target => "message"
+ }
+ split {
+ field => "message"
+ }
+ json {
+ source => "message"
+ }
+ mutate { remove_field => [ "message" ] }
+ # express timestamps in milliseconds instead of microseconds
+ ruby {
+ code => "event.set('closedLoopAlarmStart', Integer(event.get('closedLoopAlarmStart')))"
+ }
+ date {
+ match => [ "closedLoopAlarmStart", UNIX_MS ]
+ target => "closedLoopAlarmStart"
+ }
+
+ if [closedLoopAlarmEnd] {
+ ruby {
+ code => "event.set('closedLoopAlarmEnd', Integer(event.get('closedLoopAlarmEnd')))"
+ }
+ date {
+ match => [ "closedLoopAlarmEnd", UNIX_MS ]
+ target => "closedLoopAlarmEnd"
+ }
+
+ }
+ #"yyyy-MM-dd HH:mm:ss"
+ if [notificationTime] {
+ mutate {
+ gsub => [
+ "notificationTime", " ", "T"
+ ]
+ }
+ date {
+ match => [ "notificationTime", ISO8601 ]
+ target => "notificationTime"
+ }
+ }
+}
+output {
+ stdout {
+ codec => rubydebug
+ }
+
+ if [http_request_failure] {
+ elasticsearch {
+ codec => "json"
+ hosts => ["${elasticsearch_base_url}"]
+ index => "errors-%{+YYYY.MM.DD}"
+ doc_as_upsert => true
+ }
+ } else {
+ elasticsearch {
+ codec => "json"
+ hosts => ["${elasticsearch_base_url}"]
+ index => "logstash-%{+YYYY.MM.DD}" # creates daily indexes
+ doc_as_upsert => true
+
+ }
+ }
+
+}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - clamp-dash-es
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.loggingRepository| default .Values.loggingRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: dmaap_consumer_group
+ value: "{{ .Values.config.dmaapConsumerGroup }}"
+ - name: dmaap_consumer_id
+ value: "{{ .Values.config.dmaapConsumerId }}"
+ - name: event_topic
+ value: "{{ .Values.config.eventTopic }}"
+ - name: notification_topic
+ value: "{{ .Values.config.notificationTopic }}"
+ - name: request_topic
+ value: "{{ .Values.config.requestTopic }}"
+ - name: dmaap_base_url
+ value: {{ .Values.config.dmaapScheme }}://{{ .Values.config.dmaapHost }}.{{ include "common.namespace" . }}:{{ .Values.config.dmaapPort }}
+ - name: elasticsearch_base_url
+ value: "http://{{.Values.config.elasticsearchServiceName}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.config.elasticsearchPort}}"
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ include "common.servicename" . }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+# disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/share/logstash/config/logstash.yml
+ name: {{ include "common.fullname" . }}
+ subPath: logstash.yml
+ - mountPath: /usr/share/logstash/pipeline/logstash.conf
+ name: {{ include "common.fullname" . }}
+ subPath: pipeline.conf
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: logstash.yml
+ path: logstash.yml
+ - key: pipeline.conf
+ path: pipeline.conf
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.config.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.config.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+loggingRepository: docker.elastic.co
+image: logstash/logstash:5.6.9
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ elasticsearchServiceName: cdash-es
+ elasticsearchPort: 9200
+ dmaapHost: message-router.{{ include "common.namespace" . }}
+ dmaapScheme: https
+ dmaapPort: 3905
+ dmaapConsumerGroup: "clampdashboard"
+ dmaapConsumerId: "clampdashboard"
+ eventTopic: "DCAE-CL-EVENT"
+ notificationTopic: "POLICY-CL-MGT"
+ requestTopic: "APPC-CL"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 120
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: ClusterIP
+ name: cdash-ls
+ portName: cdash-ls-healthcheck
+ externalPort: 9600
+ internalPort: 9600
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
+/* Copyright © 2017 AT&T, Amdocs, Bell Canada
+*
+* 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.
+*/
+
#
# Create CLDS database objects (tables, etc.)
#
+/* Copyright © 2017 AT&T, Amdocs, Bell Canada
+*
+* 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.
+*/
+
#
# CLDS stored procedures
#
+/* Copyright © 2017 AT&T, Amdocs, Bell Canada
+*
+* 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.
+*/
+
#
# Drop CLDS database objects (tables, etc.)
#
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
spec:
containers:
- name: {{ include "common.name" . }}
- image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
{{- end}}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
\ No newline at end of file
+ release: {{ .Release.Name }}
#################################################################
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
service:
type: ClusterIP
- name: mariadb
+ name: clampdb
+ portName: clampdb
internalPort: 3306
externalPort: 3306
--- /dev/null
+{
+ "sdc-connections":{
+ "sdc-controller":{
+ "user": "clamp",
+ "consumerGroup": "clamp",
+ "consumerId": "clamp",
+ "environmentName": "AUTO",
+ "sdcAddress": "sdc-be.{{ include "common.namespace" . }}:8443",
+ "password": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
+ "pollingInterval":30,
+ "pollingTimeout":30,
+ "activateServerTLSAuth":"false",
+ "keyStorePassword":"",
+ "keyStorePath":"",
+ "messageBusAddresses":["message-router.{{ include "common.namespace" . }}"]
+ }
+ }
+}
export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
{{- else if contains "ClusterIP" .Values.service.type }}
- export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
{{- end }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
- spring_application_json: {{ .Values.config.springApplicationJson | quote }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+ spring_application_json: {{ tpl .Values.config.springApplicationJson . | quote }}
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /opt/clamp/sdc-controllers-config.json
+ name: {{ include "common.fullname" . }}-config
+ subPath: sdc-controllers-config.json
env:
- name: SPRING_APPLICATION_JSON
valueFrom:
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: sdc-controllers-config.json
+ path: sdc-controllers-config.json
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- end}}
selector:
app: {{ include "common.name" . }}
#################################################################
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
# application image
repository: nexus3.onap.org:10001
-image: onap/clamp
+image: onap/clamp:2.0-STAGING-latest
pullPolicy: Always
# flag to enable debugging - application support required
config:
mysqlPassword: strong_pitchou
dataRootDir: /dockerdata-nfs
- springApplicationJson: '{
- "spring.datasource.camunda.url": "jdbc:mariadb:sequential://clamp-mariadb.{{include "common.namespace" .}}:3306/camundabpm?verifyServerCertificate=false&useSSL=false&requireSSL=false&autoReconnect=true&retriesAllDown=2147483647&failoverLoopRetries=2147483647",
- "spring.datasource.cldsdb.url": "jdbc:mariadb:sequential://clamp-mariadb.{{include "common.namespace" .}}:3306/cldsdb4?verifyServerCertificate=false&useSSL=false&requireSSL=false&autoReconnect=true&retriesAllDown=2147483647&failoverLoopRetries=2147483647"
- }'
+ springApplicationJson: >
+ {
+ "spring.datasource.cldsdb.url": "jdbc:mariadb:sequential://clampdb.{{ include "common.namespace" . }}:3306/cldsdb4?autoReconnect=true&connectTimeout=10000&socketTimeout=10000&retriesAllDown=3",
+ "clamp.config.sdc.catalog.url": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/",
+ "clamp.config.sdc.hostUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/",
+ "clamp.config.sdc.serviceUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/services",
+ "clamp.config.sdc.serviceUsername": "clamp",
+ "clamp.config.sdc.servicePassword": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
+ "clamp.config.files.sdcController": "file:/opt/clamp/sdc-controllers-config.json",
+ "clamp.config.dcae.inventory.url": "http://dcaegen2.{{ include "common.namespace" . }}:8080",
+ "clamp.config.dcae.dispatcher.url": "http://dcaegen2.{{ include "common.namespace" . }}:8080",
+ "clamp.config.policy.pdpUrl1": "https://pdp.{{ include "common.namespace" . }}:9091/pdp/ , testpdp, alpha123",
+ "clamp.config.policy.pdpUrl2": "https://pdp.{{ include "common.namespace" . }}:9091/pdp/ , testpdp, alpha123",
+ "clamp.config.policy.papUrl": "https://pap.{{ include "common.namespace" . }}:8443/pap/ , testpap, alpha123",
+ "clamp.config.policy.clientKey": "5CE79532B3A2CB4D132FC0C04BF916A7"
+ }
# subchart configuration
mariadb:
# probe configuration parameters
liveness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 30
periodSeconds: 10
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
service:
type: NodePort
name: clamp
+ portName: clamp
internalPort: 8080
nodePort: 95
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Command Line Interface
name: cli
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableCliCli }}
-apiVersion: v1
-kind: Service
-metadata:
- name: cli
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: cli
-spec:
- ports:
- - name: 8080-port
- port: 8080
- targetPort: 80
- nodePort: {{ .Values.nodePortPrefix }}60
- - name: 9090-port
- port: 9090
- targetPort: 8080
- nodePort: {{ .Values.nodePortPrefix }}61
- type: NodePort
- selector:
- app: cli
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableCliCli }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: cli
- name: cli
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: cli
- template:
- metadata:
- labels:
- app: cli
- name: cli
- spec:
- containers:
- - image: {{ .Values.image.cliImage}}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "cli"
- env:
- - name: CLI_MODE
- value: daemon
- ports:
- - containerPort: 80
- - containerPort: 8080
- name: cli
- readinessProbe:
- tcpSocket:
- port: 80
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort1 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: OPEN_CLI_MODE
+ value: "{{ .Values.config.climode }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort1 }}
+ targetPort: {{ .Values.service.internalPort1 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort1 }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort1 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort1 }}
+ targetPort: {{ .Values.service.internalPort1 }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort1 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/cli:2.0-STAGING-latest
pullPolicy: Always
-nodePortPrefix: 302
-image:
- cliImage: nexus3.onap.org:10001/onap/cli:v1.1.0
+
+# application configuration
+config:
+ climode: daemon
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: cli
+ externalPort: 8080
+ externalPort1: 9090
+ internalPort: "80"
+ internalPort1: 8080
+ nodePort: "60"
+ nodePort1: "61"
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{/*
+ Resolve the name of the common image repository.
+ The value for .Values.repository is used by default,
+ unless either override mechanism is used.
+
+ - .Values.global.repository : override default image repository for all images
+ - .Values.repositoryOverride : override global and default image repository on a per image basis
+*/}}
+{{- define "common.repository" -}}
+ {{if .Values.repositoryOverride }}
+ {{- printf "%s" .Values.repositoryOverride -}}
+ {{else}}
+ {{- default .Values.repository .Values.global.repository -}}
+ {{end}}
+{{- end -}}
+
+
+{{/*
+ Resolve the image repository secret token.
+ The value for .Values.global.repositoryCred is used:
+ repositoryCred:
+ user: user
+ password: password
+ mail: email (optional)
+*/}}
+{{- define "common.repository.secret" -}}
+ {{- $repo := include "common.repository" . }}
+ {{- $cred := .Values.global.repositoryCred }}
+ {{- $mail := default "@" $cred.mail }}
+ {{- $auth := printf "%s:%s" $cred.user $cred.password | b64enc }}
+ {{- printf "{\"%s\":{\"username\":\"%s\",\"password\":\"%s\",\"email\":\"%s\",\"auth\":\"%s\"}}" $repo $cred.user $cred.password $mail $auth | b64enc -}}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{/*
+ Resolve the name of a chart's service.
+
+ The default will be the chart name (or .Values.nameOverride if set).
+ And the use of .Values.service.name overrides all.
+
+ - .Values.service.name : override default service (ie. chart) name
+*/}}
+{{/*
+ Expand the service name for a chart.
+*/}}
+{{- define "common.servicename" -}}
+ {{- $name := default .Chart.Name .Values.nameOverride -}}
+ {{- default $name .Values.service.name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
\ No newline at end of file
# image repositories
repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# readiness check
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# logging agent
loggingRepository: docker.elastic.co
org.onap.ccsdk.sli.dbtype=jdbc
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.dbServiceName}}.{{ include "common.namespace" . }}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.dbServiceName}}.{{ include "common.namespace" . }}:3306/sdnctl
org.onap.ccsdk.sli.jdbc.database=sdnctl
org.onap.ccsdk.sli.jdbc.user=sdnctl
org.onap.ccsdk.sli.jdbc.password=gamma
echo "Usage $0 releaseDir loginId emailAddress [gitLocalRepository]"
echo "Note: Specify the gitLocalRepository path if you would want to be able to import flows from your local git repository"
exit
-fi
+fi
if [ ! -e "releases" ]
then
mkdir releases
name="Release $releaseDir"
loginId="$2"
emailid="$3"
-dbHost="{{.Values.dbServiceName}}.{{.Release.Namespace}}"
+dbHost="{{.Values.config.dbServiceName}}.{{.Release.Namespace}}"
dbPort="3306"
dbName="sdnctl"
dbUser="sdnctl"
#echo "Created custom settings file $customSettingsFile"
echo "Done ....."
else
- echo "ERROR:customSettings file $customSettingsFile already exists for $releaseDir"
+ echo "ERROR:customSettings file $customSettingsFile already exists for $releaseDir"
exit
fi
#echo "Content of custom settings file"
svclogicPropFile="./conf/svclogic.properties"
if [ ! -d "${appDir}/yangFiles" ]
then
- mkdir -p "${appDir}/yangFiles"
+ mkdir -p "${appDir}/yangFiles"
fi
if [ ! -d "${appDir}/generatedJS" ]
then
- mkdir -p "${appDir}/generatedJS"
+ mkdir -p "${appDir}/generatedJS"
fi
if [ ! -e "./$svclogicPropFile" ]
then
echo "org.onap.ccsdk.sli.dbtype=jdbc" >$svclogicPropFile
- echo "org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.dbServiceName}}.{{.Release.Namespace}}:3306/sdnctl" >>$svclogicPropFile
+ echo "org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.dbServiceName}}.{{.Release.Namespace}}:3306/sdnctl" >>$svclogicPropFile
echo "org.onap.ccsdk.sli.jdbc.database=sdnctl" >>$svclogicPropFile
echo "org.onap.ccsdk.sli.jdbc.user=sdnctl" >>$svclogicPropFile
echo "org.onap.ccsdk.sli.jdbc.password=gamma" >>$svclogicPropFile
+/* Copyright © 2017 AT&T, Amdocs, Bell Canada
+*
+* 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.
+*/
+
module.exports={
"name": "Release sdnc1.0",
"emailAddress": "dguser@onap.org",
"user": "dguser",
"pass": "cc03e747a6afbbcbf8be7668acfebee5"
},
- "dbHost": "{{.Values.dbServiceName}}.{{ include "common.namespace" . }}",
+ "dbHost": "{{.Values.config.dbServiceName}}.{{ include "common.namespace" . }}",
"dbPort": "3306",
"dbName": "sdnctl",
"dbUser": "sdnctl",
- /root/ready.py
args:
- --container-name
- - {{ .Values.dbPodName }}
+ - {{ .Values.config.dbPodName }}
env:
- name: NAMESPACE
valueFrom:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- command:
- - /bin/bash
- - -c
- - cd /opt/onap/sdnc/dgbuilder/ && ./start.sh sdnc1.0 && wait
+ command: ["/bin/bash"]
+ args: ["-c", "cd /opt/onap/ccsdk/dgbuilder/ && ./start.sh sdnc1.0 && wait"]
ports:
- containerPort: {{ .Values.service.internalPort }}
readinessProbe:
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- end}}
selector:
app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
\ No newline at end of file
+ release: {{ .Release.Name }}
# image repositories
repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# readiness check
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
# logging agent
loggingRepository: docker.elastic.co
# flag to enable debugging - application support required
debugEnabled: true
-
+
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/ccsdk-dgbuilder-image:v0.1.0
+image: onap/ccsdk-dgbuilder-image:0.2-STAGING-latest
pullPolicy: Always
# flag to enable debugging - application support required
# application configuration
config:
dbRootPassword: openECOMP1.0
+ dbPodName: mysql-db
+ dbServiceName: sdnc-dbhost
+
# default number of instances
replicaCount: 1
service:
type: NodePort
name: dgbuilder
+ portName: dgbuilder
externalPort: 3000
internalPort: 3100
nodePort: 28
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: Chart for MariaDB Galera cluster
+name: mariadb-galera
+version: 2.0.0
+keywords:
+ - mariadb
+ - mysql
+ - database
+ - sql
+ - galera
+ - cluster
\ No newline at end of file
--- /dev/null
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: 'file://../common'
\ No newline at end of file
--- /dev/null
+MariaDB-Galera service can be accessed via port 3306 on the following DNS name from within your cluster:
+{{ include "common.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local
+
+To connect to your database:
+
+1. Run a pod that you can use as a client:
+
+ kubectl run {{ include "common.fullname" . }}-client --rm --tty -i --image mariadb --command -- bash
+
+2. Connect using the mysql cli, then provide your password:
+ $ mysql -h {{ include "common.fullname" . }} {{- if .Values.mysqlRootPassword }} -p {{ .Values.mysqlRootPassword }}{{- end -}}
+
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-confd
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
+---
+{{- if .Values.externalConfig }}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-externalConfig
+ namespace: {{ include "common.namespace" . }}
+data:
+ my_extra.cnf: |-
+{{ toYaml .Values.externalConfig | indent 4 }}
+{{- end -}}
\ No newline at end of file
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
+ user-password: {{ default "" .Values.config.userPassword | b64enc | quote }}
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: Service
+metadata:
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+spec:
+ ports:
+ - name: {{ .Values.service.portName }}
+ port: {{ .Values.service.internalPort }}
+ clusterIP: None
+ selector:
+ app: {{ include "common.fullname" . }}
--- /dev/null
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+spec:
+ serviceName: {{ include "common.fullname" . }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.fullname" . }}
+ annotations:
+ pod.alpha.kubernetes.io/initialized: "true"
+ spec:
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end }}
+ volumes:
+ {{- if .Values.externalConfig }}
+ - name: config
+ configMap:
+ name: {{ include "common.fullname" . }}-externalConfig
+ {{- end}}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: {{ include "common.namespace" . }}-docker-registry-key
+ containers:
+ - name: {{ include "common.fullname" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy | quote}}
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ - name: MYSQL_USER
+ value: {{ default "" .Values.config.userName | quote }}
+ - name: MYSQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: user-password
+ - name: MYSQL_DATABASE
+ value: {{ default "" .Values.config.mysqlDatabase | quote }}
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - containerPort: {{ .Values.service.sstPort }}
+ name: {{ .Values.service.sstName }}
+ - containerPort: {{ .Values.service.replicationPort }}
+ name: {{ .Values.service.replicationName }}
+ - containerPort: {{ .Values.service.istPort }}
+ name: {{ .Values.service.istName }}
+ readinessProbe:
+ exec:
+ command:
+ - /usr/share/container-scripts/mysql/readiness-probe.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command: ["mysqladmin", "ping"]
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{- end }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ volumeMounts:
+ {{- if .Values.externalConfig }}
+ - mountPath: /etc/config
+ name: config
+ {{- end}}
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+{{- if .Values.persistence.enabled }}
+ - mountPath: /var/lib/mysql
+ name: {{ include "common.fullname" . }}-data
+ subPath: data
+ initContainers:
+ - name: mariadb-galera-prepare
+ image: "{{ include "common.repository" . }}/{{ .Values.imageInit }}"
+ command: ["sh", "-c", "chown -R 27:27 /var/lib/mysql"]
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/mysql
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ annotations:
+ {{- if .Values.persistence.storageClass }}
+ volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass | quote }}
+ {{- else }}
+ volume.alpha.kubernetes.io/storage-class: default
+ {{- end }}
+ spec:
+ accessModes:
+ - {{ .Values.persistence.accessMode | quote }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size | quote }}
+{{- end }}
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+ repository: nexus3.onap.org:10001
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+#repository: mysql
+repository: nexus3.onap.org:10001
+image: adfinissygroup/k8s-mariadb-galera-centos:v002
+imageInit: busybox
+pullPolicy: IfNotPresent
+
+# application configuration
+config:
+ mariadbRootPassword: secretpassword
+ userName: my-user
+ userPassword: my-password
+ mysqlDatabase: my-database
+
+# default number of instances in the StatefulSet
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 15
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: false
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteOnce
+ size: 2Gi
+
+
+service:
+ internalPort: 3306
+ name: mariadb-galera
+ portName: mariadb-galera
+ sstPort: 4444
+ sstName: sst
+ replicationPort: 4567
+ replicationName: replication
+ istPort: 4568
+ istName: ist
+
+ingress:
+ enabled: false
+
+
+## Configure MariaDB-Galera with a custom my.cnf file
+## ref: https://mariadb.com/kb/en/mariadb/configuring-mariadb-with-mycnf/#example-of-configuration-file
+##
+externalConfig: {}
+# externalConfig: |-
+ # [mysqld]
+ # innodb_buffer_pool_size=2G
+
+#resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+resources:
+ limits:
+ cpu: 2
+ memory: 4Gi
+ requests:
+ cpu: 2
+ memory: 4Gi
+
+# Name for mariadb-galera cluster - should be unique accross all projects or other clusters
+nameOverride: mariadb-galera
+
+# DNS name for mariadb-galera cluster - should be unique accross all projects other clusters
+#dnsnameOverride: mariadb-galera
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
apiVersion: v1
description: MySQL Server
name: mysql
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
dependencies:
- name: common
version: ~2.0.0
- repository: '@local'
\ No newline at end of file
+ repository: '@local'
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
apiVersion: v1
kind: ConfigMap
metadata:
master.cnf: |
# Apply this config only on the master.
[mysqld]
+ sql_mode = "NO_ENGINE_SUBSTITUTION"
log-bin
[localpathprefix]
master
slave.cnf: |
# Apply this config only on slaves.
[mysqld]
+ sql_mode = "NO_ENGINE_SUBSTITUTION"
super-read-only
[localpathprefix]
slave
-#{{ if not .Values.disableNfsProvisioner }}
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{ if not .Values.disableNfsProvisioner }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
volumes:
- name: export-volume
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
-#{{ end }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{ end }}
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if (and (and (.Values.persistence.enabled) (not .Values.persistence.existingClaim)) ( .Values.disableNfsProvisioner)) -}}
+{{ $pvNum := default 1 .Values.replicaCount | int }}
kind: PersistentVolume
apiVersion: v1
metadata:
- name: {{ include "common.fullname" . }}-data
+ name: {{ include "common.fullname" . }}-mysql0
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
storage: {{ .Values.persistence.size}}
accessModes:
- {{ .Values.persistence.accessMode }}
- storageClassName: "{{ include "common.fullname" . }}-data"
+ storageClassName: "{{ include "common.fullname" . }}-mysql"
persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+{{ if gt $pvNum 1 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mysql1
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-mysql"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
+{{ end }}
{{- end -}}
+++ /dev/null
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: {{ include "common.fullname" . }}-data
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.fullname" . }}
- chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
- release: "{{ .Release.Name }}"
- heritage: "{{ .Release.Service }}"
-{{- if .Values.persistence.annotations }}
- annotations:
-{{ toYaml .Values.persistence.annotations | indent 4 }}
-{{- end }}
-spec:
- accessModes:
- - {{ .Values.persistence.accessMode }}
- resources:
- requests:
- storage: {{ .Values.persistence.size }}
- storageClassName: "{{ include "common.fullname" . }}-data"
-{{- end -}}
\ No newline at end of file
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
apiVersion: v1
kind: Secret
metadata:
heritage: {{ .Release.Service }}
type: Opaque
data:
- db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
\ No newline at end of file
+ db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
apiVersion: v1
kind: Service
metadata:
- name: {{ .Values.service.name }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
apiVersion: v1
kind: Service
metadata:
- name: {{ .Values.service.name }}-read
+ name: {{ include "common.servicename" . }}-read
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
clusterIP: None
+---
+{{ if .Values.geoEnabled }}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}-nodeport
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+spec:
+ ports:
+ - name: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort1 }}
+ - name: {{ .Values.xtrabackup.internalPort }}
+ port: {{ .Values.xtrabackup.internalPort }}
+ targetPort: {{ .Values.xtrabackup.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort2 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+ release: {{ .Release.Name }}
+{{ end }}
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
apiVersion: apps/v1beta1
kind: StatefulSet
metadata:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
#{{ end }}
- name: init-mysql
- image: "{{ .Values.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ .Values.dockerHubRepository }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command:
- bash
# Generate mysql server-id from pod ordinal index.
[[ `hostname` =~ -([0-9]+)$ ]] || exit 1
ordinal=${BASH_REMATCH[1]}
+ siteId={{ .Values.geoSiteId }}
echo BASH_REMATCH=${BASH_REMATCH}
echo [mysqld] > /mnt/conf.d/server-id.cnf
# Add an offset to avoid reserved server-id=0 value.
- echo server-id=$((100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
+ echo server-id=$(($siteId*100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
# Copy appropriate conf.d files from config-map to emptyDir.
if [[ $ordinal -eq 0 ]]; then
cp /mnt/config-map/master.cnf /mnt/conf.d/
echo ${BASH_REMATCH}
[[ $ordinal -eq 0 ]] && exit 0
# Clone data from previous peer.
- ncat --recv-only {{ template "common.name" . }}-$(($ordinal-1)).{{ .Values.service.name }}.{{ include "common.namespace" . }} 3307 | xbstream -x -C /var/lib/mysql
+ ncat --recv-only {{ include "common.fullname" . }}-$(($ordinal-1)).{{ .Values.service.name }}.{{ include "common.namespace" . }} 3307 | xbstream -x -C {{ .Values.persistence.mysqlPath }}
# Prepare the backup.
xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --prepare --target-dir=/var/lib/mysql
- ls -l /var/lib/mysql
+ ls -l {{ .Values.persistence.mysqlPath }}
volumeMounts:
- - name: {{ include "common.fullname" . }}-data
- mountPath: /var/lib/mysql
- subPath: mysql
+ - name: {{ include "common.fullname" . }}-mysql
+ mountPath: {{ .Values.persistence.mysqlPath }}
- name: conf
mountPath: /etc/mysql/conf.d
-
+
containers:
- #sdnc-db-container
- name: {{ include "common.name" . }}
- image: "{{ .Values.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ .Values.dockerHubRepository }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
- name: MYSQL_ALLOW_EMPTY_PASSWORD
value: {{ .Values.config.dbAllowEmptyPassword | default "0" | quote }}
volumeMounts:
- - mountPath: /var/lib/mysql
- name: {{ include "common.fullname" . }}-data
- subPath: mysql
+ - mountPath: {{ .Values.persistence.mysqlPath }}
+ name: {{ include "common.fullname" . }}-mysql
- mountPath: /etc/mysql/conf.d
name: conf
resources:
- "-c"
- |
set -ex
- cd /var/lib/mysql
+ cd {{ .Values.persistence.mysqlPath }}
ls -l
# Determine binlog position of cloned data, if any.
if [[ -f xtrabackup_slave_info ]]; then
MASTER_LOG_POS=${BASH_REMATCH[2]}" > change_master_to.sql.in
fi
+ [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
+ ordinal=${BASH_REMATCH[1]}
+ echo $ordinal
+
+ mysqlhost={{ include "common.fullname" . }}-$(($ordinal)).{{ .Values.service.name }}.{{ include "common.namespace" . }}
+ echo $mysqlhost
+
# Check if we need to complete a clone by starting replication.
if [[ -f change_master_to.sql.in ]]; then
echo "Waiting for mysqld to be ready (accepting connections)"
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo $ordinal
- until mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h localhost -e "SELECT 1"; do sleep 1; done
+ until mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h $mysqlhost -e "SELECT 1"; do sleep 1; done
echo "Initializing replication from clone position"
# In case of container restart, attempt this at-most-once.
mv change_master_to.sql.in change_master_to.sql.orig
- mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h localhost <<EOF
+ mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h $mysqlhost <<EOF
$(<change_master_to.sql.orig),
- MASTER_HOST="{{ template "common.name" . }}-0.{{ .Values.service.name }}.{{ include "common.namespace" . }}",
+ MASTER_HOST="{{ include "common.fullname" . }}-0.{{ .Values.service.name }}.{{ include "common.namespace" . }}",
MASTER_USER="root",
MASTER_PASSWORD="$MYSQL_ROOT_PASSWORD",
MASTER_CONNECT_RETRY=10;
# Start a server to send backups when requested by peers.
exec ncat --listen --keep-open --send-only --max-conns=1 3307 -c \
- "xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --backup --slave-info --stream=xbstream --host=localhost"
+ "xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --backup --slave-info --stream=xbstream --host=$mysqlhost"
volumeMounts:
- - name: {{ include "common.fullname" . }}-data
- mountPath: /var/lib/mysql
- subPath: mysql
+ - name: {{ include "common.fullname" . }}-mysql
+ mountPath: {{ .Values.persistence.mysqlPath }}
- name: conf
mountPath: /etc/mysql/conf.d
volumes:
- name: localtime
hostPath:
path: /etc/localtime
- - name: {{ include "common.fullname" . }}-data
-#{{ if not .Values.disableNfsProvisioner }}
+ - name: {{ include "common.fullname" . }}-mysql
+ {{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-mysql
+ emptyDir: {}
+ {{ else }}
volumeClaimTemplates:
- metadata:
- name: {{ include "common.fullname" . }}-data
- annotations:
- volume.beta.kubernetes.io/storage-class: "{{ include "common.fullname" . }}-data"
+ name: {{ include "common.fullname" . }}-mysql
+ labels:
+ name: {{ include "common.fullname" . }}
spec:
- accessModes: ["ReadWriteMany"]
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-mysql
resources:
requests:
- storage: 1Gi
-#{{ else if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}-data
-#{{ else }}
- emptyDir: {}
-#{{ end }}
+ storage: {{ .Values.persistence.size }}
+ {{ end }}
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{ if not .Values.disableNfsProvisioner }}
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
- name: "{{ include "common.fullname" . }}-data"
+ name: "{{ include "common.fullname" . }}-mysql"
namespace: {{ include "common.namespace" . }}
provisioner: {{ include "common.fullname" . }}/nfs
+{{ end }}
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
#################################################################
# Global configuration defaults.
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
-#repository: mysql
-repository: registry.hub.docker.com
+dockerHubRepository: registry.hub.docker.com
image: library/mysql:5.7
pullPolicy: Always
affinity: {}
+disableNfsProvisioner: true
+
# probe configuration parameters
liveness:
initialDelaySeconds: 30
## Persist data to a persitent volume
persistence:
- enabled: false
+ enabled: true
## A manually managed Persistent Volume and Claim
## Requires persistence.enabled: true
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
- accessMode: ReadWriteMany
+ accessMode: ReadWriteOnce
size: 1Gi
mountPath: /dockerdata-nfs
- mountSubPath: mysql/data
+ mountSubPath: "mysql/data"
+ mysqlPath: /var/lib/mysql
service:
name: mysql
+ portName: mysql
internalPort: 3306
# nfs provisioner ports
nfsPort: 2049
nfsprovisionerPrefix: mysql
sdnctlPrefix: mysql
+
+geoEnabled: false
+geoSiteId: 1
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Postgres Server
+name: postgres
+version: 2.0.0
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data0
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data1
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ pg-primary-password: {{ .Values.config.pgPrimaryPassword | b64enc | quote }}
+ pg-user-password: {{ .Values.config.pgUserPassword | b64enc | quote }}
+ pg-root-password: {{ .Values.config.pgRootPassword | b64enc | quote }}
+
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type2 }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- end}}
+ selector:
+ name: "{{.Values.container.name.primary}}"
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name3 }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type3 }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.name3 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.name3 }}
+ {{- end}}
+ selector:
+ name: "{{.Values.container.name.replica}}"
+ release: {{ .Release.Name }}
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ .Values.service.name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /bin/sh
+ - -c
+ - |
+ for i in $(seq 0 $(({{ .Values.replicaCount }}-1))); do mkdir -p /podroot/data$i; done
+ chmod 777 /podroot/*
+ env:
+ - name: POD_NAME
+ valueFrom: { fieldRef: { fieldPath: metadata.name } }
+ securityContext:
+ privileged: true
+ image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.busyboxImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: init-sysctl
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-init
+ mountPath: /podroot/
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.postgresRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: postgres
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: PGHOST
+ value: /tmp
+ - name: PG_PRIMARY_USER
+ value: primaryuser
+ - name: PG_MODE
+ value: set
+ - name: PG_PRIMARY_HOST
+ value: "{{.Values.container.name.primary}}"
+ - name: PG_REPLICA_HOST
+ value: "{{.Values.container.name.replica}}"
+ - name: PG_PRIMARY_PORT
+ value: "{{.Values.service.internalPort}}"
+ - name: PG_PRIMARY_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-primary-password
+ - name: PG_USER
+ value: "{{.Values.config.pgUserName}}"
+ - name: PG_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-user-password
+ - name: PG_DATABASE
+ value: "{{.Values.config.pgDatabase}}"
+ - name: PG_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-root-password
+ volumeMounts:
+ - mountPath: /pgdata
+ name: {{ include "common.fullname" . }}-data
+ - mountPath: /backup
+ name: {{ include "common.fullname" . }}-backup
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-init
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountInitPath }}
+ - name: {{ include "common.fullname" . }}-backup
+ emptyDir: {}
+#{{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ emptyDir: {}
+#{{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-data
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+#{{ end }}
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+postgresRepository: crunchydata
+image: crunchy-postgres:centos7-10.3-1.8.2
+pullPolicy: Always
+
+# application configuration
+config:
+ pgUserName: testuser
+ pgDatabase: userdb
+ pgPrimaryPassword: password
+ pgUserPassword: password
+ pgRootPassword: password
+
+container:
+ name:
+ primary: pgset-primary
+ replica: pgset-replica
+
+# default number of instances
+replicaCount: 2
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 5
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: postgres/data
+ mountInitPath: postgres
+
+service:
+ type: ClusterIP
+ name: pgset
+ externalPort: 5432
+ internalPort: 5432
+ type2: ClusterIP
+ name2: pgset-primary
+ externalPort2: 5432
+ internalPort2: 5432
+ type3: ClusterIP
+ name3: pgset-replica
+ externalPort3: 5432
+ internalPort3: 5432
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
+
+++ /dev/null
-localhost.endpoint=http://localhost:9999
-localhost.user=console
-localhost.password=MDBmMzE0NTgyMDU1NmVj
-localhost.timeout=3600000
-#localhost.debug=true
-
+++ /dev/null
-#log4j.debug=0
-log4j.rootLogger=warn, file
-log4j.logger.org.openecomp.ncomp=info, file
-log4j.additivity.org.openecomp.ncomp=false
-
-
-#log4j.logger.org.apache.http.headers=debug, file
-#log4j.logger.org.apache.http.wire=debug, file
-
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=logs/manager.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.file.MaxFileSize=50MB
-log4j.appender.file.MaxBackupIndex=5
-
-log4j.appender.uploaded=org.apache.log4j.RollingFileAppender
-log4j.appender.uploaded.File=logs/manager-uploaded.log
-log4j.appender.uploaded.layout=org.apache.log4j.PatternLayout
-log4j.appender.uploaded.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.uploaded.MaxFileSize=50MB
-log4j.appender.uploaded.MaxBackupIndex=5
-
-### ECOMP Logging
-log4j.logger.org.openecomp.audit=info, audit
-log4j.additivity.org.openecomp.audit=false
-log4j.logger.org.openecomp.metrics=info, metrics
-log4j.additivity.org.openecomp.metrics=false
-log4j.logger.org.openecomp.error=info, error
-log4j.additivity.org.openecomp.error=false
-log4j.logger.com.att.eelf.debug=info, debug
-log4j.additivity.org.openecomp.debug=false
-log4j.appender.audit=org.apache.log4j.RollingFileAppender
-log4j.appender.audit.File=logs/audit.log
-log4j.appender.audit.layout=org.apache.log4j.PatternLayout
-log4j.appender.audit.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%5p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.audit.MaxFileSize=50MB
-log4j.appender.audit.MaxBackupIndex=5
-log4j.appender.metrics=org.apache.log4j.RollingFileAppender
-log4j.appender.metrics.File=logs/metrics.log
-log4j.appender.metrics.layout=org.apache.log4j.PatternLayout
-log4j.appender.metrics.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.metrics.MaxFileSize=50MB
-log4j.appender.metrics.MaxBackupIndex=5
-log4j.appender.error=org.apache.log4j.RollingFileAppender
-log4j.appender.error.File=logs/error.log
-log4j.appender.error.layout=org.apache.log4j.PatternLayout
-log4j.appender.error.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.error.MaxFileSize=50MB
-log4j.appender.error.MaxBackupIndex=5
-log4j.appender.debug=org.apache.log4j.RollingFileAppender
-log4j.appender.debug.File=logs/debug.log
-log4j.appender.debug.layout=org.apache.log4j.PatternLayout
-log4j.appender.debug.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.debug.MaxFileSize=50MB
-log4j.appender.debug.MaxBackupIndex=5
-
-
+++ /dev/null
-JVMARGS=-Djavax.net.ssl.trustStore=config/docker-mra-certs.jks
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 9999
-server.user.console = MDBmMzE0NTgyMDU1NmVj
-server.user.gui = ZDAxYzIzMGQ5NWRhZjVi
-server.user.client = OTY4NTk3ODI4ZWI2MjM0
+++ /dev/null
-# DMaaP Bus Controller OpenSource environment vars
-CONT_DOMAIN=dcae.simpledemo.openecomp.org
-DMAAPBC_INSTANCE_NAME=privatecloud
-
-# The https port
-# set to 0 if certificate is not ready
-DMAAPBC_INT_HTTPS_PORT=0
-
-DMAAPBC_KSTOREFILE=/opt/app/dcae-certificates
-DMAAPBC_KSTOREPASS=foofoofoo
-DMAAPBC_PVTKEYPASS=barbarbar
-
-DMAAPBC_PG_ENABLED=true
-#DMAAPBC_PGHOST=zldciad1vipstg00.dcae.simpledemo.openecomp.org
-DMAAPBC_PGHOST=10.0.4.101
-DMAAPBC_PGCRED=test234-ftl
-
-DMAAPBC_DRPROV_FQDN=zldciad1vidrps00.simpledemo.openecomp.org
-
-DMAAPBC_AAF_URL=https://aafapi.:8095/proxy/
-
-DMAAPBC_TOPICMGR_USER=m99751@dmaapBC.openecomp.org
-DMAAPBC_TOPICMGR_PWD=enc:zyRL9zbI0py3rJAjMS0dFOnYfEw_mJhO
-DMAAPBC_ADMIN_USER=m99501@dcae.openecomp.org
-DMAAPBC_ADMIN_PWD=enc:YEaHwOJrwhDY8a6usetlhbB9mEjUq9m
-
-DMAAPBC_PE_ENABLED=false
-DMAAPBC_PE_AAF_ENV=TBD
+++ /dev/null
-localhost.endpoint=http://localhost:9999
-localhost.user=console
-localhost.password=MDBmMzE0NTgyMDU1NmVj
-localhost.timeout=3600000
-#localhost.debug=true
-
+++ /dev/null
-#log4j.debug=0
-log4j.rootLogger=warn, file
-log4j.logger.org.openecomp.ncomp=info, file
-log4j.additivity.org.openecomp.ncomp=false
-
-
-#log4j.logger.org.apache.http.headers=debug, file
-#log4j.logger.org.apache.http.wire=debug, file
-
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=logs/manager.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.file.MaxFileSize=50MB
-log4j.appender.file.MaxBackupIndex=5
-
-log4j.appender.uploaded=org.apache.log4j.RollingFileAppender
-log4j.appender.uploaded.File=logs/manager-uploaded.log
-log4j.appender.uploaded.layout=org.apache.log4j.PatternLayout
-log4j.appender.uploaded.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.uploaded.MaxFileSize=50MB
-log4j.appender.uploaded.MaxBackupIndex=5
-
-### ECOMP Logging
-log4j.logger.org.openecomp.audit=info, audit
-log4j.additivity.org.openecomp.audit=false
-log4j.logger.org.openecomp.metrics=info, metrics
-log4j.additivity.org.openecomp.metrics=false
-log4j.logger.org.openecomp.error=info, error
-log4j.additivity.org.openecomp.error=false
-log4j.logger.com.att.eelf.debug=info, debug
-log4j.additivity.org.openecomp.debug=false
-log4j.appender.audit=org.apache.log4j.RollingFileAppender
-log4j.appender.audit.File=logs/audit.log
-log4j.appender.audit.layout=org.apache.log4j.PatternLayout
-log4j.appender.audit.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%5p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.audit.MaxFileSize=50MB
-log4j.appender.audit.MaxBackupIndex=5
-log4j.appender.metrics=org.apache.log4j.RollingFileAppender
-log4j.appender.metrics.File=logs/metrics.log
-log4j.appender.metrics.layout=org.apache.log4j.PatternLayout
-log4j.appender.metrics.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.metrics.MaxFileSize=50MB
-log4j.appender.metrics.MaxBackupIndex=5
-log4j.appender.error=org.apache.log4j.RollingFileAppender
-log4j.appender.error.File=logs/error.log
-log4j.appender.error.layout=org.apache.log4j.PatternLayout
-log4j.appender.error.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.error.MaxFileSize=50MB
-log4j.appender.error.MaxBackupIndex=5
-log4j.appender.debug=org.apache.log4j.RollingFileAppender
-log4j.appender.debug.File=logs/debug.log
-log4j.appender.debug.layout=org.apache.log4j.PatternLayout
-log4j.appender.debug.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.debug.MaxFileSize=50MB
-log4j.appender.debug.MaxBackupIndex=5
-
-
+++ /dev/null
-JVMARGS=-Djavax.net.ssl.trustStore=config/docker-mra-certs.jks
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 9999
-server.user.console = MDBmMzE0NTgyMDU1NmVj
-server.user.gui = ZDAxYzIzMGQ5NWRhZjVi
-server.user.client = OTY4NTk3ODI4ZWI2MjM0
+++ /dev/null
-0
-25
-ECOMP-PORTAL-OUTBOX-VID1 0 0
-PDPD-CONFIGURATION 0 2
-msgrtr.apinode.metrics.dmaap 1 26
-unauthenticated.SEC_MEASUREMENT_OUTPUT 1 1
-APPC-TEST2 0 0
-unauthenticated.TCA_EVENT_OUTPUT 1 1
-APPC-TEST1 0 0
-APPC-CL 0 2
-ECOMP-PORTAL-INBOX 0 0
-APPC-CL 1 0
-APPC-TEST2 1 1
-unauthenticated.TCA_EVENT_OUTPUT 0 1
-unauthenticated.SEC_MEASUREMENT_OUTPUT 0 1
-SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-POLICY-CL-MGT 1 1
-PDPD-CONFIGURATION 1 0
-DCAE-CL-EVENT 1 1
-msgrtr.apinode.metrics.dmaap 0 4
-ECOMP-PORTAL-OUTBOX-APP1 0 0
-ECOMP-PORTAL-OUTBOX-SDC1 0 0
-POLICY-CL-MGT 0 1
-SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-DCAE-CL-EVENT 0 1
-ECOMP-PORTAL-OUTBOX-DBC1 0 0
-ECOMP-PORTAL-OUTBOX-POL1 0 0
+++ /dev/null
-0
-25
-ECOMP-PORTAL-OUTBOX-VID1 0 0
-PDPD-CONFIGURATION 0 2
-msgrtr.apinode.metrics.dmaap 1 26
-unauthenticated.SEC_MEASUREMENT_OUTPUT 1 1
-APPC-TEST2 0 0
-unauthenticated.TCA_EVENT_OUTPUT 1 1
-APPC-TEST1 0 0
-APPC-CL 0 2
-ECOMP-PORTAL-INBOX 0 0
-APPC-CL 1 0
-APPC-TEST2 1 1
-unauthenticated.TCA_EVENT_OUTPUT 0 1
-unauthenticated.SEC_MEASUREMENT_OUTPUT 0 1
-SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-POLICY-CL-MGT 1 1
-PDPD-CONFIGURATION 1 0
-DCAE-CL-EVENT 1 1
-msgrtr.apinode.metrics.dmaap 0 4
-ECOMP-PORTAL-OUTBOX-APP1 0 0
-ECOMP-PORTAL-OUTBOX-SDC1 0 0
-POLICY-CL-MGT 0 1
-SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-DCAE-CL-EVENT 0 1
-ECOMP-PORTAL-OUTBOX-DBC1 0 0
-ECOMP-PORTAL-OUTBOX-POL1 0 0
+++ /dev/null
-#!/bin/bash
-
-if [[ -z "$KAFKA_PORT" ]]; then
- export KAFKA_PORT=9092
-fi
-if [[ -z "$KAFKA_ADVERTISED_PORT" ]]; then
- export KAFKA_ADVERTISED_PORT=$(docker port `hostname` $KAFKA_PORT | sed -r "s/.*:(.*)/\1/g")
-fi
-if [[ -z "$KAFKA_BROKER_ID" ]]; then
- # By default auto allocate broker ID
- #export KAFKA_BROKER_ID=-1
- export KAFKA_BROKER_ID=1
-fi
-#if [[ -z "$KAFKA_LOG_DIRS" ]]; then
- #export KAFKA_LOG_DIRS="/kafka/kafka-logs-$HOSTNAME"
- export KAFKA_LOG_DIRS="/kafka/kafka-logs"
-#fi
-if [[ -z "$KAFKA_ZOOKEEPER_CONNECT" ]]; then
- export KAFKA_ZOOKEEPER_CONNECT=$(env | grep ZK.*PORT_2181_TCP= | sed -e 's|.*tcp://||' | paste -sd ,)
-fi
-
-if [[ -n "$KAFKA_HEAP_OPTS" ]]; then
- sed -r -i "s/(export KAFKA_HEAP_OPTS)=\"(.*)\"/\1=\"$KAFKA_HEAP_OPTS\"/g" $KAFKA_HOME/bin/kafka-server-start.sh
- unset KAFKA_HEAP_OPTS
-fi
-
-if [[ -z "$KAFKA_ADVERTISED_HOST_NAME" && -n "$HOSTNAME_COMMAND" ]]; then
- export KAFKA_ADVERTISED_HOST_NAME=$(eval $HOSTNAME_COMMAND)
-fi
-
-for VAR in `env`
-do
- if [[ $VAR =~ ^KAFKA_ && ! $VAR =~ ^KAFKA_HOME ]]; then
- kafka_name=`echo "$VAR" | sed -r "s/KAFKA_(.*)=.*/\1/g" | tr '[:upper:]' '[:lower:]' | tr _ .`
- env_var=`echo "$VAR" | sed -r "s/(.*)=.*/\1/g"`
- if egrep -q "(^|^#)$kafka_name=" $KAFKA_HOME/config/server.properties; then
- sed -r -i "s@(^|^#)($kafka_name)=(.*)@\2=${!env_var}@g" $KAFKA_HOME/config/server.properties #note that no config values may contain an '@' char
- else
- echo "$kafka_name=${!env_var}" >> $KAFKA_HOME/config/server.properties
- fi
- fi
-done
-
-if [[ -n "$CUSTOM_INIT_SCRIPT" ]] ; then
- eval $CUSTOM_INIT_SCRIPT
-fi
-
-
-KAFKA_PID=0
-
-# see https://medium.com/@gchudnov/trapping-signals-in-docker-containers-7a57fdda7d86#.bh35ir4u5
-term_handler() {
- echo 'Stopping Kafka....'
- if [ $KAFKA_PID -ne 0 ]; then
- kill -s TERM "$KAFKA_PID"
- wait "$KAFKA_PID"
- fi
- echo 'Kafka stopped.'
- exit
-}
-
-
-# Capture kill requests to stop properly
-trap "term_handler" SIGHUP SIGINT SIGTERM
-create-topics.sh &
-$KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties &
-KAFKA_PID=$!
-
-wait "$KAFKA_PID"
+++ /dev/null
-###############################################################################
-##
-## Cambria API Server config
-##
-## - Default values are shown as commented settings.
-##
-
-###############################################################################
-##
-## HTTP service
-##
-## - 3904 is standard as of 7/29/14.
-#
-## Zookeeper Connection
-##
-## Both Cambria and Kafka make use of Zookeeper.
-##
-config.zk.servers=zookeeper.namespace-placeholder:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
-
-
-###############################################################################
-##
-## Kafka Connection
-##
-## Items below are passed through to Kafka's producer and consumer
-## configurations (after removing "kafka.")
-## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=kafka.namespace-placeholder:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
-##kafka.request.required.acks=-1
-#kafka.client.zookeeper=${config.zk.servers}
-consumer.timeout.ms=100
-zookeeper.connection.timeout.ms=6000
-zookeeper.session.timeout.ms=6000
-zookeeper.sync.time.ms=2000
-auto.commit.interval.ms=1000
-fetch.message.max.bytes =1000000
-auto.commit.enable=false
-
-
-###############################################################################
-##
-## Secured Config
-##
-## Some data stored in the config system is sensitive -- API keys and secrets,
-## for example. to protect it, we use an encryption layer for this section
-## of the config.
-##
-## The key is a base64 encode AES key. This must be created/configured for
-## each installation.
-#cambria.secureConfig.key=
-##
-## The initialization vector is a 16 byte value specific to the secured store.
-## This must be created/configured for each installation.
-#cambria.secureConfig.iv=
-
-## Southfield Sandbox
-cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
-cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
-authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
-
-
-###############################################################################
-##
-## Consumer Caching
-##
-## Kafka expects live connections from the consumer to the broker, which
-## obviously doesn't work over connectionless HTTP requests. The Cambria
-## server proxies HTTP requests into Kafka consumer sessions that are kept
-## around for later re-use. Not doing so is costly for setup per request,
-## which would substantially impact a high volume consumer's performance.
-##
-## This complicates Cambria server failover, because we often need server
-## A to close its connection before server B brings up the replacement.
-##
-
-## The consumer cache is normally enabled.
-#cambria.consumer.cache.enabled=true
-
-## Cached consumers are cleaned up after a period of disuse. The server inspects
-## consumers every sweepFreqSeconds and will clean up any connections that are
-## dormant for touchFreqMs.
-#cambria.consumer.cache.sweepFreqSeconds=15
-#cambria.consumer.cache.touchFreqMs=120000
-
-## The cache is managed through ZK. The default value for the ZK connection
-## string is the same as config.zk.servers.
-#cambria.consumer.cache.zkConnect=${config.zk.servers}
-
-##
-## Shared cache information is associated with this node's name. The default
-## name is the hostname plus the HTTP service port this host runs on. (The
-## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
-## which is not always adequate.) You can set this value explicitly here.
-##
-#cambria.api.node.identifier=<use-something-unique-to-this-instance>
-
-###############################################################################
-##
-## Metrics Reporting
-##
-## This server can report its metrics periodically on a topic.
-##
-#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
-#metrics.send.cambria.sendEverySeconds=60
-
-cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
-
-##############################################################################
-#100mb
-maxcontentlength=10000
-
-
-##############################################################################
-#AAF Properties
-msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
-msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
-enforced.topic.name.AAF=org.openecomp
-forceAAF=false
-transidUEBtopicreqd=false
-defaultNSforUEB=org.openecomp.dmaap.mr.ueb
-##############################################################################
-#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
-msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
-msgRtr.mirrormaker.consumergroup=mmagentserver
-msgRtr.mirrormaker.consumerid=1
+++ /dev/null
-basic_realm=openecomp.org
-basic_warn=TRUE
-
-cadi_loglevel=DEBUG
-#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
-cadi_keyfile=/appl/dmaapMR1/etc/keyfile
-# Configure AAF
-aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
-
-aaf_id=dgl@openecomp.org
-aaf_password=enc:f2u5br1mh29M02-
-aaf_timeout=5000
-aaf_clean_interval=1200000
-aaf_user_expires=60000
-aaf_high_count=1000000
-
-
-# The following properties are being set by the AJSC Container and should NOT need to be set here.
-AFT_LATITUDE=33.823589
-AFT_LONGITUDE=-84.366982
-AFT_ENVIRONMENT=AFTUAT
+++ /dev/null
-localhost.endpoint=http://localhost:PORT
-localhost.user=console
-localhost.password=CONSOLE_PW
+++ /dev/null
-#log4j.debug=0
-log4j.rootLogger=warn, file
-log4j.logger.org.openecomp.ncomp=info, file
-log4j.additivity.org.openecomp.ncomp=false
-log4j.logger.org.openecomp.ncomp.datarouter=warn, file
-log4j.additivity.org.openecomp.ncomp.datarouter=false
-log4j.logger.org.apache.http.headers=debug, file
-log4j.logger.org.apache.http.wire=debug, file
-
-## uploaded logger
-log4j.logger.org.openecomp.ncomp.sirius.manager.uploaded=info, uploaded
-log4j.additivity.org.openecomp.ncomp.sirius.manager.uploaded=false
-## request logging
-log4j.logger.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=info, requests
-log4j.additivity.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=false
-
-
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=logs/BBBB.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.file.MaxFileSize=50MB
-log4j.appender.file.MaxBackupIndex=5
-
+++ /dev/null
-
-restart: stop start
-
-start:
- M2_HOME=$(HOME)/.m2 bin/BBBB-controller start
-stop:
- bin/BBBB-controller stop
-console:
- bin/BBBB-controller console
+++ /dev/null
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 9999
-server.user.console = CONSOLE_PW
-server.user.gui = GUI_PW
-server.user.client = CLIENT_PW
-server.user.CLIENT_PW = CLIENT_PW
+++ /dev/null
-#!/bin/bash
-
-### used to generate random passwords
-
-
-echo '#!/bin/bash'
-echo ""
-
-echo 'cat \'
-
-for i in CONSOLE GUI CLIENT
-do
- echo ' |' sed s/${i}_PW/$(echo $i:$(date +%s) | sha256sum | base64 | head -c 20 ; echo)/ \\
-done
-
+++ /dev/null
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 8080
-server.user.console = CONSOLE_PW
-server.user.gui = GUI_PW
-server.user.client = CLIENT_PW
+++ /dev/null
-###############################################################################
-##
-## Cambria API Server config
-##
-## - Default values are shown as commented settings.
-##
-
-###############################################################################
-##
-## HTTP service
-##
-## - 3904 is standard as of 7/29/14.
-#
-## Zookeeper Connection
-##
-## Both Cambria and Kafka make use of Zookeeper.
-##
-config.zk.servers=zookeeper.namespace-placeholder:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
-
-
-###############################################################################
-##
-## Kafka Connection
-##
-## Items below are passed through to Kafka's producer and consumer
-## configurations (after removing "kafka.")
-## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=global-kafka.namespace-placeholder:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
-##kafka.request.required.acks=-1
-#kafka.client.zookeeper=${config.zk.servers}
-consumer.timeout.ms=100
-zookeeper.connection.timeout.ms=6000
-zookeeper.session.timeout.ms=6000
-zookeeper.sync.time.ms=2000
-auto.commit.interval.ms=1000
-fetch.message.max.bytes =1000000
-auto.commit.enable=false
-
-
-###############################################################################
-##
-## Secured Config
-##
-## Some data stored in the config system is sensitive -- API keys and secrets,
-## for example. to protect it, we use an encryption layer for this section
-## of the config.
-##
-## The key is a base64 encode AES key. This must be created/configured for
-## each installation.
-#cambria.secureConfig.key=
-##
-## The initialization vector is a 16 byte value specific to the secured store.
-## This must be created/configured for each installation.
-#cambria.secureConfig.iv=
-
-## Southfield Sandbox
-cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
-cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
-authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
-
-
-###############################################################################
-##
-## Consumer Caching
-##
-## Kafka expects live connections from the consumer to the broker, which
-## obviously doesn't work over connectionless HTTP requests. The Cambria
-## server proxies HTTP requests into Kafka consumer sessions that are kept
-## around for later re-use. Not doing so is costly for setup per request,
-## which would substantially impact a high volume consumer's performance.
-##
-## This complicates Cambria server failover, because we often need server
-## A to close its connection before server B brings up the replacement.
-##
-
-## The consumer cache is normally enabled.
-#cambria.consumer.cache.enabled=true
-
-## Cached consumers are cleaned up after a period of disuse. The server inspects
-## consumers every sweepFreqSeconds and will clean up any connections that are
-## dormant for touchFreqMs.
-#cambria.consumer.cache.sweepFreqSeconds=15
-#cambria.consumer.cache.touchFreqMs=120000
-
-## The cache is managed through ZK. The default value for the ZK connection
-## string is the same as config.zk.servers.
-#cambria.consumer.cache.zkConnect=${config.zk.servers}
-
-##
-## Shared cache information is associated with this node's name. The default
-## name is the hostname plus the HTTP service port this host runs on. (The
-## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
-## which is not always adequate.) You can set this value explicitly here.
-##
-#cambria.api.node.identifier=<use-something-unique-to-this-instance>
-
-###############################################################################
-##
-## Metrics Reporting
-##
-## This server can report its metrics periodically on a topic.
-##
-#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
-#metrics.send.cambria.sendEverySeconds=60
-
-cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
-
-##############################################################################
-#100mb
-maxcontentlength=10000
-
-
-##############################################################################
-#AAF Properties
-msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
-msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
-enforced.topic.name.AAF=org.openecomp
-forceAAF=false
-transidUEBtopicreqd=false
-defaultNSforUEB=org.openecomp.dmaap.mr.ueb
-##############################################################################
-#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
-msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
-msgRtr.mirrormaker.consumergroup=mmagentserver
-msgRtr.mirrormaker.consumerid=1
+++ /dev/null
-basic_realm=openecomp.org
-basic_warn=TRUE
-
-cadi_loglevel=DEBUG
-#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
-cadi_keyfile=/appl/dmaapMR1/etc/keyfile
-# Configure AAF
-aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
-
-aaf_id=dgl@openecomp.org
-aaf_password=enc:f2u5br1mh29M02-
-aaf_timeout=5000
-aaf_clean_interval=1200000
-aaf_user_expires=60000
-aaf_high_count=1000000
-
-
-# The following properties are being set by the AJSC Container and should NOT need to be set here.
-AFT_LATITUDE=33.823589
-AFT_LONGITUDE=-84.366982
-AFT_ENVIRONMENT=AFTUAT
+++ /dev/null
-_sNOLphPzrU7L0L3oWv0pYwgV_ddGF1XoBsQEIAp34jfP-fGJFPfFYaMpDEZ3gwH59rNw6qyMZHk
-k-4irklvVcWk36lC3twNvc0DueRCVrws1bkuhOLCXdxHJx-YG-1xM8EJfRmzh79WPlPkbAdyPmFF
-Ah44V0GjAnInPOFZA6MHP9rNx9B9qECHRfmvzU13vJCcgTsrmOr-CEiWfRsnzPjsICxpq9OaVT_D
-zn6rNaroGm1OiZNCrCgvRkCUHPOOCw3j9G1GeaImoZNYtozbz9u4sj13PU-MxIIAa64b1bMMMjpz
-Upc8lVPI4FnJKg6axMmEGn5zJ6JUq9mtOVyPj__2GEuDgpx5H4AwodXXVjFsVgR8UJwI_BvS2JVp
-JoQk0J1RqXmAXVamlsMAfzmmbARXgmrBfnuhveZnh9ymFVU-YZeujdANniXAwBGI7c6hG_BXkH7i
-Eyf4Fn41_SV78PskP6qgqJahr9r3bqdjNbKBztIKCOEVrE_w3IM5r02l-iStk_NBRkj6cq_7VCpG
-afxZ2CtZMwuZMiypO_wOgbdpCSKNzsL-NH2b4b08OlKiWb263gz634KJmV5WEfCl-6eH-JUFbWOS
-JwQfActLNT2ZQPl2MyZQNBzJEWoJRgS6k7tPRO-zqeUtYYHGHVMCxMuMHGQcoilNNHEFeBCG_fBh
-yAKb9g9F86Cbx9voMLiyTX2T3rwVHiSJFOzfNxGmfN5JWOthIun_c5hEY1tLQ15BomzkDwk7BAj7
-VbRCrVD45B6xrmSTMBSWYmLyr6mnQxQqeh9cMbD-0ZAncE3roxRnRvPKjFFa208ykYUp2V83r_PJ
-fV5I9ZPKSjk9DwFyrjkcQQEYDhdK6IFqcd6nEthjYVkmunu2fsX0bIOm9GGdIbKGqBnpdgBO5hyT
-rBr9HSlZrHcGdti1R823ckDF0Ekcl6kioDr5NLIpLtg9zUEDRm3QrbX2mv5Zs8W0pYnOqglxy3lz
-bJZTN7oR7VasHUtjmp0RT9nLZkUs5TZ6MHhlIq3ZsQ6w_Q9Rv1-ofxfwfCC4EBrWKbWAGCf6By4K
-Ew8321-2YnodhmsK5BrT4zQ1DZlmUvK8BmYjZe7wTljKjgYcsLTBfX4eMhJ7MIW1kpnl8AbiBfXh
-QzN56Mki51Q8PSQWHm0W9tnQ0z6wKdck6zBJ8JyNzewZahFKueDTn-9DOqIDfr3YHvQLLzeXyJ8e
-h4AgjW-hvlLzRGtkCknjLIgXVa3rMTycseAwbW-mgdCqqkw3SdEG8feAcyntmvE8j2jbtSDStQMB
-9JdvyNLuQdNG4pxpusgvVso0-8NQF0YVa9VFwg9U6IPSx5p8FcW68OAHt_fEgT4ZtiH7o9aur4o9
-oYqUh2lALCY-__9QLq1KkNjMKs33Jz9E8LbRerG9PLclkTrxCjYAeUWBjCwSI7OB7xkuaYDSjkjj
-a46NLpdBN1GNcsFFcZ79GFAK0_DsyxGLX8Tq6q0Bvhs8whD8wlSxpTGxYkyqNX-vcb7SDN_0WkCE
-XSdZWkqTHXcYbOvoCOb_e6SFAztuMenuHWY0utX0gBfx_X5lPDFyoYXErxFQHiA7t27keshXNa6R
-ukQRRS8kMjre1U74sc-fRNXkXpl57rG4rgxaEX0eBeowa53KAsVvUAoSac2aC_nfzXrDvoyf9Xi3
-JpEZNhUDLpFCEycV4I7jGQ9wo9qNaosvlsr6kbLDNdb_1xrGVgjT3xEvRNJNPqslSAu-yD-UFhC3
-AmCdYUnugw_eEFqXCHTARcRkdPPvl2XsmEKY2IqEeO5tz4DyXQFaL-5hEVh6lYEU1EOWHk3UGIXe
-Vc5_Ttp82qNLmlJPbZvgmNTJzYTHDQ_27KBcp7IVVZgPDjVKdWqQvZ18KhxvfF3Idgy82LBZniFV
-IbtxllXiPRxoPQriSXMnXjh3XkvSDI2pFxXfEvLRn1tvcFOwPNCz3QfPIzYg8uYXN5bRt3ZOrR_g
-ZhIlrc7HO0VbNbeqEVPKMZ-cjkqGj4VAuDKoQc0eQ6X_wCoAGO78nPpLeIvZPx1X3z5YoqNA
\ No newline at end of file
# limitations under the License.
apiVersion: v1
-description: ONAP Consul Heath Monitor
+description: ONAP Consul Agent
name: consul
-version: 1.1.0
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Consul Server
+name: consul-server
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+*/}}
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
+---
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}-ui
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- else -}}
+ - port: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ command: ["/usr/local/bin/docker-entrypoint.sh"]
+ args:
+ - "agent"
+ - "-bootstrap-expect={{ .Values.replicaCount }}"
+ - "-enable-script-checks"
+{{- $fullname := include "common.fullname" . -}}
+{{- $servname := include "common.servicename" . -}}
+{{- range $i,$t := until (int .Values.replicaCount)}}
+ - "-retry-join={{ $fullname }}-{{$i}}.{{ $servname }}"
+{{- end }}
+ - "-client=0.0.0.0"
+ - "-server"
+ - "-ui"
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: consul:1.0.6
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 5
+
+service:
+ type: ClusterIP
+ name: consul-server
+ portName: consul-join
+ internalPort: 8301
+ type2: NodePort
+ portName2: consul-ui
+ internalPort2: 8500
+ nodePort2: 70
+
+ingress:
+ enabled: false
+
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
{
"id": "hbase-aai",
"name": "HBase Health Check",
- "http": "http://hbase.{{ .Values.nsPrefix }}:8080/status/cluster",
+ "http": "http://aai-hbase:8080/status/cluster",
"method": "GET",
"header": {
"Cache-Control": ["no-cache"],
{
"id": "elasticsearch",
"name": "Search Data Service Document Store",
- "http": "http://aai-elasticsearch.{{ .Values.nsPrefix }}:9200/_cat/indices?v",
+ "http": "http://aai-elasticsearch:9200/_cat/indices?v",
"interval": "15s",
"timeout": "1s"
},
{
"id": "search-data-service-availability",
"name": "Search Data Service Availability",
- "script": "curl -k --cert /consul/certs/client-cert-onap.crt.pem --cert-type PEM --key /consul/certs/client-cert-onap.key.pem --key-type PEM https://search-data-service.{{ .Values.nsPrefix }}:9509/services/search-data-service/v1/jaxrsExample/jaxrs-services/echo/up 2>&1 | grep 'Up'",
+ "script": "curl -k --cert /consul/certs/client-cert-onap.crt.pem --cert-type PEM --key /consul/certs/client-cert-onap.key.pem --key-type PEM https://search-data-service:9509/services/search-data-service/v1/jaxrsExample/jaxrs-services/echo/up 2>&1 | grep 'Up'",
"interval": "15s"
},
{
{
"id": "aai-service",
"name": "Core A&AI",
- "http": "https://aai-service.{{ .Values.nsPrefix }}:8443/aai/util/echo",
+ "http": "https://aai.{{ .Release.Namespace }}:8443/aai/util/echo",
"header": {
"Authorization": ["Basic QUFJOkFBSQ=="],
"X-TransactionId": ["ConsulHealthCheck"],
{
"id": "aai-resources",
"name": "Resources Microservice",
- "http": "https://aai-resources.{{ .Values.nsPrefix }}:8447/aai/util/echo",
+ "http": "https://aai-resources.{{ .Release.Namespace }}:8447/aai/util/echo",
"header": {
"Authorization": ["Basic QUFJOkFBSQ=="],
"X-TransactionId": ["ConsulHealthCheck"],
{
"id": "aai-traversal",
"name": "Traversal Microservice",
- "http": "https://aai-traversal.{{ .Values.nsPrefix }}:8446/aai/util/echo",
+ "http": "https://aai-traversal.{{ .Release.Namespace }}:8446/aai/util/echo",
"header": {
"Authorization": ["Basic QUFJOkFBSQ=="],
"X-TransactionId": ["ConsulHealthCheck"],
{
"id": "appc-dgbuilder",
"name": "APPC-Dgbuilder Server Health Check",
- "http": "http://appc-dgbuilder.{{ .Values.nsPrefix }}:3000/",
+ "http": "http://appc-dgbuilder:3000/",
"method": "HEAD",
"header": {
"Authorization": ["Basic ZGd1c2VyOnRlc3QxMjM="],
"name": "Health Check: APPC-SDN-CTL-DB-01",
"checks": [
{
- "id": "appc-sdnctldb01.{{ .Values.nsPrefix }}",
+ "id": "appc-sdnctldb01",
"name": "APPC SDNCTLDB01 Health Check",
- "tcp": "appc-sdnctldb01.{{ .Values.nsPrefix }}:3306",
+ "tcp": "appc-sdnctldb01:3306",
"interval": "10s",
"timeout": "1s"
}
"name": "Health Check: APPC-SDN-CTL-DB-02",
"checks": [
{
- "id": "appc-sdnctldb02.{{ .Values.nsPrefix }}",
+ "id": "appc-sdnctldb02",
"name": "APPC SDNCTLDB02 Health Check",
- "tcp": "appc-sdnctldb02.{{ .Values.nsPrefix }}:3306",
+ "tcp": "appc-sdnctldb02:3306",
"interval": "10s",
"timeout": "1s"
}
{
"id": "appc-sdnhost",
"name": "APPC SDN Host Health Check",
- "http": "http://appc-sdnhost.{{ .Values.nsPrefix }}:8282/apidoc/explorer/index.html",
+ "http": "http://appc-sdnhost:8282/apidoc/explorer/index.html",
"method": "HEAD",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
--- /dev/null
+{
+ "service": {
+ "name": "Health Check: CLAMP - MariaDb",
+ "checks": [
+ {
+ "id": "clamp-mariadb",
+ "name": "CLAMP Mariadb Health Check",
+ "script": "/consul/scripts/clamp-mariadb-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+
+ }
+}
+
--- /dev/null
+{
+ "service": {
+ "name": "Health Check: ONAP CLI",
+ "checks": [
+ {
+ "id": "cli",
+ "name": "CLI Health Check",
+ "http": "http://cli.{{include "common.namespace" .}}:8080",
+ "method": "GET",
+ "interval": "3600s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
{
"id": "log-elasticsearch-server",
"name": "Log Elastic Search Health Check",
- "http": "http://elasticsearch.{{ .Values.nsPrefix }}:9200/_cluster/health?pretty",
+ "http": "http://log-es:9200/_cluster/health?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-elasticsearch-tcp",
"name": "Log Elastic Search TCP Health Check",
- "tcp": "elasticsearchtcp.{{ .Values.nsPrefix }}:9300",
+ "tcp": "log-es-tcp:9300",
"interval": "15s",
"timeout": "1s"
}
{
"id": "log-kibana-server",
"name": "Log kibana Health Check",
- "http": "http://kibana.{{ .Values.nsPrefix }}:5601/status",
+ "http": "http://log-kibana:5601/status",
"method": "HEAD",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-gi",
"name": "Log Stash Health Check - General Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/?pretty",
+ "http": "http://log-ls-http:9600/?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-node-info",
"name": "Log Stash Health Check - Node Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/?pretty",
+ "http": "http://log-ls-http:9600/_node/?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-os-info",
"name": "Log Stash Health Check - OS Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/os?pretty",
+ "http": "http://log-ls-http:9600/_node/os?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-jvm-info",
"name": "Log Stash Health Check - JVM Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/jvm?pretty",
+ "http": "http://log-ls-http:9600/_node/jvm?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-plugin-info",
"name": "Log Stash Health Check - Plugin Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/plugins?pretty",
+ "http": "http://log-ls-http:9600/_node/plugins?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-node-stat",
"name": "Log Stash Health Check - Node Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats?pretty",
+ "http": "http://log-ls-http:9600/_node/stats?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-jvm-stat",
"name": "Log Stash Health Check - JVM Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats/jvm?pretty",
+ "http": "http://log-ls-http:9600/_node/stats/jvm?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-process-stat",
"name": "Log Stash Health Check - Process Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats/process?pretty",
+ "http": "http://log-ls-http:9600/_node/stats/process?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-internal-server-os-stat",
"name": "Log Stash Health Check - OS Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats/os?pretty",
+ "http": "http://log-ls-http:9600/_node/stats/os?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
{
"id": "log-logstash-tcp",
"name": "Log Stash File Beat TCP Health Check",
- "tcp": "logstash.{{ .Values.nsPrefix }}:5044",
+ "tcp": "log-ls:5044",
"interval": "15s",
"timeout": "1s"
}
"service": {
"name": "Health Check: Message Router - DMaaP",
"check": {
- "http": "http://dmaap.{{ .Values.nsPrefix }}:3904/topics",
+ "http": "http://message-router:3904/topics",
"interval": "30s",
"timeout": "1s"
}
"name": "Health Check: MSB",
"checks": [
{
- "id": "msb-eag.{{ .Values.nsPrefix }}",
+ "id": "msb-eag",
"name": "MSB eag Health Check",
- "http": "http://msb-eag.{{ .Values.nsPrefix }}:80/iui/microservices/default.html",
+ "http": "http://msb-eag:80/iui/microservices/default.html",
"method": "HEAD",
"tls_skip_verify": true,
"interval": "15s",
"timeout": "1s"
},
{
- "id": "msb-iag.{{ .Values.nsPrefix }}",
+ "id": "msb-iag",
"name": "MSB iag Health Check",
- "http": "http://msb-iag.{{ .Values.nsPrefix }}:80/iui/microservices/default.html",
+ "http": "http://msb-iag:80/iui/microservices/default.html",
"method": "HEAD",
"tls_skip_verify": true,
"interval": "15s",
"timeout": "1s"
},
{
- "id": "msb-consul.{{ .Values.nsPrefix }}",
+ "id": "msb-consul",
"name": "MSB consul Health Check",
- "tcp": "msb-consul.{{ .Values.nsPrefix }}:8500",
+ "tcp": "msb-consul:8500",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "msb-discovery.{{ .Values.nsPrefix }}",
+ "id": "msb-discovery",
"name": "MSB discovery Health Check",
- "tcp": "msb-discovery.{{ .Values.nsPrefix }}:10081",
+ "tcp": "msb-discovery:10081",
"interval": "15s",
"timeout": "1s"
}
+++ /dev/null
-{
- "service": {
- "name": "Health Check: MSO",
- "checks": [
- {
- "id": "mso-api-healthcheck",
- "name": "MSO API Health Check",
- "script": "/consul/scripts/mso-api-script.sh",
- "interval": "10s",
- "timeout": "1s"
- },
- {
- "id": "mso-camunda-healthcheck",
- "name": "MSO Camunda Health Check",
- "script": "/consul/scripts/mso-camunda-script.sh",
- "interval": "10s",
- "timeout": "1s"
- },
- {
- "id": "mso-jra-healthcheck",
- "name": "MSO JRA Health Check",
- "script": "/consul/scripts/mso-jra-script.sh",
- "interval": "10s",
- "timeout": "1s"
- }
- ]
- }
-}
+++ /dev/null
-{
- "service": {
- "name": "Health Check: MSO - MariaDb",
- "checks": [
- {
- "id": "mso-mariadb",
- "name": "MSO Mariadb Health Check",
- "script": "/consul/scripts/mso-mariadb-script.sh",
- "interval": "10s",
- "timeout": "1s"
- }
- ]
-
- }
-}
{
"id": "framework",
"name": "Framework Health Check",
- "http": "http://framework.{{ .Values.nsPrefix }}:9001/api/multicloud/v0/swagger.json",
+ "http": "http://framework:9001/api/multicloud/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
{
"id": "multicloud-ocata",
"name": "Multicloud Ocata Health Check",
- "http": "http://multicloud-ocata.{{ .Values.nsPrefix }}:9006/api/multicloud-ocata/v0/swagger.json",
+ "http": "http://multicloud-ocata:9006/api/multicloud-ocata/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
{
"id": "multicloud-vio",
"name": "Multicloud Vio Health Check",
- "http": "http://multicloud-vio.{{ .Values.nsPrefix }}:9004/api/multicloud-vio/v0/swagger.json",
+ "http": "http://multicloud-vio:9004/api/multicloud-vio/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
{
"id": "multicloud-windriver",
"name": "Multicloud Windriver Health Check",
- "http": "http://multicloud-windriver.{{ .Values.nsPrefix }}:9005/api/multicloud-titanium_cloud/v0/swagger.json",
+ "http": "http://multicloud-windriver:9005/api/multicloud-titanium_cloud/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
--- /dev/null
+{
+ "service": {
+ "name": "Health Check: Policy",
+ "checks": [
+ {
+ "id": "Policy-mariadb-healthcheck",
+ "name": "Policy Mariadb Health Check",
+ "script": "/consul/scripts/policy-mariadb-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ },
+ {
+ "id": "policy-nexus-local-status",
+ "name": "Policy Nexus Local Status",
+ "http": "http://nexus:8081/nexus/service/local/status?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "policy-nexus-internal-metrics",
+ "name": "Policy Nexus Internal Metrics",
+ "http": "http://nexus:8081/nexus/internal/metrics?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "policy-nexus-internal-healthcheck",
+ "name": "Policy Nexus Internal Healthcheck",
+ "http": "http://nexus:8081/nexus/internal/healthcheck?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "brmsgw-tcp",
+ "name": "BRMSGW Health Check",
+ "tcp": "brmsgw:9989",
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "drools",
+ "name": "Drools Health Check",
+ "http": "http://drools:6969/healthcheck?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic aGVhbHRoY2hlY2s6emIhWHp0RzM0"],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "pap",
+ "name": "PAP Health Check",
+ "http": "http://pap:9091/pap/test?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic dGVzdHBhcDphbHBoYTEyMw=="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "pdp",
+ "name": "PDP Health Check",
+ "http": "http://pdp:8081/pdp/test?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic dGVzdHBkcDphbHBoYTEyMw=="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
-if curl -s -X PUT http://aai-elasticsearch.{{ .Values.nsPrefix }}:9200/searchhealth/stats/testwrite -d @/consul/scripts/aai-search-storage-write-doc.txt | grep '\"created\":true'; then
- if curl -s -X DELETE http://aai-elasticsearch.{{ .Values.nsPrefix }}:9200/searchhealth/stats/testwrite | grep '\"failed\":0'; then
- if curl -s -X GET http://aai-elasticsearch.{{ .Values.nsPrefix }}:9200/searchhealth/stats/testwrite | grep '\"found\":false'; then
+if curl -s -X PUT http://aai-elasticsearch:9200/searchhealth/stats/testwrite -d @/consul/scripts/aai-search-storage-write-doc.txt | grep '\"created\":true'; then
+ if curl -s -X DELETE http://aai-elasticsearch:9200/searchhealth/stats/testwrite | grep '\"failed\":0'; then
+ if curl -s -X GET http://aai-elasticsearch:9200/searchhealth/stats/testwrite | grep '\"found\":false'; then
echo Successful PUT, DELETE, GET from Search Document Storage 2>&1
exit 0
else
-APPC_DBHOST_POD=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "appc-dbhost-[^[:space:]]*")
+APPC_DBHOST_POD=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "appc-dbhost-[^[:space:]]*")
if [ -n "$APPC_DBHOST_POD" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $APPC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $APPC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
echo Success. APPC DBHost is running. 2>&1
exit 0
else
--- /dev/null
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-clampdb[^[:space:]]*")
+
+ if [ -n "$NAME" ]; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ echo Success. CLAMP DBHost is running. 2>&1
+ exit 0
+ else
+ echo Failed. CLAMP DBHost is not running. 2>&1
+ exit 1
+ fi
+ else
+ echo Failed. CLAMP DBHost is offline. 2>&1
+ exit 1
+ fi
+
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "aai-data-router[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-data-router[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- ps -efww | grep 'java' | grep 'data-router' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- ps -efww | grep 'java' | grep 'data-router' > /dev/null; then
echo Success. Synapse process is running. 2>&1
exit 0
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "aai-model-loader[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-model-loader[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- ps -efww | grep 'java' | grep 'model-loader' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- ps -efww | grep 'java' | grep 'model-loader' > /dev/null; then
echo Success. Model Loader process is running. 2>&1
exit 0
-kafkapod=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "message-router-global-kafka-[^[:space:]]*")
+kafkapod=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "message-router-kafka-[^[:space:]]*")
if [ -n "$kafkapod" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $kafkapod -- ps ef | grep -i kafka; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $kafkapod -- ps ef | grep -i kafka; then
echo Success. Kafka process is running. 2>&1
exit 0
else
-zkpod=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "message-router-zookeeper-[^[:space:]]*")
+zkpod=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "message-router-zookeeper-[^[:space:]]*")
if [ -n "$zkpod" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $zkpod -- ps ef | grep -i zookeeper; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $zkpod -- ps ef | grep -i zookeeper; then
echo Success. Zookeeper process is running. 2>&1
exit 0
else
+++ /dev/null
-## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://mso.{{ .Values.nsPrefix }}:8080/ecomp/mso/infra/healthcheck"
-HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
-
-READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
-
-if [ -n $READY ]; then
- echo "Query against health check endpoint: $HEALTH_CHECK_ENDPOINT"
- echo "Produces response: $HEALTH_CHECK_RESPONSE"
- echo "Application is not in an available state"
- return 2
-else
- echo "Application is available."
- return 0
-fi
+++ /dev/null
-## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://mso.{{ .Values.nsPrefix }}:8080/mso/healthcheck"
-HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
-
-READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
-
-if [ -n $READY ]; then
- echo "Query against health check endpoint: $HEALTH_CHECK_ENDPOINT"
- echo "Produces response: $HEALTH_CHECK_RESPONSE"
- echo "Application is not in an available state"
- return 2
-else
- echo "Application is available."
- return 0
-fi
+++ /dev/null
-## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://mso.{{ .Values.nsPrefix }}:8080/networks/rest/healthcheck"
-HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
-
-READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
-
-if [ -n $READY ]; then
- echo "Query against health check endpoint: $HEALTH_CHECK_ENDPOINT"
- echo "Produces response: $HEALTH_CHECK_RESPONSE"
- echo "Application is not in an available state"
- return 2
-else
- echo "Application is available."
- return 0
-fi
+++ /dev/null
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "mso-mariadb[^[:space:]]*")
-
- if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
- echo Success. mariadb process is running. 2>&1
- exit 0
- else
- echo Failed. mariadb process is not running. 2>&1
- exit 1
- fi
- else
- echo Failed. mariadb container is offline. 2>&1
- exit 1
- fi
--- /dev/null
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-policydb[^[:space:]]*")
+
+ if [ -n "$NAME" ]; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ echo Success. mariadb process is running. 2>&1
+ exit 0
+ else
+ echo Failed. mariadb process is not running. 2>&1
+ exit 1
+ fi
+ else
+ echo Failed. mariadb container is offline. 2>&1
+ exit 1
+ fi
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
-SDNC_DBHOST_POD=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "sdnc-dbhost-[^[:space:]]*")
+SDNC_DBHOST_POD=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "sdnc-dbhost-[^[:space:]]*")
if [ -n "$SDNC_DBHOST_POD" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $SDNC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $SDNC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
echo Success. SDNC DBHost is running. 2>&1
exit 0
else
#!/bin/sh
-SEARCH_SERVICE_NAME="search-data-service.{{ .Values.nsPrefix }}"
+SEARCH_SERVICE_NAME="search-data-service.{{ include "common.namespace" . }}"
SEARCH_SERVICE_PORT=9509
HEALTH_CHECK_INDEX="healthcheck"
--- /dev/null
+## Query the health check API.
+HEALTH_CHECK_ENDPOINT="http://so:8080/ecomp/mso/infra/healthcheck"
+HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
+
+READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
+
+if [ -n $READY ]; then
+ echo "Query against health check endpoint: $HEALTH_CHECK_ENDPOINT"
+ echo "Produces response: $HEALTH_CHECK_RESPONSE"
+ echo "Application is not in an available state"
+ return 2
+else
+ echo "Application is available."
+ return 0
+fi
--- /dev/null
+## Query the health check API.
+HEALTH_CHECK_ENDPOINT="http://so:8080/mso/healthcheck"
+HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
+
+READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
+
+if [ -n $READY ]; then
+ echo "Query against health check endpoint: $HEALTH_CHECK_ENDPOINT"
+ echo "Produces response: $HEALTH_CHECK_RESPONSE"
+ echo "Application is not in an available state"
+ return 2
+else
+ echo "Application is available."
+ return 0
+fi
--- /dev/null
+## Query the health check API.
+HEALTH_CHECK_ENDPOINT="http://so:8080/networks/rest/healthcheck"
+HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
+
+READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
+
+if [ -n $READY ]; then
+ echo "Query against health check endpoint: $HEALTH_CHECK_ENDPOINT"
+ echo "Produces response: $HEALTH_CHECK_RESPONSE"
+ echo "Application is not in an available state"
+ return 2
+else
+ echo "Application is available."
+ return 0
+fi
--- /dev/null
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-so-db[^[:space:]]*")
+
+ if [ -n "$NAME" ]; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ echo Success. mariadb process is running. 2>&1
+ exit 0
+ else
+ echo Failed. mariadb process is not running. 2>&1
+ exit 1
+ fi
+ else
+ echo Failed. mariadb container is offline. 2>&1
+ exit 1
+ fi
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "aai-sparky-be[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-sparky-be[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- ps -efww | grep 'java' | grep 'sparky' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- ps -efww | grep 'java' | grep 'sparky' > /dev/null; then
echo Success. UI Backend Service process is running. 2>&1
exit 0
# Query the Hbase service for the cluster status.
-GET_CLUSTER_STATUS_RESPONSE=$(curl -si -X GET -H "Accept: text/xml" http://hbase.{{ .Values.nsPrefix }}:8080/status/cluster)
+GET_CLUSTER_STATUS_RESPONSE=$(curl -si -X GET -H "Accept: text/xml" http://aai-hbase:8080/status/cluster)
if [ -z "$GET_CLUSTER_STATUS_RESPONSE" ]; then
echo "Tabular store is unreachable."
- return 2
+ return 2
fi
-# Check the resulting status JSON to see if there is a 'DeadNodes' stanza with
+# Check the resulting status JSON to see if there is a 'DeadNodes' stanza with
# entries.
DEAD_NODES=$(echo $GET_CLUSTER_STATUS_RESPONSE | grep "<DeadNodes/>")
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "vid-mariadb[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-vid-mariadb[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
echo Success. mariadb process is running. 2>&1
exit 0
else
{
"id": "sdc-catalog-healthcheck",
"name": "SDC Catalog Health Check",
- "http": "https://sdc-be.{{ .Values.nsPrefix }}:8443/asdc/v1/catalog/services",
+ "http": "https://sdc-be:8443/asdc/v1/catalog/services",
"header": {
"Authorization": ["Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="],
"X-ECOMP-InstanceID": ["VID"],
{
"id": "sdnc-dgbuilder",
"name": "SDNC-DGbuilder Health Check",
- "http": "http://sdnc-dgbuilder.{{ .Values.nsPrefix }}:3000/",
+ "http": "http://sdnc-dgbuilder:3000/",
"method": "HEAD",
"header": {
"Authorization": ["Basic ZGd1c2VyOnRlc3QxMjM="],
{
"id": "odl-api-healthcheck",
"name": "SDNC API Health Check",
- "http": "http://sdnhost.{{ .Values.nsPrefix }}:8282/restconf/operations/SLI-API:healthcheck",
+ "http": "http://sdnc:8282/restconf/operations/SLI-API:healthcheck",
"method": "POST",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
{
"id": "sdnc-portal",
"name": "SDNC Portal Health Check",
- "http": "http://sdnc-portal.{{ .Values.nsPrefix }}:8843/login",
+ "http": "http://sdnc-portal:8843/login",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
"name": "Health Check: SDNC-SDN-CTL-DB-01",
"checks": [
{
- "id": "sdnctldb01.{{ .Values.nsPrefix }}",
+ "id": "sdnctldb01",
"name": "SDNC SDNCTLDB01 Health Check",
- "tcp": "sdnctldb01.{{ .Values.nsPrefix }}:3306",
+ "tcp": "sdnc-dbhost:3306",
"interval": "10s",
"timeout": "1s"
}
"name": "Health Check: SDNC-SDN-CTL-DB-02",
"checks": [
{
- "id": "sdnctldb02.{{ .Values.nsPrefix }}",
+ "id": "sdnctldb02",
"name": "SDNC SDNCTLDB02 Health Check",
- "tcp": "sdnctldb02.{{ .Values.nsPrefix }}:3306",
+ "tcp": "sdnc-dbhost:3306",
"interval": "10s",
"timeout": "1s"
}
{
"id": "sdnc-sdnhost",
"name": "SDNC SDN Host Health Check",
- "http": "http://sdnhost.{{ .Values.nsPrefix }}:8282/apidoc/explorer/index.html",
+ "http": "http://sdnhost:8282/apidoc/explorer/index.html",
"method": "HEAD",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
--- /dev/null
+{
+ "service": {
+ "name": "Health Check: SO",
+ "checks": [
+ {
+ "id": "so-api-healthcheck",
+ "name": "SO API Health Check",
+ "script": "/consul/scripts/so-api-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ },
+ {
+ "id": "so-camunda-healthcheck",
+ "name": "SO Camunda Health Check",
+ "script": "/consul/scripts/so-camunda-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ },
+ {
+ "id": "so-jra-healthcheck",
+ "name": "SO JRA Health Check",
+ "script": "/consul/scripts/so-jra-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
--- /dev/null
+{
+ "service": {
+ "name": "Health Check: SO - MariaDb",
+ "checks": [
+ {
+ "id": "so-mariadb",
+ "name": "SO Mariadb Health Check",
+ "script": "/consul/scripts/so-mariadb-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+
+ }
+}
"name": "Health Check: VFC",
"checks": [
{
- "id": "vfc-catalog.{{ .Values.nsPrefix }}",
+ "id": "vfc-catalog",
"name": "VFC catalog Health Check",
- "tcp": "vfc-catalog.{{ .Values.nsPrefix }}:8806",
+ "tcp": "vfc-catalog:8806",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-emsdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-emsdriver",
"name": "VFC emsdriver Health Check",
- "tcp": "vfc-emsdriver.{{ .Values.nsPrefix }}:8206",
+ "tcp": "vfc-ems-driver:8206",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-gvnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-gvnfmdriver",
"name": "VFC gvnfmdriver Health Check",
- "tcp": "vfc-gvnfmdriver.{{ .Values.nsPrefix }}:8484",
+ "tcp": "vfc-generic-vnfm-driver:8484",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-hwvnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-hwvnfmdriver",
"name": "VFC hwvnfmdriver Health Check",
- "tcp": "vfc-hwvnfmdriver.{{ .Values.nsPrefix }}:8482",
+ "tcp": "vfc-huawei-vnfm-driver:8482",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-jujudriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-jujudriver",
"name": "VFC jujudriver Health Check",
- "tcp": "vfc-jujudriver.{{ .Values.nsPrefix }}:8483",
+ "tcp": "vfc-juju-vnfm-driver:8483",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-nokiavnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-nokiavnfmdriver",
"name": "VFC nokiavnfmdriver Health Check",
- "tcp": "vfc-nokiavnfmdriver.{{ .Values.nsPrefix }}:8486",
+ "tcp": "vfc-nokia-vnfm-driver:8486",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-nslcm.{{ .Values.nsPrefix }}",
+ "id": "vfc-nokiav2vnfmdriver",
+ "name": "VFC nokiav2vnfmdriver Health Check",
+ "tcp": "vfc-nokia-v2vnfm-driver:8089",
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "vfc-nslcm",
"name": "VFC nslcm Health Check",
- "tcp": "vfc-nslcm.{{ .Values.nsPrefix }}:8403",
+ "tcp": "vfc-nslcm:8403",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-resmgr.{{ .Values.nsPrefix }}",
+ "id": "vfc-resmgr",
"name": "VFC resmgr Health Check",
- "tcp": "vfc-resmgr.{{ .Values.nsPrefix }}:8480",
+ "tcp": "vfc-resmgr:8480",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-vnflcm.{{ .Values.nsPrefix }}",
+ "id": "vfc-vnflcm",
"name": "VFC vnflcm Health Check",
- "tcp": "vfc-vnflcm.{{ .Values.nsPrefix }}:8801",
+ "tcp": "vfc-vnflcm:8801",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-vnfmgr.{{ .Values.nsPrefix }}",
+ "id": "vfc-vnfmgr",
"name": "VFC vnfmgr Health Check",
- "tcp": "vfc-vnfmgr.{{ .Values.nsPrefix }}:8803",
+ "tcp": "vfc-vnfmgr:8803",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-vnfres.{{ .Values.nsPrefix }}",
+ "id": "vfc-vnfres",
"name": "VFC vnfres Health Check",
- "tcp": "vfc-vnfres.{{ .Values.nsPrefix }}:8802",
+ "tcp": "vfc-vnfres:8802",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-workflow.{{ .Values.nsPrefix }}",
+ "id": "vfc-workflow",
"name": "VFC workflow Health Check",
- "tcp": "vfc-workflow.{{ .Values.nsPrefix }}:10550",
+ "tcp": "vfc-workflow:10550",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-workflowengineactiviti.{{ .Values.nsPrefix }}",
+ "id": "vfc-workflowengineactiviti",
"name": "VFC workflow-engine Health Check",
- "tcp": "vfc-workflowengineactiviti.{{ .Values.nsPrefix }}:8080",
+ "tcp": "vfc-workflow-engine:8080",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-ztesdncdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-ztesdncdriver",
"name": "VFC ztesdncdriver Health Check",
- "tcp": "vfc-ztesdncdriver.{{ .Values.nsPrefix }}:8411",
+ "tcp": "vfc-zte-sdnc-driver:8411",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-ztevnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-ztevnfmdriver",
"name": "VFC ztevnfmdriver Health Check",
- "tcp": "vfc-ztevnfmdriver.{{ .Values.nsPrefix }}:8410",
+ "tcp": "vfc-zte-vnfm-driver:8410",
"interval": "15s",
"timeout": "1s"
}
{
"id": "vid-server",
"name": "VID Server Health Check",
- "http": "http://vid-server.{{ .Values.nsPrefix }}:8080/vid/healthCheck",
+ "http": "http://vid:8080/vid/healthCheck",
"method": "GET",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/consul-agent-config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-scripts-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/consul-agent-config/scripts/*").AsConfig . | indent 2 }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableConsulConsulAgent }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: consul-agent-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/consul-agent-config/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: consul-agent-scripts-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/consul-agent-config/scripts/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: Secret
-metadata:
- name: consul-agent-certs-secret
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/consul-agent-config/certs/*").AsSecrets . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableConsulConsulAgent }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: consul-agent
- name: consul-agent
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.consulAgentReplicas }}
- selector:
- matchLabels:
- app: consul-agent
- template:
- metadata:
- labels:
- app: consul-agent
- name: consul-agent
- spec:
- containers:
- - image: "{{ .Values.consulagentRegistry }}"
- command: ["/usr/local/bin/docker-entrypoint.sh"]
- args: ["agent","-client","0.0.0.0","-enable-script-checks","-join","consul-server.{{ .Values.nsPrefix }}"]
- name: consul-server
- volumeMounts:
- - mountPath: /consul/config
- name: consul-agent-config
- - mountPath: /consul/scripts
- name: consul-agent-scripts-config
- - mountPath: /consul/certs
- name: consul-agent-certs-config
- volumes:
- - configMap:
- name: consul-agent-configmap
- name: consul-agent-config
- - configMap:
- name: consul-agent-scripts-configmap
- defaultMode: 0755
- name: consul-agent-scripts-config
- - secret:
- secretName: consul-agent-certs-secret
- name: consul-agent-certs-config
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableConsulConsulServer }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: consul-server
- name: consul-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.consulServerReplicas }}
- selector:
- matchLabels:
- app: consul-server
- template:
- metadata:
- labels:
- app: consul-server
- name: consul-server
- spec:
- containers:
- - image: "{{ .Values.consulserverRegistry }}"
- command: ["/usr/local/bin/docker-entrypoint.sh"]
- args: ["agent","-server","-client","0.0.0.0","-enable-script-checks","-bootstrap-expect=3","-ui","-join","consul-server.{{ .Values.nsPrefix }}"]
- name: consul-server
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableConsulConsulServer }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: consul-server
- name: consul-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: consul-ui
- nodePort: {{ .Values.nodePortPrefix }}70
- port: 8500
- protocol: TCP
- targetPort: 8500
- - name: consul-join
- nodePort: {{ .Values.nodePortPrefix }}71
- port: 8301
- protocol: TCP
- targetPort: 8301
- selector:
- app: consul-server
- type: {{ .Values.service.type | quote }}
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ command:
+ - /bin/sh
+ - "-c"
+ - |
+ cp /tmp/consul/config/* /consul/config
+ /usr/local/bin/docker-entrypoint.sh agent -client 0.0.0.0 -enable-script-checks -retry-join {{ .Values.consulServer.nameOverride }}
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /tmp/consul/config
+ name: consul-agent-config
+ - mountPath: /consul/scripts
+ name: consul-agent-scripts-config
+ - mountPath: /consul/certs
+ name: consul-agent-certs-config
+ volumes:
+ - configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ name: consul-agent-config
+ - configMap:
+ name: {{ include "common.fullname" . }}-scripts-configmap
+ defaultMode: 0755
+ name: consul-agent-scripts-config
+ - secret:
+ secretName: {{ include "common.fullname" . }}-certs-secret
+ name: consul-agent-certs-config
--- /dev/null
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-certs-secret
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/consul-agent-config/certs/*").AsSecrets . | indent 2 }}
# 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.
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
-nsPrefix: "onap"
-nodePortPrefix: 302
-consulserverRegistry: "docker.io/consul:1.0.6"
-consulagentRegistry: "oomk8s/consul:1.0.0"
-consulAgentReplicas: 1
-consulServerReplicas: 3
-service:
- type: NodePort
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: oomk8s/consul:1.0.0
+pullPolicy: Always
+
+#subchart name
+consulServer:
+ nameOverride: consul-server
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 90
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 90
+ periodSeconds: 10
+
+service: {}
+
+ingress:
+ enabled: false
+
+resources: {}
.project
.idea/
*.tmproj
-dcae-parameters-sample.yaml
\ No newline at end of file
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# limitations under the License.
apiVersion: v1
-description: DCAE Generation 2 bootstrap container
+description: ONAP DCAE Gen2
name: dcaegen2
-version: 1.1.0
+version: 2.0.0
--- /dev/null
+make-dmaap:
+ cd charts && helm dep up dcae-bootstrap
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+description: ONAP DCAE Bootstrap
+name: dcae-bootstrap
+version: 2.0.0
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: postgres
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{
+ "namespace" : "{{ if .Values.dcae_ns }}{{ .Values.dcae_ns}}{{ else }}{{include "common.namespace" . }}{{ end}}",
+ "consul_dns_name" : "{{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}",
+ "image_pull_secrets" : ["{{ include "common.namespace" . }}-docker-registry-key"],
+ "filebeat":
+ {
+ "log_path": "/var/log/onap",
+ "data_path": "/usr/share/filebeat/data",
+ "config_path": "/usr/share/filebeat/filebeat.yml",
+ "config_subpath": "filebeat.yml",
+ "image" : "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}",
+ "config_map" : "dcae-filebeat-configmap"
+ }
+}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+#TODO would like to make this conditional, as with the other input templates
+# but having template expansion issues trying to do that
+{{ if .Values.componentImages.config_binding_service }}
+cbs_image: {{ include "common.repository" . }}/{{ .Values.componentImages.config_binding_service }}
+{{ end }}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+{{ if .Values.componentImages.deployment_handler }}
+deployment_handler_image: {{ include "common.repository" . }}/{{ .Values.componentImages.deployment_handler }}
+{{ end }}
+application_config:
+ cloudify:
+ protocol: "http"
+ inventory:
+ protocol: "http"
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{
+{{ if .Values.componentImages.holmes_engine }}
+ "he_image" : '{{ include "common.repository" . }}/{{ .Values.componentImages.holmes_engine }}',
+{{ end }}
+ "msb_hostname": "{{ .Values.config.address.msb_discovery }}.{{include "common.namespace" . }}",
+ "dcae_CL_publish_url": "http://{{ .Values.config.address.message_router }}.{{include "common.namespace" . }}:3904/events/unauthenticated.DCAE_CL_OUTPUT",
+ "ves_fault_publish_url": "http://{{ .Values.config.address.message_router }}.{{include "common.namespace" . }}:3904/events/unauthenticated.SEC_FAULT_OUTPUT",
+ "pgaas_cluster_name" : "{{ .Values.postgres.service.name2 }}.{{include "common.namespace" . }}",
+ "database_name":"holmes"
+}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{
+{{ if .Values.componentImages.holmes_rules }}
+ "hr_image" : '{{ include "common.repository" . }}/{{ .Values.componentImages.holmes_rules }}',
+{{ end }}
+
+ "msb_hostname": "{{ .Values.config.address.msb_discovery }}.{{include "common.namespace" . }}",
+ "pgaas_cluster_name" : "{{ .Values.postgres.service.name2 }}.{{include "common.namespace" . }}",
+ "database_name":"holmes"
+}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+sdc_address: '{{ .Values.config.address.sdc }}.{{include "common.namespace" . }}:8443'
+sdc_uri: 'https://{{ .Values.config.address.sdc }}.{{include "common.namespace" . }}:8443'
+sdc_user: "dcae"
+sdc_password: !!str Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+sdc_environment_name: "AUTO"
+sdc_msg_bus_address: '{{ .Values.config.address.message_router }}.{{include "common.namespace" . }}'
+postgres_user_inventory: "postgres"
+postgres_password_inventory: "onap123"
+{{ if .Values.componentImages.service_change_handler }}
+service_change_handler_image: '{{ include "common.repository" . }}/{{ .Values.componentImages.service_change_handler }}'
+{{ end }}
+{{ if .Values.componentImages.inventory }}
+inventory_image: '{{ include "common.repository" . }}/{{ .Values.componentImages.inventory }}'
+{{ end }}
--- /dev/null
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+k8s_pgaas_instance_fqdn: {{ .Values.postgres.service.name2 }}.{{include "common.namespace" . }}
+k8s_initial_password: {{ .Values.postgres.config.pgRootPassword }}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{{ if .Values.componentImages.policy_handler }}
+policy_handler_image: {{ include "common.repository" . }}/{{ .Values.componentImages.policy_handler }}
+{{ end }}
+application_config:
+ policy_handler :
+ # parallelize the getConfig queries to policy-engine on each policy-update notification
+ thread_pool_size : 4
+
+ # parallelize requests to policy-engine and keep them alive
+ pool_connections : 20
+
+ # list of policyName prefixes (filters) that DCAE-Controller handles (=ignores any other policyName values)
+ scope_prefixes : ["DCAE.Config_"]
+
+ # retry to getConfig from policy-engine on policy-update notification
+ policy_retry_count : 5
+ policy_retry_sleep : 5
+
+ # policy-engine config
+ # These are the url of and the auth for the external system, namely the policy-engine (PDP).
+ # We obtain that info manually from PDP folks at the moment.
+ # In long run we should figure out a way of bringing that info into consul record
+ # related to policy-engine itself.
+ policy_engine :
+ url : "http://{{ .Values.config.address.policy_pdp }}.{{include "common.namespace" . }}:8081"
+ path_pdp : "/pdp/"
+ path_api : "/pdp/api/"
+ headers :
+ Accept : "application/json"
+ "Content-Type" : "application/json"
+ ClientAuth : "cHl0aG9uOnRlc3Q="
+ Authorization : "Basic dGVzdHBkcDphbHBoYTEyMw=="
+ Environment : "TEST"
+ target_entity : "policy_engine"
+ # name of deployment-handler service in consul for policy-handler to direct the policy-updates to
+ deploy_handler : "deployment_handler"
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{{ if .Values.componentImages.tca }}
+tag_version: {{ include "common.repository" . }}/{{ .Values.componentImages.tca }}
+{{ end }}
+dmaap_host: {{ .Values.config.address.message_router }}.{{include "common.namespace" . }}
+consul_host: {{ .Values.config.address.consul.host }}.{{include "common.namespace" . }}
+cbs_host: config-binding-service
+enableRedisCaching: {{ .Values.config.redisCaching }}
+{{ if .Values.config.redisHosts }}
+redisHosts: {{ .Values.config.redisHosts }}
+{{ end }}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{{ if .Values.componentImages.ves }}
+tag_version: {{ include "common.repository" . }}/{{ .Values.componentImages.ves }}
+{{ end }}
+external_port : "30235"
+ves_other_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.SEC_OTHER_OUTPUT/"
+ves_heartbeat_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT/"
+ves_fault_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.SEC_FAULT_OUTPUT/"
+ves_measurement_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT/"
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dcae-config
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dcae-inputs
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/inputs/*").AsConfig . | indent 2 }}
+
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ completions: 1
+{{/* backoffLimit: 0*/}}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ image: {{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - dcae-cloudify-manager
+ - --container-name
+ - consul-server
+ - --container-name
+ - msb-discovery
+ - --container-name
+ - kube2msb
+ - "-t"
+ - "15"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /inputs
+ name: {{ include "common.fullname" . }}-dcae-inputs
+ - mountPath: /dcae-configs
+ name: {{ include "common.fullname" . }}-dcae-config
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ env:
+ - name: CMADDR
+ value: {{ .Values.config.address.cm }}
+ - name: CMPASS
+ valueFrom:
+ secretKeyRef:
+ name: {{ include "common.name" . }}-cmpass
+ key: password
+ - name: CONSUL
+ value: {{ .Values.config.address.consul.host }}:{{ .Values.config.address.consul.port }}
+ - name: DCAE_NAMESPACE
+ value: {{ .Values.dcae_ns | default "" }}
+ - name: ONAP_NAMESPACE
+ value: {{ include "common.namespace" . }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-dcae-inputs
+ configMap:
+ name: {{ include "common.fullname" . }}-dcae-inputs
+ - name: {{ include "common.fullname" . }}-dcae-config
+ configMap:
+ name: {{ include "common.fullname" . }}-dcae-config
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.name" . }}-cmpass
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ password: YWRtaW4=
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+ # Addresses of ONAP components
+ address:
+ consul:
+ host: consul-server
+ port: 8500
+ cm: dcae-cloudify-manager
+ message_router: message-router
+ msb_discovery: msb-discovery
+ policy_pdp: pdp
+ sdc: sdc-be
+ # redisCaching is a string not a boolean!
+ redisCaching: "false"
+
+# postgres values--overriding defaults in the postgres subchart
+postgres:
+ nameOverride: dcae-db
+ service:
+ name: dcae-postgres
+ name2: dcae-pg-primary
+ name3: dcae-pg-replica
+ container:
+ name:
+ primary: dcae-pg-primary
+ replica: dcae-pg-replica
+ config:
+ pgPrimaryPassword: onapdemodb
+ pgRootPassword: onapdemodb
+ persistence:
+ mountSubPath: dcae/data
+ mountInitPath: dcae
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.1.10
+
+# DCAE component images to be deployed via Cloudify Manager
+# Use to override default setting in blueprints
+componentImages:
+ #TODO for further investigation: input template expansion issues if we comment this out
+ config_binding_service: onap/org.onap.dcaegen2.platform.configbinding:latest
+ deployment_handler: onap/org.onap.dcaegen2.platform.deployment-handler:latest
+ holmes_engine: onap/holmes/engine-management:latest
+ holmes_rules: onap/holmes/rule-management:latest
+ inventory: onap/org.onap.dcaegen2.platform.inventory-api:latest
+ policy_handler: onap/org.onap.dcaegen2.platform.policy-handler:latest
+ service_change_handler: onap/org.onap.dcaegen2.platform.servicechange-handler:latest
+ tca: onap/org.onap.dcaegen2.deployments.tca-cdap-container:latest
+ ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:latest
+
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "onap"
+
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+description: ONAP DCAE Cloudify Manager
+name: dcae-cloudify-manager
+version: 2.0.0
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+# DCAE Cloudify Manager Chart
+
+This chart is used to deploy a containerized version of
+[Cloudify Manager](http://docs.getcloudify.org/4.3.0/intro/cloudify-manager/),
+the orchestration tool used by DCAE. DCAE uses Cloudify Manager ("CM") to
+deploy the rest of the DCAE platform as well to deploy DCAE monitoring and
+analytics services dynamically, in response to network events such as VNF startups.
+
+Deployment of CM is the first of two steps in deploying DCAE into ONAP. After this chart
+brings up CM, a second chart (the "bootstrap" chart) installs some plugin extensions onto CM
+and uses CM to deploy some DCAE components.
+
+## Prerequisites
+The chart requires one Kubernetes secret to be available in the namespace where it is
+being deployed:
+ - `<namespace_name>-docker-registry-key`, the docker registry secret needed to pull images
+ from the Docker repository. This is the same secret used by other OOM charts.
+
+## DCAE Namespace
+DCAE will use CM deploy a number of containers into the ONAP Kubernetes cluster. In a production
+environment, DCAE's dynamic deployment of monitoring and analytics services could result in dozens
+of containers being launched. This chart allows the configuration, through the `dcae_ns` property
+in the `values.yaml` of a separate namespace used by CM when it needs to deploy containers into
+Kubernetes. If `dcae_ns` is set, this chart will:
+ - create the namespace.
+ - create the Docker registry key secret in the namespace.
+ - create some Kubernetes `Services` (of the `ExternalName` type) to map some addresses from the common namespace into the DCAE namespace.
+
+## Use of Consul
+DCAE uses [Consul](http://consul.io) to store configuration data for DCAE components. In R1, DCAE
+deployed its own Consul cluster. In R2, DCAE will use the Consul server deployed by OOM.
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+[consul]
+address={{ .Values.config.address.consul.host }}:{{ .Values.config.address.consul.port }}
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
+
+logging:
+ level: debug
+
+ # enable file rotation with default configuration
+ to_files: true
+
+ # do not log to syslog
+ to_syslog: false
+
+ files:
+ path: /usr/share/filebeat/logs
+ name: mybeat.log
+ keepfiles: 7
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: dcae-filebeat-configmap
+ namespace: {{include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+{{ if .Values.dcae_ns }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: dcae-filebeat-configmap
+ namespace: {{ .Values.dcae_ns }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+{{ end }}
+
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /opt/onap/config.txt
+ subPath: config.txt
+ name: {{ include "common.fullname" .}}-config
+ readOnly: true
+ - mountPath: /secret
+ name: dcae-token
+ readOnly: true
+ - mountPath: /sys/fs/cgroup
+ name: {{ include "common.fullname" . }}-cgroup
+ readOnly: true
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ securityContext:
+ privileged: True
+ lifecycle:
+ postStart:
+ exec:
+ command:
+ - bash
+ - "-c"
+ - |
+ set -ex
+ mkdir -p /var/run/secrets/kubernetes.io/
+ ln -s /secret /var/run/secrets/kubernetes.io/serviceaccount
+ volumes:
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ - name: dcae-token
+ secret:
+ secretName: dcae-token
+ - name: {{ include "common.fullname" . }}-cgroup
+ hostPath:
+ path: /sys/fs/cgroup
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{{ if .Values.dcae_ns}}
+# Create the namespace
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: {{ .Values.dcae_ns }}
+spec:
+ finalizers:
+ - kubernetes
+{{ end }}
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+{{ if .Values.dcae_ns}}
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.namespace" . }}-docker-registry-key
+ namespace: {{ .Values.dcae_ns }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ .dockercfg: {{ include "common.repository.secret" . }}
+type: kubernetes.io/dockercfg
+---
+{{ end }}
+# Copy of the API token secret, needed to work around /var/run/secrets mount problem
+apiVersion: v1
+kind: Secret
+metadata:
+ name: dcae-token
+ namespace: {{ include "common.namespace" . }}
+ annotations:
+ kubernetes.io/service-account.name: default
+type: kubernetes.io/service-account-token
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+{{ if .Values.dcae_ns}}
+---
+# Make consul visible inside DCAE component namespace under a well-known name
+apiVersion: v1
+kind: Service
+metadata:
+ name: consul
+ namespace: {{ .Values.dcae_ns }}
+spec:
+ type: ExternalName
+ externalName: {{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}.svc.cluster.local
+---
+# Make Cloudify Manager visible inside DCAE component namespace under a well-known name
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ .Values.dcae_ns }}
+spec:
+ type: ExternalName
+ externalName: {{ .Values.service.name }}.{{ include "common.namespace" . }}.svc.cluster.local
+{{ end }}
+---
+# Provide alternate name for consul in common namespace to support CM plugin discovery
+apiVersion: v1
+kind: Service
+metadata:
+ name: consul
+ namespace: {{ include "common.namespace" . }}
+spec:
+ type: ExternalName
+ externalName: {{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}.svc.cluster.local
+---
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ repositoryCred:
+ user: docker
+ password: docker
+
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+ # Addresses of other ONAP entities
+ address:
+ consul:
+ host: consul-server
+ port: 8500
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.cm-container:latest
+pullPolicy: Always
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: dcae-cloudify-manager
+ externalPort: 80
+ internalPort: 80
+
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "dcae"
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+
+apiVersion: v1
+description: ONAP DCAE Health Check
+name: dcae-healthcheck
+version: 2.0.0
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: DCAE_NAMESPACE
+ value: {{ .Values.dcae_ns }}
+ - name: ONAP_NAMESPACE
+ value: {{ include "common.namespace" . }}
+ - name: HELM_RELEASE
+ value: {{ .Release.Name }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+service:
+ name: dcae-healthcheck
+ internalPort: 80
+ externalPort: 80
+ type: ClusterIP
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.healthcheck-container:1.1.0
+
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "onap"
+
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP DCAE Redis
+name: dcae-redis
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+#!/bin/bash
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+
+(if [[ "$HOSTNAME" == *{{.Chart.Name}}-0 ]]; then
+ echo "delay by 10 seconds for redis server starting"
+ sleep 10
+
+ NODES=""
+ echo "====> wait for all {{.Values.replicaCount}} redis pods up"
+ while [ "$(echo $NODES | wc -w)" -lt {{.Values.replicaCount}} ]
+ do
+ echo "======> $(echo $NODES |wc -w) / {{.Values.replicaCount}} pods up"
+ sleep 5
+ RESP=$(wget -vO- --ca-certificate /var/run/secrets/kubernetes.io/serviceaccount/ca.crt --header "Authorization
+: Bearer $(</var/run/secrets/kubernetes.io/serviceaccount/token)" https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_PORT
+_443_TCP_PORT/api/v1/namespaces/{{.Release.Namespace}}/pods?labelSelector=app={{.Chart.Name}})
+
+ IPS=$(echo $RESP | jq -r '.items[].status.podIP')
+ IPS2=$(echo $IPS | sed -e 's/[a-zA-Z]*//g')
+ echo "======> IPs: ["$IPS2"]"
+ NODES=""
+ for I in $IPS2; do NODES="$NODES $I:{{.Values.service.externalPort}}"; done
+ echo "======> nodes: ["$NODES"]"
+ done
+ echo "====> all {{.Values.replicaCount}} redis cluster pods are up. wait 10 seconds before the next step"; echo
+ sleep 10
+
+ echo "====> Configure the cluster"
+
+ # $NODES w/o quotes
+ echo "======> nodes: [$(echo $NODES |paste -s)]"
+ redis-trib create --replicas 1 $(echo $NODES |paste -s)
+fi ) &
+
+redis-server /conf/redis.conf
+
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+ redis.conf: |+
+ cluster-enabled yes
+ cluster-require-full-coverage no
+ cluster-node-timeout 15000
+ cluster-config-file /data/nodes.conf
+ cluster-migration-barrier 1
+ appendonly yes
+ protected-mode no
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-scripts
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/redis/scripts/*").AsConfig . | indent 2 }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}0
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}1
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}2
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}2
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}3
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}3
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}4
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}4
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}5
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}5
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}6
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}6
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}7
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}7
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}8
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}8
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}9
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ storageClassName: manual
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}9
+
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ .Values.service.name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /bin/sh
+ - -c
+ - |
+ /opt/scripts/redis-cluster-config.sh
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - sh
+ - -c
+ - "redis-cli -h $(hostname) ping"
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /conf
+ name: {{ include "common.fullname" . }}-config
+ - mountPath: /data
+ name: {{ include "common.fullname" . }}-data
+ - mountPath: /opt/scripts
+ name: {{ include "common.fullname" . }}-scripts
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: redis.conf
+ path: redis.conf
+ - name: {{ include "common.fullname" . }}-scripts
+ configMap:
+ name: {{ include "common.fullname" . }}-scripts
+ defaultMode: 0755
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: manual
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.redis-cluster-container:latest
+pullPolicy: Always
+
+# application configuration
+# Example:
+config: {}
+
+# default number of instances
+replicaCount: 6
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ timeoutSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 15
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: dcae-redis
+ portName: client
+ externalPort: 6379
+ internalPort: 6379
+ nodePort: 86
+ portName2: gossip
+ externalPort2: 16379
+ internalPort2: 16379
+ nodePort2: 87
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ accessMode: ReadWriteOnce
+ size: 10Mi
+ mountPath: /dockerdata-nfs
+ mountSubPath: redis/data
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-# UUID of the OpenStack"s CentOS 7 cloud VM image
-# If your Openstack does not have a CentOS 7 cloud image, you will have to add one.
-centos7image_id: '52d4ea09-cc69-4a9a-9961-938a3282d209'
-# UUID of the OpenStack"s Ubuntu 16.04 VM image
-# If your Openstack does not have a buntu 16.04 cloud image, you will have to add one.
-ubuntu1604image_id: '97bbe637-5d42-419a-a2c7-beff33ffa23c'
-# ID of the OpenStack"s VM flavor to be used by DCAEGEN2 VMs (m1.medium/m1.large)
-flavor_id: '4'
-# UUID of the OpenStack"s security group to be used for DCAEGEN2 VMs
-security_group: 'abc0687d-34ab-4d37-8fe8-4b544d94ba71'
-# The name of the OpenStack network where public IP addresses and floating IPs are allocated from
-# This must use the name and not the UUID. The name must be unique otherwise the installer fails
-public_net: 'public'
-# The name of the OpenStack network where private IP addresses are allocated from
-private_net: 'onap_oam'
-# Group header for OpenStack Keystone parameters
-openstack:
- # User name
- username: 'dev'
- # Password
- password: 'dev'
- # Name of the OpenStack tenant/project where DCAEGEN2 VMs are deployed
- tenant_name: 'dev'
- # Openstack authentication API URL, for example 'https://horizon.playground.onap.org:5000/v2.0'
- auth_url: 'http://1.2.3.4:5000/v2.0'
- # Name of the OpenStack region where DCAEGEN2 VMs are deployed, for example 'RegionOne'
- region: 'RegionOne'
-# Name of the public key uploaded to OpenStack in the Prepration step
-keypair: 'dcae-g2'
-# Path to the private key within the conatiner (!! Do not change!!)
-key_filename: '/opt/dcae/key'
-# Prefix (location code) of all DCAEGEN2 VMs
-location_prefix: 'onapr1'
-# Domain name of the OpenStack tenant 'onapr1.playground.onap.org'
-location_domain: 'onap-dcaegen2'
-# Location of the raw artifact repo hosting additional boot scripts called by DCAEGEN2 VMs" cloud-init, for example: 'https://nexus.onap.org/service/local/repositories/raw/content'
-codesource_url: 'https://nexus.onap.org/content/sites/raw'
-# Path to the boot scripts within the raw artifact repo, for example: 'org.onap.dcaegen2.deployments.scripts/releases/'
-codesource_version: 'org.onap.dcaegen2.deployments/releases/scripts/'
-
-
--- /dev/null
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableDcaegen2 }}
-apiVersion: v1
-kind: Pod
-metadata:
- name: {{ .Chart.Name }}
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- containers:
- - name: {{ .Chart.Name }}
- image: "{{ .Values.image.repository }}"
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- volumeMounts:
- - name: installer-config-mount
- mountPath: /opt/app/installer/config
- readOnly: true
- env:
- - name: LOCATION
- value: "{{ .Values.location }}"
- volumes:
- - name: installer-config-mount
- projected:
- sources:
- - secret:
- name: "{{ .Chart.Name }}-openstack-ssh-private-key"
- - configMap:
- name: "{{ .Chart.Name }}-config-inputs"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Never
-#{{ end }}
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 Amdocs, Bell Canada
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-location: dg2
-image:
- repository: nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.bootstrap:v1.1.0
- pullPolicy: Always
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+redis:
+ replicaCount: 6
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP DMaaP components
+name: dmaap
+version: 2.0.0
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+make-dmaap: make-bus-controller make-message-router
+
+make-bus-controller:
+ cd charts && helm dep up dmaap-bus-controller && helm lint dmaap-bus-controller
+
+make-message-router:
+ cd charts && helm dep up message-router && helm lint message-router
+
+clean:
+ @find . -type f -name '*.tgz' -delete
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Helm Chart for ONAP DMaaP Applications
+
+ONAP includes the following Kubernetes services:
+
+1) message-router - a message bus for applications
+2) dbc-api - an API to provision DMaaP resources
+
+# Service Dependencies
+
+message-router depends on AAF
+dbc-api depends on AAF and Postgresql.
\ No newline at end of file
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: a Helm chart to deploy ONAP DMaaP Bus Controller (aka dmaap-prov) in Kubernetes
+name: dmaap-bus-controller
+version: 2.0.0
--- /dev/null
+# Helm Chart for ONAP DMaaP Applications
+
+ONAP includes the following Kubernetes services available in ONAP Beijing Release (more expected in future):
+
+1) message-router - a message bus for applications
+2) dmaap-prov - an API to provision DMaaP resources
+
+# Service Dependencies
+
+message-router depends on AAF
+dmaap-prov depends on AAF and Postgresql.
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: postgres
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+DMAAPBC_WAIT_TO_EXIT=Y
+DMAAPBC_PG_ENABLED=true
+# Need to connect to PG primary service, designated by service.name2
+DMAAPBC_PGHOST={{ .Values.postgres.service.name2 }}
+DMAAPBC_PGDBNAME={{ .Values.postgres.config.pgDatabase }}
+DMAAPBC_PGCRED={{ .Values.postgres.config.pgUserPassword }}
+DMAAPBC_PGUSER={{ .Values.postgres.config.pgUserName }}
+DMAAPBC_MR_CNAME={{ .Values.dmaapMessageRouterService }}
+DMAAPBC_AAF_URL={{ .Values.aafURL }}
+DMAAPBC_TOPICMGR_USER={{ .Values.topicMgrUser }}
+DMAAPBC_TOPICMGR_PWD={{ .Values.topicMgrPwd }}
+DMAAPBC_ADMIN_USER={{ .Values.adminUser }}
+DMAAPBC_ADMIN_PWD={{ .Values.adminPwd }}
+
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }}-prov)
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-config
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.postgres.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ path: /webapi/info
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ readinessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ path: /webapi/info
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{ end -}}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: {{ include "common.name" . }}-config
+ mountPath: /opt/app/config/conf
+ subPath: buscontroller.env
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.name" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-config
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+pullPolicy: Always
+
+# application images
+repository: nexus3.onap.org:10001
+
+image: onap/dmaap/buscontroller:latest
+
+
+# application configuration
+dmaapMessageRouterService: message-router
+aafURL: https://aaf-authz/
+topicMgrUser: m23456@dmaapbc.onap.org
+topicMgrPwd: onapdemo
+adminUser: m12345@dmaapbc.onap.org
+adminPwd: onapdemo
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: false
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+
+service:
+ type: NodePort
+ name: dmaap-bc
+ portName: dmaap-bc
+ portName2: dmaap-bc
+ externalPort: 8080
+ internalPort: 8080
+ externalPort2: 8443
+ internalPort2: 8443
+ nodePort: 41
+ nodePort2: 42
+
+
+# application configuration override for postgres
+postgres:
+ nameOverride: dbc-pg
+ service:
+ name: dbc-postgres
+ name2: dbc-pg-primary
+ name3: dbc-pg-replica
+ container:
+ name:
+ primary: dbc-pg-primary
+ replica: dbc-pg-replica
+ config:
+ pgUserName: dmaap_admin
+ pgDatabase: dmaap
+ pgPrimaryPassword: onapdemodb
+ pgUserPassword: onapdemodb
+ pgRootPassword: onapdemodb
+ persistence:
+ mountSubPath: dbc/data
+ mountInitPath: dbc
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Message Router
+name: message-router
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Message Router Kafka Service
+name: message-router-kafka
+version: 2.0.0
+
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-seed-kafka-topics
+ command:
+ - /bin/bash
+ - -c
+ - >
+ if [ -d /tmp/topics/ECOMP-PORTAL-INBOX-0 ]; then
+ echo "nothing to do";
+ else
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/oom-projects/data-kafka/kafka-logs/* to /tmp/topics";
+ cp -var /tmp/gerrit/oom-topics/data-kafka/kafka-logs/* /tmp/topics;
+ echo "Done.";
+ fi
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /tmp/topics
+ name: kafka-data
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.zookeeper.name }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: KAFKA_ZOOKEEPER_CONNECT
+ value: "{{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}"
+ - name: KAFKA_ADVERTISED_HOST_NAME
+ value: "{{ include "common.servicename" . }}"
+ - name: KAFKA_BROKER_ID
+ value: "0"
+ - name: KAFKA_ADVERTISED_LISTENERS
+ value: PLAINTEXT://{{ include "common.name" . }}:{{.Values.service.internalPort}}
+ - name: KAFKA_ADVERTISED_PORT
+ value: "{{.Values.service.internalPort}}"
+ - name: KAFKA_PORT
+ value: "{{.Values.service.internalPort}}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/run/docker.sock
+ name: docker-socket
+ - mountPath: /kafka
+ name: kafka-data
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: docker-socket
+ hostPath:
+ path: /var/run/docker.sock
+ - name: kafka-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+ ubuntuInitRepository: registry.hub.docker.com
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: wurstmeister/kafka:1.1.0
+pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
+zookeeper:
+ name: message-router-zookeeper
+ port: 2181
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ # gerrit branch where the latest code is checked in
+ gerritBranch: master
+ # gerrit project where the latest code is checked in
+ gerritProject: http://gerrit.onap.org/r/dmaap/messagerouter/messageservice.git
+
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: message-router/data-kafka
+
+service:
+ type: NodePort
+ name: message-router-kafka
+ portName: message-router-kafka
+ internalPort: 9092
+ externalPort: 9092
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Dmaap Message Router Zookeeper Service
+name: message-router-zookeeper
+version: 2.0.0
+
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-seed-zookeeper-topics
+ command:
+ - /bin/bash
+ - -c
+ - >
+ if [ -d /tmp/topics/version-2 ]; then
+ echo "nothing to do";
+ else
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/oom-projects/data-zookeeper/* to /tmp/topics";
+ cp -var /tmp/gerrit/oom-topics/data-zookeeper/* /tmp/topics;
+ echo "Done.";
+ fi
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /tmp/topics
+ name: zookeeper-data
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/zookeeper-3.4.9/data
+ name: zookeeper-data
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: zookeeper-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuInitRepository: registry.hub.docker.com
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: wurstmeister/zookeeper:latest
+pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ # gerrit branch where the latest code is checked in
+ gerritBranch: master
+ # gerrit project where the latest code is checked in
+ gerritProject: http://gerrit.onap.org/r/dmaap/messagerouter/messageservice.git
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: message-router/data-zookeeper/
+
+service:
+ type: NodePort
+ name: message-router-zookeeper
+ portName: message-router-zookeeper
+ internalPort: 2181
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+###############################################################################
+##
+## Cambria API Server config
+##
+## - Default values are shown as commented settings.
+##
+
+##############################################################################
+##
+## HTTP service
+##
+## - 3904 is standard as of 7/29/14.
+#
+## Zookeeper Connection
+##
+## Both Cambria and Kafka make use of Zookeeper.
+##
+config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}
+
+
+###############################################################################
+##
+## Kafka Connection
+##
+## Items below are passed through to Kafka's producer and consumer
+## configurations (after removing "kafka.")
+## if you want to change request.required.acks it can take this one value
+kafka.metadata.broker.list={{.Values.kafka.name}}:{{.Values.kafka.port}}
+##kafka.request.required.acks=-1
+#kafka.client.zookeeper=${config.zk.servers}
+consumer.timeout.ms=100
+zookeeper.connection.timeout.ms=6000
+zookeeper.session.timeout.ms=6000
+zookeeper.sync.time.ms=2000
+auto.commit.interval.ms=1000
+fetch.message.max.bytes =1000000
+auto.commit.enable=false
+
+
+###############################################################################
+##
+## Secured Config
+##
+## Some data stored in the config system is sensitive -- API keys and secrets,
+## for example. to protect it, we use an encryption layer for this section
+## of the config.
+##
+## The key is a base64 encode AES key. This must be created/configured for
+## each installation.
+#cambria.secureConfig.key=
+##
+## The initialization vector is a 16 byte value specific to the secured store.
+## This must be created/configured for each installation.
+#cambria.secureConfig.iv=
+
+## Southfield Sandbox
+cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
+cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
+authentication.adminSecret=fe3cCompound
+#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
+#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
+
+
+###############################################################################
+##
+## Consumer Caching
+##
+## Kafka expects live connections from the consumer to the broker, which
+## obviously doesn't work over connectionless HTTP requests. The Cambria
+## server proxies HTTP requests into Kafka consumer sessions that are kept
+## around for later re-use. Not doing so is costly for setup per request,
+## which would substantially impact a high volume consumer's performance.
+##
+## This complicates Cambria server failover, because we often need server
+## A to close its connection before server B brings up the replacement.
+##
+
+## The consumer cache is normally enabled.
+#cambria.consumer.cache.enabled=true
+
+## Cached consumers are cleaned up after a period of disuse. The server inspects
+## consumers every sweepFreqSeconds and will clean up any connections that are
+## dormant for touchFreqMs.
+#cambria.consumer.cache.sweepFreqSeconds=15
+#cambria.consumer.cache.touchFreqMs=120000
+
+## The cache is managed through ZK. The default value for the ZK connection
+## string is the same as config.zk.servers.
+#cambria.consumer.cache.zkConnect=${config.zk.servers}
+
+##
+## Shared cache information is associated with this node's name. The default
+## name is the hostname plus the HTTP service port this host runs on. (The
+## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
+## which is not always adequate.) You can set this value explicitly here.
+##
+#cambria.api.node.identifier=<use-something-unique-to-this-instance>
+
+###############################################################################
+##
+## Metrics Reporting
+##
+## This server can report its metrics periodically on a topic.
+##
+#metrics.send.cambria.enabled=true
+#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
+#metrics.send.cambria.sendEverySeconds=60
+
+cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
+
+##############################################################################
+#100mb
+maxcontentlength=10000
+
+
+##############################################################################
+#AAF Properties
+msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
+msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
+enforced.topic.name.AAF=org.openecomp
+forceAAF=false
+transidUEBtopicreqd=false
+defaultNSforUEB=org.openecomp.dmaap.mr.ueb
+##############################################################################
+#Mirror Maker Agent
+msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
+msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
+msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
+msgRtr.mirrormaker.timeout=15000
+msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
+msgRtr.mirrormaker.consumergroup=mmagentserver
+msgRtr.mirrormaker.consumerid=1
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+basic_realm=openecomp.org
+basic_warn=TRUE
+
+cadi_loglevel=DEBUG
+#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
+cadi_keyfile=/appl/dmaapMR1/etc/keyfile
+# Configure AAF
+aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
+
+aaf_id=dgl@openecomp.org
+aaf_password=enc:f2u5br1mh29M02-
+aaf_timeout=5000
+aaf_clean_interval=1200000
+aaf_user_expires=60000
+aaf_high_count=1000000
+
+
+# The following properties are being set by the AJSC Container and should NOT need to be set here.
+AFT_LATITUDE=33.823589
+AFT_LONGITUDE=-84.366982
+AFT_ENVIRONMENT=AFTUAT
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-cadi-prop-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.kafka.name }}
+ - --container-name
+ - {{ .Values.zookeeper.name }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
+ subPath: MsgRtrApi.properties
+ name: appprops
+ - mountPath: /appl/dmaapMR1/etc/cadi.properties
+ subPath: cadi.properties
+ name: cadi
+ - mountPath: /appl/dmaapMR1/etc/keyfile
+ subPath: mykey
+ name: mykey
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: appprops
+ configMap:
+ name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
+ - name: cadi
+ configMap:
+ name: {{ include "common.fullname" . }}-cadi-prop-configmap
+ - name: mykey
+ secret:
+ secretName: {{ include "common.fullname" . }}-secret
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-secret
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.Files.Glob "resources/config/dmaap/mykey").AsSecrets | indent 2 }}
+type: Opaque
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "{{ include "common.servicename" . }}",
+ "version": "v1",
+ "url": "/",
+ "protocol": "REST",
+ "port": "{{.Values.service.internalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/dmaap/dmaap-mr:1.1.4
+pullPolicy: Always
+
+kafka:
+ name: message-router-kafka
+ port: 9092
+zookeeper:
+ name: message-router-zookeeper
+ port: 2181
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: message-router
+ portName: message-router
+ externalPort: 3904
+ nodePort: 27
+ externalPort2: 3905
+ nodePort2: 26
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP External System Register
name: esr
-version: 1.0.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP External System Register GUI
+name: esr-gui
+version: 2.0.0
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "aai-esr-gui",
+ "version": "v1",
+ "url": "/esr-gui",
+ "protocol": "UI",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"1",
+ "path":"/iui/aai-esr-gui"
+ }
+ ]'
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aai/esr-gui:1.1.0-SNAPSHOT
+pullPolicy: Always
+msbaddr: msb-iag.{{ include "common.namespace" . }}:80
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: esr-gui
+ internalPort: 8080
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableEsrServer }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: esr-esrserver
- name: esr-esrserver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "aai-esr-server",
- "version": "v1",
- "url": "/api/aai-esr-server/v1",
- "protocol": "REST",
- "port": "{{.Values.esrserver.port}}",
- "enable_ssl": true,
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: esr-esrserver
- port: {{.Values.esrserver.port}}
- selector:
- app: esr-esrserver
-#{{ end }}
-#{{ if not .Values.disableEsrGui }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: esr-esrgui
- name: esr-esrgui
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "aai-esr-gui",
- "version": "v1",
- "url": "/esr-gui",
- "protocol": "UI",
- "port": "{{.Values.esrgui.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: esr-esrgui
- port: {{.Values.esrgui.port}}
- selector:
- app: esr-esrgui
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-esr-filebeat
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-esr-esrserver-log
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/esrserver/logback.xml").AsConfig . | indent 2 }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /home/esr/works/logs
+ name: esr-server-logs
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /home/esr/works/logs
+ name: esr-server-logs
+ - mountPath: /usr/share/filebeat/data
+ name: esr-server-filebeat
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-esr-filebeat
+ - name: esr-server-logs
+ emptyDir: {}
+ - name: esr-server-filebeat
+ emptyDir: {}
+ - name: esrserver-log
+ configMap:
+ name: {{ include "common.fullname" . }}-esr-esrserver-log
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableesrgui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: esr-esrgui
- name: esr-esrgui
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: esr-esrgui
- template:
- metadata:
- labels:
- app: esr-esrgui
- name: esr-esrgui
- spec:
- containers:
- - image: {{ .Values.esrgui.image }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: esr-esrgui
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.esrgui.port }}
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: esr-esrserver
- name: esr-esrserver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: esr-esrserver
- template:
- metadata:
- labels:
- app: esr-esrserver
- name: esr-esrserver
- spec:
- containers:
- - name: esr-esrserver
- image: {{ .Values.esrserver.image }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- - mountPath: /home/esr/works/logs
- name: esr-server-logs
- ports:
- - containerPort: {{ .Values.esrserver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.esrserver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- - name: filebeat-onap-esr-server
- image: {{ .Values.filebeat.image }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- subPath: filebeat.yml
- name: filebeat-conf
- - mountPath: /home/esr/works/logs
- name: esr-server-logs
- - mountPath: /usr/share/filebeat/data
- name: esr-server-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: esr-filebeat-configmap
- - name: esr-server-logs
- emptyDir: {}
- - name: esr-server-filebeat
- emptyDir: {}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAaiAaiResources }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: esr-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableAaiAaiResources }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: esr-esrserver-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/esrserver/logback.xml").AsConfig . | indent 2 }}
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "aai-esr-server",
+ "version": "v1",
+ "url": "/api/aai-esr-server/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.internalPort}}",
+ "enable_ssl": true,
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+subChartsOnly:
+ enabled: true
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aai/esr-server:1.1.0-SNAPSHOT
pullPolicy: Always
-nodePortPrefix: 302
-msbaddr: msb-iag.{{ .Values.nsPrefix }}:80
-esrserver:
- image: nexus3.onap.org:10001/onap/aai/esr-server:v1.0.0
- port: 9518
- replicas: 1
-esrgui:
- image: nexus3.onap.org:10001/onap/aai/esr-gui:v1.0.0
- port: 8080
- replicas: 1
-filebeat:
- image: docker.elastic.co/beats/filebeat:5.5.0
+msbaddr: msb-iag.{{ include "common.namespace" . }}:80
+# application configuration
config:
logstashServiceName: log-ls
logstashPort: 5044
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: esr
+ internalPort: 9518
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
# name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
+ {{ if .Values.liveness.enabled }}
livenessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
+ {{ end }}
readinessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
# - key: application.properties
# path: application.properties
imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
#Example internal target port if required
#targetPort: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName | default "http" }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName | default "http" }}
{{- end}}
selector:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ repository: nexus3.onap.org:10001
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
initialDelaySeconds: 10
periodSeconds: 10
+#Example service definition with external, internal and node ports.
service:
- #Example service definition with external, internal and node ports.
+ # The default service name (exposed in the service.yaml) will be the same
+ # name as the chart. If the service name needs to be overriden (such as
+ # when a subchart is shared), uncomment the value below.
+ #name: <service-name-override>
+
#Services may use any combination of ports depending on the 'type' of
#service being defined.
type: NodePort
- name: <onap-app>
externalPort: <8080>
internalPort: <80>
nodePort: <replace with unused node port suffix eg. 23>
+ # optional port name override - default can be defined in service.yaml
+ #portName: http
ingress:
enabled: false
# By default, Elasticsearch will bind to the available loopback addresses and will scan ports 9300 to 9305 to try
# to connect to other nodes running on the same server.
#
-#discovery.zen.ping.unicast.hosts: ["elasticsearch.{{.Values.nsPrefix}}"
#$discovery.zen.ping.unicast.hosts
#
# This setting tells Elasticsearch to not elect a master unless there are enough master-eligible nodes
# If a range is specified, the node will bind to the first available port in the range.
# Defaults to 9300-9400.
# More info:
-transport.tcp.port: {{.Values.service.externalPortTcp}}
+transport.tcp.port: {{.Values.service.externalPort2}}
xpack.graph.enabled: false
#Set to false to disable X-Pack graph features.
ports:
- containerPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - containerPort: {{ .Values.service.internalPortTcp }}
- name: {{ .Values.service.name }}-tcp
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
{{- if eq .Values.liveness.enabled true }}
{{ end -}}
readinessProbe:
tcpSocket:
- port: {{ .Values.service.internalPortTcp }}
+ port: {{ .Values.service.internalPort2 }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
claimName: {{ include "common.fullname" . }}
- name: {{ include "common.fullname" . }}-logs
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPathLogs }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPathLogs }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
- {{ .Values.persistence.accessMode }}
persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
{{- end -}}
type: {{ .Values.service.type }}
ports:
{{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.externalPort }}
+ - port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.internalPortTcp }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPortTcp }}
- name: {{ .Values.service.name }}-tcp
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.externalPortTcp }}
- targetPort: {{ .Values.service.internalPortTcp }}
- name: {{ .Values.service.name }}-tcp
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
#################################################################
mountSubPathLogs: log
service:
- #Example service definition with external, internal and node ports.
- #Services may use any combination of ports depending on the 'type' of
- #service being defined.
- type: ClusterIP
+ type: NodePort
name: log-es
externalPort: 9200
internalPort: 9200
- externalPortTcp: 9300
- internalPortTcp: 9300
+ nodePort: 54
+ type2: ClusterIP
+ name2: log-es-tcp
+ externalPort2: 9300
+ internalPort2: 9300
+
ingress:
enabled: false
- containerPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
readinessProbe:
- tcpSocket:
+ httpGet:
+ path: "/"
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
+ timeoutSeconds: {{ .Values.readiness.timeoutSeconds }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
{{- if eq .Values.liveness.enabled true }}
livenessProbe:
- tcpSocket:
+ httpGet:
+ path: "/"
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
{{ end -}}
env:
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /usr/share/kibana/config/kibana.yml
+ - mountPath: /usr/share/kibana/config/
name: {{ include "common.fullname" . }}
- subPath: kibana.yml
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
persistence: {}
#################################################################
# probe configuration parameters
liveness:
- initialDelaySeconds: 120
+ initialDelaySeconds: 180
periodSeconds: 10
+ timeoutSeconds: 1
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
enabled: true
readiness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 180
periodSeconds: 10
+ timeoutSeconds: 1
service:
#Example service definition with external, internal and node ports.
filter {
+ grok {
+ break_on_match => false
+ match => {
+ "source" => ["/var/log/onap/(?<componentName>[^/]+)/",
+ "/var/log/onap/%{GREEDYDATA:componentLogFile}"
+ ]
+ }
+ }
+
# Filter for log4j xml events
if "</log4j:event>" in [message] {
+
+ #mutate { add_field => { "orgmsg_log4j" => "%{message}" } } # Copy of orginal msg for debug
+
#Filter to parse xml event and retrieve data
xml {
source => "message"
# Filter for logback events
else {
-# mutate { add_field => { "orgmsg" => "%{message}" } } # Copy of orginal msg for debug
+ #mutate { add_field => { "orgmsg" => "%{message}" } } # Copy of orginal msg for debug
mutate {
gsub => [
'message', '\t$', '\t'
]
}
+ # The grok below parses the message field for all current logback patterns used by oom components.
+ # Example logback pattern: %d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg
+ # Example grok pattern: %{TIMESTAMP_ISO8601:Timestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:message}
+ # Use the following command to find all logback patterns in oom directory: find oom -name "logback*xml" -exec grep "property.*attern.*value" {} \;|sort|uniq
grok {
- break_on_match => false
match => {
- "message" => ["%{TIMESTAMP_ISO8601:Timestamp}\t%{GREEDYDATA:Thread}\t%{SPACE}%{LOGLEVEL:loglevel}%{SPACE}\t%{JAVACLASS:Logger}\t(?:[^\t]+\t)*%{GREEDYDATA:message}",
- "(?<MDCs>.*\t)"
- ]
- "source" => ["/var/log/onap/(?<componentName>[^/]+)/",
- "/var/log/onap/%{GREEDYDATA:componentLogFile}"
- ]
+ "message" => [
+ "%{TIMESTAMP_ISO8601:Timestamp}\\t[%{GREEDYDATA:Thread}]\\t%{GREEDYDATA:loglevel}\\t%{JAVACLASS:Logger}\\t%{GREEDYDATA:MDCs}\\t%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:BeginTimestamp}\|%{TIMESTAMP_ISO8601:EndTimestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:ServiceInstanceId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:Unknown1}\|%{GREEDYDATA:ServiceName}\|%{GREEDYDATA:PartnerName}\|%{GREEDYDATA:TargetEntity}\|%{GREEDYDATA:TargetServiceName}\|%{GREEDYDATA:StatusCode}\|%{GREEDYDATA:ResponseCode}\|%{GREEDYDATA:ResponseDesc}\|%{UUID:InstanceUUID}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:AlertSeverity}\|%{IP:ServerIPAddress}\|%{GREEDYDATA:Timer}\|%{HOSTNAME:ServerFQDN}\|%{IPORHOST:RemoteHost}\|%{GREEDYDATA:Unknown2}\|%{GREEDYDATA:Unknown3}\|%{GREEDYDATA:Unknown4}\|%{GREEDYDATA:TargetVirtualEntity}\|%{GREEDYDATA:Unknown5}\|%{GREEDYDATA:Unknown6}\|%{GREEDYDATA:Unknown7}\|%{GREEDYDATA:Unknown8}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:BeginTimestamp}\|%{TIMESTAMP_ISO8601:EndTimestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:ServiceInstanceId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:Unknown1}\|%{GREEDYDATA:ServiceName}\|%{GREEDYDATA:PartnerName}\|%{GREEDYDATA:StatusCode}\|%{GREEDYDATA:ResponseCode}\|%{GREEDYDATA:ResponseDesc}\|%{UUID:InstanceUUID}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:AlertSeverity}\|%{IP:ServerIPAddress}\|%{GREEDYDATA:Timer}\|%{HOSTNAME:ServerFQDN}\|%{IPORHOST:RemoteHost}\|%{GREEDYDATA:Unknown2}\|%{GREEDYDATA:Unknown3}\|%{GREEDYDATA:Unknown4}\|%{GREEDYDATA:Unknown5}\|%{GREEDYDATA:Unknown6}\|%{GREEDYDATA:Unknown7}\|%{GREEDYDATA:Unknown8}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:ServiceInstanceId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:ServiceName}\|%{UUID:InstanceUUID}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:AlertSeverity}\|%{IP:ServerIPAddress}\|%{HOSTNAME:ServerFQDN}\|%{IPORHOST:RemoteHost}\|%{GREEDYDATA:Timer}\|\[%{GREEDYDATA:caller}\]\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{GREEDYDATA:RequestId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:ServiceName}\|%{GREEDYDATA:PartnerName}\|%{GREEDYDATA:TargetEntity}\|%{GREEDYDATA:TargetServiceName}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:ErrorCode}\|%{GREEDYDATA:ErrorDesc}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{GREEDYDATA:RequestId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:ClassName}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:message}",
+ "\[%{TIMESTAMP_ISO8601:Timestamp}\|%{LOGLEVEL:loglevel}\|%{GREEDYDATA:Logger}\|%{GREEDYDATA:Thread}\] %{GREEDYDATA:message}"
+ ]
}
overwrite => ["message"]
}
+ # The MDCs are key value pairs that are seperated by "," or "\t". Extra space characters are trimmed from the keys and values.
kv {
source => "MDCs"
- field_split => "\t"
+ field_split => ",\t"
trim_key => "\s"
trim_value => "\s"
remove_field => [ "MDCs" ]
}
+ if (![Timestamp] and [EndTimestamp]) {
+ mutate { add_field => { "Timestamp" => "%{EndTimestamp}" } }
+ }
date {
match => [ "Timestamp", "ISO8601", "yyyy-MM-dd HH:mm:ss,SSS" ]
target => "Timestamp"
}
- if [source] == "/var/log/onap/aai/aai-ml/metrics.log" {
- csv {
- source => "message"
- separator => "|"
- quote_char => "`"
- columns => ["Begin TS", "End TS", "DuplicateRequestID", "Unknown1", "threadID", "phys/virt server name", "service name", "Partner Name", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Unknown6", "Unknown7", "Log level", "Unknown8", "Unknown9", "Status code", "Server", "Unknown10", "Unknown11", "Unknown12", "Unknown13", "Unknown14", "Unknown15", "Unknown16", "Unknown17", "Unknown18", "message"]
- }
- }
- else if [source] == "/var/log/onap/aai/aai-ml/audit.log" {
- csv {
- source => "message"
- separator => "|"
- quote_char => "`"
- columns => ["Begin TS", "End TS", "DuplicateRequestID", "Unknown1", "threadID", "phys/virt server name", "service name", "Partner Name", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Log level", "Unknown6", "Unknown7", "Status code", "Server", "Unknown10", "Unknown11", "Unknown12", "Unknown13", "Unknown14", "Unknown15", "Unknown16", "Unknown17", "message"]
- }
- }
-
mutate {
- remove_field => ["DuplicateRequestID", "Unknown1", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Unknown6", "Unknown7", "Unknown8", "Unknown9", "Unknown10", "Unknown11", "Unknown12", "Unknown13", "Unknown14", "Unknown15", "Unknown16", "Unknown17", "Unknown18"]
+ remove_field => ["DuplicateRequestID", "Unknown1", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Unknown6", "Unknown7", "Unknown8"]
}
if ([source] == "/var/log/onap/sdc/sdc-be/audit.log") {
ports:
- containerPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - containerPort: {{ .Values.service.internalPortHttp }}
- name: {{ .Values.service.name }}-http
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
readinessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /usr/share/logstash/config/logstash.yml
- name: {{ include "common.fullname" . }}
- subPath: logstash.yml
- - mountPath: /usr/share/logstash/pipeline/onap-pipeline.conf
- name: {{ include "common.fullname" . }}
- subPath: onap-pipeline.conf
+ - mountPath: /usr/share/logstash/config/
+ name: {{ include "common.fullname" . }}-config
+ - mountPath: /usr/share/logstash/pipeline/
+ name: {{ include "common.fullname" . }}-pipeline
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
- name: localtime
hostPath:
path: /etc/localtime
- - name: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-config
configMap:
name: {{ include "common.fullname" . }}
items:
- key: logstash.yml
path: logstash.yml
+ - name: {{ include "common.fullname" . }}-pipeline
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
- key: onap-pipeline.conf
path: onap-pipeline.conf
imagePullSecrets:
type: {{ .Values.service.type }}
ports:
{{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.externalPort }}
+ - port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.internalPortHttp }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPortHttp }}
- name: {{ .Values.service.name }}-http
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.externalPortHttp }}
- targetPort: {{ .Values.service.internalPortHttp }}
- name: {{ .Values.service.name }}-http
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
persistence: {}
#################################################################
#Example service definition with external, internal and node ports.
#Services may use any combination of ports depending on the 'type' of
#service being defined.
- type: ClusterIP
+ type: NodePort
name: log-ls
externalPort: 5044
internalPort: 5044
- externalPortHttp: 9600
- internalPortHttp: 9600
+ nodePort: 55
+ type2: ClusterIP
+ name2: log-ls-http
+ externalPort2: 9600
+ internalPort2: 9600
ingress:
enabled: false
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-apiVersion: v1
-description: A Helm chart for Kubernetes
-name: message-router
-version: 0.1.0
+++ /dev/null
-###############################################################################
-##
-## Cambria API Server config
-##
-## - Default values are shown as commented settings.
-##
-
-###############################################################################
-##
-## HTTP service
-##
-## - 3904 is standard as of 7/29/14.
-#
-## Zookeeper Connection
-##
-## Both Cambria and Kafka make use of Zookeeper.
-##
-# config.zk.servers=zookeeper.namespace-placeholder:2181
-config.zk.servers=zookeeper:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
-
-
-###############################################################################
-##
-## Kafka Connection
-##
-## Items below are passed through to Kafka's producer and consumer
-## configurations (after removing "kafka.")
-## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=global-kafka:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
-##kafka.request.required.acks=-1
-#kafka.client.zookeeper=${config.zk.servers}
-consumer.timeout.ms=100
-zookeeper.connection.timeout.ms=6000
-zookeeper.session.timeout.ms=6000
-zookeeper.sync.time.ms=2000
-auto.commit.interval.ms=1000
-fetch.message.max.bytes =1000000
-auto.commit.enable=false
-
-
-###############################################################################
-##
-## Secured Config
-##
-## Some data stored in the config system is sensitive -- API keys and secrets,
-## for example. to protect it, we use an encryption layer for this section
-## of the config.
-##
-## The key is a base64 encode AES key. This must be created/configured for
-## each installation.
-#cambria.secureConfig.key=
-##
-## The initialization vector is a 16 byte value specific to the secured store.
-## This must be created/configured for each installation.
-#cambria.secureConfig.iv=
-
-## Southfield Sandbox
-cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
-cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
-authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
-
-
-###############################################################################
-##
-## Consumer Caching
-##
-## Kafka expects live connections from the consumer to the broker, which
-## obviously doesn't work over connectionless HTTP requests. The Cambria
-## server proxies HTTP requests into Kafka consumer sessions that are kept
-## around for later re-use. Not doing so is costly for setup per request,
-## which would substantially impact a high volume consumer's performance.
-##
-## This complicates Cambria server failover, because we often need server
-## A to close its connection before server B brings up the replacement.
-##
-
-## The consumer cache is normally enabled.
-#cambria.consumer.cache.enabled=true
-
-## Cached consumers are cleaned up after a period of disuse. The server inspects
-## consumers every sweepFreqSeconds and will clean up any connections that are
-## dormant for touchFreqMs.
-#cambria.consumer.cache.sweepFreqSeconds=15
-#cambria.consumer.cache.touchFreqMs=120000
-
-## The cache is managed through ZK. The default value for the ZK connection
-## string is the same as config.zk.servers.
-#cambria.consumer.cache.zkConnect=${config.zk.servers}
-
-##
-## Shared cache information is associated with this node's name. The default
-## name is the hostname plus the HTTP service port this host runs on. (The
-## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
-## which is not always adequate.) You can set this value explicitly here.
-##
-#cambria.api.node.identifier=<use-something-unique-to-this-instance>
-
-###############################################################################
-##
-## Metrics Reporting
-##
-## This server can report its metrics periodically on a topic.
-##
-#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
-#metrics.send.cambria.sendEverySeconds=60
-
-cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
-
-##############################################################################
-#100mb
-maxcontentlength=10000
-
-
-##############################################################################
-#AAF Properties
-msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
-msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
-enforced.topic.name.AAF=org.openecomp
-forceAAF=false
-transidUEBtopicreqd=false
-defaultNSforUEB=org.openecomp.dmaap.mr.ueb
-##############################################################################
-#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
-msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
-msgRtr.mirrormaker.consumergroup=mmagentserver
-msgRtr.mirrormaker.consumerid=1
+++ /dev/null
-basic_realm=openecomp.org
-basic_warn=TRUE
-
-cadi_loglevel=DEBUG
-#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
-cadi_keyfile=/appl/dmaapMR1/etc/keyfile
-# Configure AAF
-aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
-
-aaf_id=dgl@openecomp.org
-aaf_password=enc:f2u5br1mh29M02-
-aaf_timeout=5000
-aaf_clean_interval=1200000
-aaf_user_expires=60000
-aaf_high_count=1000000
-
-
-# The following properties are being set by the AJSC Container and should NOT need to be set here.
-AFT_LATITUDE=33.823589
-AFT_LONGITUDE=-84.366982
-AFT_ENVIRONMENT=AFTUAT
+++ /dev/null
-_sNOLphPzrU7L0L3oWv0pYwgV_ddGF1XoBsQEIAp34jfP-fGJFPfFYaMpDEZ3gwH59rNw6qyMZHk
-k-4irklvVcWk36lC3twNvc0DueRCVrws1bkuhOLCXdxHJx-YG-1xM8EJfRmzh79WPlPkbAdyPmFF
-Ah44V0GjAnInPOFZA6MHP9rNx9B9qECHRfmvzU13vJCcgTsrmOr-CEiWfRsnzPjsICxpq9OaVT_D
-zn6rNaroGm1OiZNCrCgvRkCUHPOOCw3j9G1GeaImoZNYtozbz9u4sj13PU-MxIIAa64b1bMMMjpz
-Upc8lVPI4FnJKg6axMmEGn5zJ6JUq9mtOVyPj__2GEuDgpx5H4AwodXXVjFsVgR8UJwI_BvS2JVp
-JoQk0J1RqXmAXVamlsMAfzmmbARXgmrBfnuhveZnh9ymFVU-YZeujdANniXAwBGI7c6hG_BXkH7i
-Eyf4Fn41_SV78PskP6qgqJahr9r3bqdjNbKBztIKCOEVrE_w3IM5r02l-iStk_NBRkj6cq_7VCpG
-afxZ2CtZMwuZMiypO_wOgbdpCSKNzsL-NH2b4b08OlKiWb263gz634KJmV5WEfCl-6eH-JUFbWOS
-JwQfActLNT2ZQPl2MyZQNBzJEWoJRgS6k7tPRO-zqeUtYYHGHVMCxMuMHGQcoilNNHEFeBCG_fBh
-yAKb9g9F86Cbx9voMLiyTX2T3rwVHiSJFOzfNxGmfN5JWOthIun_c5hEY1tLQ15BomzkDwk7BAj7
-VbRCrVD45B6xrmSTMBSWYmLyr6mnQxQqeh9cMbD-0ZAncE3roxRnRvPKjFFa208ykYUp2V83r_PJ
-fV5I9ZPKSjk9DwFyrjkcQQEYDhdK6IFqcd6nEthjYVkmunu2fsX0bIOm9GGdIbKGqBnpdgBO5hyT
-rBr9HSlZrHcGdti1R823ckDF0Ekcl6kioDr5NLIpLtg9zUEDRm3QrbX2mv5Zs8W0pYnOqglxy3lz
-bJZTN7oR7VasHUtjmp0RT9nLZkUs5TZ6MHhlIq3ZsQ6w_Q9Rv1-ofxfwfCC4EBrWKbWAGCf6By4K
-Ew8321-2YnodhmsK5BrT4zQ1DZlmUvK8BmYjZe7wTljKjgYcsLTBfX4eMhJ7MIW1kpnl8AbiBfXh
-QzN56Mki51Q8PSQWHm0W9tnQ0z6wKdck6zBJ8JyNzewZahFKueDTn-9DOqIDfr3YHvQLLzeXyJ8e
-h4AgjW-hvlLzRGtkCknjLIgXVa3rMTycseAwbW-mgdCqqkw3SdEG8feAcyntmvE8j2jbtSDStQMB
-9JdvyNLuQdNG4pxpusgvVso0-8NQF0YVa9VFwg9U6IPSx5p8FcW68OAHt_fEgT4ZtiH7o9aur4o9
-oYqUh2lALCY-__9QLq1KkNjMKs33Jz9E8LbRerG9PLclkTrxCjYAeUWBjCwSI7OB7xkuaYDSjkjj
-a46NLpdBN1GNcsFFcZ79GFAK0_DsyxGLX8Tq6q0Bvhs8whD8wlSxpTGxYkyqNX-vcb7SDN_0WkCE
-XSdZWkqTHXcYbOvoCOb_e6SFAztuMenuHWY0utX0gBfx_X5lPDFyoYXErxFQHiA7t27keshXNa6R
-ukQRRS8kMjre1U74sc-fRNXkXpl57rG4rgxaEX0eBeowa53KAsVvUAoSac2aC_nfzXrDvoyf9Xi3
-JpEZNhUDLpFCEycV4I7jGQ9wo9qNaosvlsr6kbLDNdb_1xrGVgjT3xEvRNJNPqslSAu-yD-UFhC3
-AmCdYUnugw_eEFqXCHTARcRkdPPvl2XsmEKY2IqEeO5tz4DyXQFaL-5hEVh6lYEU1EOWHk3UGIXe
-Vc5_Ttp82qNLmlJPbZvgmNTJzYTHDQ_27KBcp7IVVZgPDjVKdWqQvZ18KhxvfF3Idgy82LBZniFV
-IbtxllXiPRxoPQriSXMnXjh3XkvSDI2pFxXfEvLRn1tvcFOwPNCz3QfPIzYg8uYXN5bRt3ZOrR_g
-ZhIlrc7HO0VbNbeqEVPKMZ-cjkqGj4VAuDKoQc0eQ6X_wCoAGO78nPpLeIvZPx1X3z5YoqNA
\ No newline at end of file
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMessageRouterZookeeper }}
-apiVersion: v1
-kind: Service
-metadata:
- name: zookeeper
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: zookeeper
-spec:
- ports:
- - name: zookeeper1
- port: 2181
- selector:
- app: zookeeper
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: global-kafka
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: global-kafka
-spec:
- ports:
- - name: kafka1
- port: 9092
- selector:
- app: global-kafka
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMessageRouterDmaap }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: dmaap
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: dmaap
- version: 1.0.0
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "message-router",
- "version": "v1",
- "url": "/",
- "protocol": "REST",
- "port": "3904",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: mr1
- port: 3904
- nodePort: {{ .Values.nodePortPrefix }}27
- - name: mr2
- port: 3905
- nodePort: {{ .Values.nodePortPrefix }}26
- selector:
- app: dmaap
- type: NodePort
-#{{ end }}
\ No newline at end of file
+++ /dev/null
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-cadi-prop-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-msgrtrapi-prop-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-mykey-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/mykey").AsConfig . | indent 2 }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMessageRouterDmaap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-dmaap
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dmaapReplicas }}
- selector:
- matchLabels:
- app: dmaap
- template:
- metadata:
- labels:
- app: dmaap
- name: message-router-dmaap
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - global-kafka
- - --container-name
- - zookeeper
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaap-readiness
- containers:
- - image: {{ .Values.image.dmaap }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaap
- ports:
- - containerPort: 3904
- - containerPort: 3905
- readinessProbe:
- tcpSocket:
- port: 3904
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
- subPath: MsgRtrApi.properties
- name: appprops
- - mountPath: /appl/dmaapMR1/etc/cadi.properties
- subPath: cadi.properties
- name: cadi
- - mountPath: /appl/dmaapMR1/etc/keyfile
- subPath: mykey
- name: mykey
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: appprops
- configMap:
- name: mr-dmaap-msgrtrapi-prop-configmap
- - name: cadi
- configMap:
- name: mr-dmaap-cadi-prop-configmap
- - name: mykey
- configMap:
- name: mr-dmaap-mykey-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-{{ end }}
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-global-kafka
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.kafkaReplicas }}
- selector:
- matchLabels:
- app: global-kafka
- template:
- metadata:
- labels:
- app: global-kafka
- name: message-router-global-kafka
- spec:
- initContainers:
- - command:
- - bash
- args:
- - -c
- - "if [ -d /var/tmp/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/* /var/tmp/; fi"
- image: {{ .Values.image.config }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /var/tmp
- name: kafka-data
- name: kafka-primer
- - command:
- - /root/ready.py
- args:
- - --container-name
- - zookeeper
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: kafka-readiness
- containers:
- - image: {{ .Values.image.kafka }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: global-kafka
- ports:
- - containerPort: 9092
- readinessProbe:
- tcpSocket:
- port: 9092
- initialDelaySeconds: 5
- periodSeconds: 10
- env:
- - name: KAFKA_ZOOKEEPER_CONNECT
- value: "zookeeper.{{ .Values.nsPrefix }}:2181"
- - name: KAFKA_ADVERTISED_HOST_NAME
- value: "global-kafka"
- - name: KAFKA_BROKER_ID
- value: "1"
- - name: KAFKA_ADVERTISED_PORT
- value: "9092"
- - name: KAFKA_PORT
- value: "9092"
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/run/docker.sock
- name: docker-socket
- - mountPath: /kafka
- name: kafka-data
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: docker-socket
- hostPath:
- path: /var/run/docker.sock
- - name: kafka-data
- persistentVolumeClaim:
- claimName: message-router-kafka
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
+++ /dev/null
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-*/}}
-
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: message-router-kafka
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
-#{{ end }}
-#{{ if not .Values.disableMessageRouterZookeeper }}
----
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: message-router-zookeeper
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMessageRouterZookeeper }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-zookeeper
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.zookeeperReplicas }}
- selector:
- matchLabels:
- app: zookeeper
- template:
- metadata:
- labels:
- app: zookeeper
- name: message-router-zookeeper
- spec:
- initContainers:
- - command:
- - bash
- args:
- - -c
- - "if [ -d /var/tmp/version-2 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/* /var/tmp/; fi"
- image: {{ .Values.image.config }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /var/tmp
- name: zookeeper-data
- name: zookeeper-primer
- containers:
- - image: {{ .Values.image.zookeeper }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: zookeeper
- ports:
- - containerPort: 2181
- readinessProbe:
- tcpSocket:
- port: 2181
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/zookeeper-3.4.9/data
- name: zookeeper-data
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: zookeeper-data
- persistentVolumeClaim:
- claimName: message-router-zookeeper
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-dmaapReplicas: 1
-kafkaReplicas: 1
-zookeeperReplicas: 1
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- dmaap: attos/dmaap:latest
- kafka: wurstmeister/kafka:latest
- zookeeper: wurstmeister/zookeeper:latest
- config: oomk8s/config-init:2.0.0-SNAPSHOT
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-apiVersion: v1
-description: A Helm chart for Kubernetes
-name: mock
-version: 0.1.0
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMockSniroEmulator }}
-apiVersion: v1
-kind: Service
-metadata:
- name: sniro-emulator
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sniro-emulator
-spec:
- type: NodePort
- ports:
- - port: 80
- nodePort: {{ .Values.nodePortPrefix }}88
- targetPort: 9999
- protocol: TCP
- name: http
- selector:
- app: sniro-emulator
-#{{ end }}
\ No newline at end of file
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMockSniroEmulator }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sniro-emulator
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sniro-emulator
- replicas: 1
- template:
- metadata:
- labels:
- app: sniro-emulator
- name: sniro-emulator
- spec:
- containers:
- - image: "{{ .Values.image.onapmock }}:{{ .Values.image.tag }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sniro-emulator
- ports:
- - containerPort: 9999
- args: ["--verbose"]
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-image:
- onapmock: nexus3.onap.org:10001/onap/sniroemulator
- tag: latest
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- # TODO: Temporary command:
- command:
- - /bin/sh
- - -c
- - export AUTH_TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token); /bin/kube2msb --kube_master_url=${KUBE_MASTER_URL} --msb_url=${MSB_URL}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: KUBE_MASTER_URL
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
config:
routeLabels: "visualRange:1"
kubeMasterUrl: https://kubernetes.default:443
- discoveryUrl: http://{{.Release.Name}}-msb-discovery.{{include "common.namespace" .}}:10081
+ discoveryUrl: http://msb-discovery.{{include "common.namespace" .}}:10081
# default number of instances
replicaCount: 1
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
#################################################################
# Application configuration defaults.
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="msb" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="discovery" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
+ - mountPath: /usr/local/discover-works/logs
+ name: msb-discovery-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: msb-discovery-logs
+ - mountPath: /usr/share/filebeat/data
+ name: msb-discovery-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: msb-discovery-logs
+ emptyDir: {}
+ - name: msb-discovery-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/msb/msb_discovery:1.1.0-SNAPSHOT-latest
+image: onap/msb/msb_discovery:1.1.0-STAGING-latest
pullPolicy: Always
# application configuration
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="msb" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="discovery" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
- name: SDCLIENT_IP
- value: {{.Release.Name}}-msb-discovery.{{ include "common.namespace" . }}
+ value: msb-discovery.{{ include "common.namespace" . }}
- name: ROUTE_LABELS
value: {{ .Values.config.routeLabels }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
+ - mountPath: /usr/local/apiroute-works/logs
+ name: msb-discovery-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: msb-discovery-logs
+ - mountPath: /usr/share/filebeat/data
+ name: msb-discovery-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: msb-discovery-logs
+ emptyDir: {}
+ - name: msb-discovery-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/msb/msb_apigateway:1.1.0-SNAPSHOT-latest
+image: onap/msb/msb_apigateway:1.1.0-STAGING-latest
pullPolicy: Always
# application configuration
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="msb" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="discovery" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
- name: SDCLIENT_IP
- value: {{.Release.Name}}-msb-discovery.{{ include "common.namespace" . }}
+ value: msb-discovery.{{ include "common.namespace" . }}
- name: ROUTE_LABELS
value: {{ .Values.config.routeLabels }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
+ - mountPath: /usr/local/apiroute-works/logs
+ name: msb-discovery-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: msb-discovery-logs
+ - mountPath: /usr/share/filebeat/data
+ name: msb-discovery-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: msb-discovery-logs
+ emptyDir: {}
+ - name: msb-discovery-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/msb/msb_apigateway:1.1.0-SNAPSHOT-latest
+image: onap/msb/msb_apigateway:1.1.0-STAGING-latest
pullPolicy: Always
# application configuration
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="msb" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="discovery" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="msb" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="eag" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
\ No newline at end of file
--- /dev/null
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="msb" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="iag" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
\ No newline at end of file
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-apiVersion: v1
-description: A Helm chart for Kubernetes
-name: mso
-version: 1.1.0
+++ /dev/null
-#!/bin/sh
-# Copyright 2015 AT&T Intellectual Properties
-##############################################################################
-# Script to initialize the chef-repo branch and.chef
-#
-##############################################################################
-# Copy the certificates
-echo 'Copying the *.crt provided in /shared folder'
-cp --verbose /shared/*.crt /usr/local/share/ca-certificates
-update-ca-certificates
-
-echo 'Running in JBOSS'
-su - jboss
-
-DEBUG=''
-if [ "$JBOSS_DEBUG" = true ] ; then
- DEBUG="--debug"
-fi
-
-#Start the chef-solo if mso-docker.json contains some data.
-if [ -s /var/berks-cookbooks/${CHEF_REPO_NAME}/environments/mso-docker.json ]
-then
- echo "mso-docker.json has some configuration, replay the recipes."
- chef-solo -c /var/berks-cookbooks/${CHEF_REPO_NAME}/solo.rb -o recipe[mso-config::apih],recipe[mso-config::bpmn],recipe[mso-config::jra]
-else
- echo "mso-docker.json is empty, do not replay the recipes."
-fi
-
-JBOSS_PIDFILE=/tmp/jboss-standalone.pid
-$JBOSS_HOME/bin/standalone.sh ${DEBUG} -c standalone-full-ha-mso.xml &
-JBOSS_PID=$!
-# Trap common signals and relay them to the jboss process
-trap "kill -HUP $JBOSS_PID" HUP
-trap "kill -TERM $JBOSS_PID" INT
-trap "kill -QUIT $JBOSS_PID" QUIT
-trap "kill -PIPE $JBOSS_PID" PIPE
-trap "kill -TERM $JBOSS_PID" TERM
-if [ "x$JBOSS_PIDFILE" != "x" ]; then
- echo $JBOSS_PID > $JBOSS_PIDFILE
-fi
-# Wait until the background process exits
-WAIT_STATUS=128
-while [ "$WAIT_STATUS" -ge 128 ]; do
- wait $JBOSS_PID 2>/dev/null
- WAIT_STATUS=$?
- if [ "$WAIT_STATUS" -gt 128 ]; then
- SIGNAL=`expr $WAIT_STATUS - 128`
- SIGNAL_NAME=`kill -l $SIGNAL`
- echo "*** JBossAS process ($JBOSS_PID) received $SIGNAL_NAME signal ***" >&2
- fi
-done
-if [ "$WAIT_STATUS" -lt 127 ]; then
- JBOSS_STATUS=$WAIT_STATUS
-else
- JBOSS_STATUS=0
-fi
-if [ "$JBOSS_STATUS" -ne 10 ]; then
- # Wait for a complete shudown
- wait $JBOSS_PID 2>/dev/null
-fi
-if [ "x$JBOSS_PIDFILE" != "x" ]; then
- grep "$JBOSS_PID" $JBOSS_PIDFILE && rm $JBOSS_PIDFILE
-fi
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="ApiHandlerInfra"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="AppCAdapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="ASDCController"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="BPMN"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="RequestDB"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="NetworkAdapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="SDNCAdapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="TenantAdapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="vfcadapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="VnfAdapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
+++ /dev/null
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="WorkflowMessageAdapter"></property>
- <!-- log file names -->
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
-
- <property name="errorPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
-
- <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>
-
- <logger name="com.att.eelf.error" level="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
\ No newline at end of file
+++ /dev/null
-# Example MySQL config file for medium systems.
-#
-# This is for a system with memory 8G where MySQL plays
-# an important part, or systems up to 128M where MySQL is used together with
-# other programs (such as a web server)
-#
-# In this file, you can use all long options that a program supports.
-# If you want to know which options a program supports, run the program
-# with the "--help" option.
-
-# The following options will be passed to all MySQL clients
-##[client]
-##user = root
-##port = 3306
-##socket = //opt/app/mysql/mysql.sock
-
-# Here follows entries for some specific programs
-
-# The MySQL server
-[mysqld]
-##performance_schema
-
-slow_query_log =ON
-long_query_time =2
-slow_query_log_file =//var/lib/mysql/slow_query.log
-
-skip-external-locking
-explicit_defaults_for_timestamp = true
-skip-symbolic-links
-local-infile = 0
-key_buffer_size = 16M
-max_allowed_packet = 4M
-table_open_cache = 100
-sort_buffer_size = 512K
-net_buffer_length = 8K
-read_buffer_size = 256K
-read_rnd_buffer_size = 512K
-myisam_sort_buffer_size = 8M
-max_connections = 500
-lower_case_table_names = 1
-thread_stack = 256K
-thread_cache_size = 25
-query_cache_size = 8M
-query_cache_type = 0
-query_prealloc_size = 512K
-query_cache_limit = 1M
-
-# Password validation
-##plugin-load-add=simple_password_check.so
-##simple_password_check_other_characters=0
-
-# Audit Log settings
-plugin-load-add=server_audit.so
-server_audit=FORCE_PLUS_PERMANENT
-server_audit_file_path=//var/lib/mysql/audit.log
-server_audit_file_rotate_size=50M
-server_audit_events=CONNECT,QUERY,TABLE
-server_audit_logging=on
-
-# Don't listen on a TCP/IP port at all. This can be a security enhancement,
-# if all processes that need to connect to mysqld run on the same host.
-# All interaction with mysqld must be made via Unix sockets or named pipes.
-# Note that using this option without enabling named pipes on Windows
-# (via the "enable-named-pipe" option) will render mysqld useless!
-#
-#skip-networking
-
-# Replication Master Server (default)
-# binary logging is required for replication
-##log-bin=//var/lib/mysql/mysql-bin
-
-# binary logging format - mixed recommended
-binlog_format=row
-
-# required unique id between 1 and 2^32 - 1
-# defaults to 1 if master-host is not set
-# but will not function as a master if omitted
-
-# Replication Slave (comment out master section to use this)
-#
-# To configure this host as a replication slave, you can choose between
-# two methods :
-#
-# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
-# the syntax is:
-#
-# CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
-# MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
-#
-# where you replace <host>, <user>, <password> by quoted strings and
-# <port> by the master's port number (3306 by default).
-#
-# Example:
-#
-# CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
-# MASTER_USER='joe', MASTER_PASSWORD='secret';
-#
-# OR
-#
-# 2) Set the variables below. However, in case you choose this method, then
-# start replication for the first time (even unsuccessfully, for example
-# if you mistyped the password in master-password and the slave fails to
-# connect), the slave will create a master.info file, and any later
-# change in this file to the variables' values below will be ignored and
-# overridden by the content of the master.info file, unless you shutdown
-# the slave server, delete master.info and restart the slaver server.
-# For that reason, you may want to leave the lines below untouched
-# (commented) and instead use CHANGE MASTER TO (see above)
-#
-# required unique id between 2 and 2^32 - 1
-# (and different from the master)
-# defaults to 2 if master-host is set
-# but will not function as a slave if omitted
-#server-id = 2
-#
-# The replication master for this slave - required
-#master-host = <hostname>
-#
-# The username the slave will use for authentication when connecting
-# to the master - required
-#master-user = <username>
-#
-# The password the slave will authenticate with when connecting to
-# the master - required
-#master-password = <password>
-#
-# The port the master is listening on.
-# optional - defaults to 3306
-#master-port = <port>
-#
-# binary logging - not required for slaves, but recommended
-#log-bin=mysql-bin
-
-# Uncomment the following if you are using InnoDB tables
-##innodb_data_home_dir = //opt/app/mysql/data
-##innodb_data_file_path = ibdata1:20M:autoextend:max:32G
-##innodb_log_group_home_dir = //opt/app/mysql/iblogs
-# You can set .._buffer_pool_size up to 50 - 80 %
-# of RAM but beware of setting memory usage too high
-#innodb_buffer_pool_size = 6380M
-#innodb_additional_mem_pool_size = 2M
-# Set .._log_file_size to 25 % of buffer pool size
-innodb_log_file_size = 150M
-innodb_log_files_in_group = 3
-innodb_log_buffer_size = 8M
-#innodb_flush_log_at_trx_commit = 1
-innodb_lock_wait_timeout = 50
-innodb_autoextend_increment = 100
-expire_logs_days = 8
-open_files_limit = 2000
-transaction-isolation=READ-COMMITTED
-####### Galera parameters #######
-## Galera Provider configuration
-wsrep_provider=/usr/lib/galera/libgalera_smm.so
-wsrep_provider_options="gcache.size=2G; gcache.page_size=1G"
-## Galera Cluster configuration
-wsrep_cluster_name="MSO-automated-tests-cluster"
-wsrep_cluster_address="gcomm://"
-#wsrep_cluster_address="gcomm://mariadb1,mariadb2,mariadb3"
-##wsrep_cluster_address="gcomm://192.169.3.184,192.169.3.185,192.169.3.186"
-## Galera Synchronization configuration
-wsrep_sst_method=rsync
-#wsrep_sst_method=xtrabackup-v2
-#wsrep_sst_auth="sstuser:Mon#2o!6"
-## Galera Node configuration
-wsrep_node_name="mariadb1"
-##wsrep_node_address="192.169.3.184"
-wsrep_on=ON
-## Status notification
-#wsrep_notify_cmd=/opt/app/mysql/bin/wsrep_notify
-#######
-
-
-[mysqldump]
-quick
-max_allowed_packet = 16M
-
-[mysql]
-no-auto-rehash
-# Remove the next comment character if you are not familiar with SQL
-#safe-updates
-
-[myisamchk]
-key_buffer_size = 20971520
-
-##[mysqlhotcopy]
-##interactive-timeout
-##[mysqld_safe]
-##malloc-lib=//opt/app/mysql/local/lib/libjemalloc.so.1
-##log-error=//opt/app/mysql/log/mysqld.log
-
-general_log_file = /var/log/mysql/mysql.log
-general_log = 1
+++ /dev/null
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-# ===================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END============================================
-#
-# ECOMP and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-cd /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
-mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < create_mso_db-demo-vfw.sql
\ No newline at end of file
+++ /dev/null
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-# ===================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END============================================
-#
-# ECOMP and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-
-# TODO: update this script to work with the new DB schema
-
-# mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "UPDATE heat_environment SET ENVIRONMENT='parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE' where id=5;" mso_catalog
+++ /dev/null
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-LOCK TABLES `NETWORK_RESOURCE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` DISABLE KEYS */;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` ENABLE KEYS */;
-insert into NETWORK_RESOURCE (id, NETWORK_TYPE, VERSION_STR, ORCHESTRATION_MODE ,DESCRIPTION, TEMPLATE_ID, NEUTRON_NETWORK_TYPE, AIC_VERSION_MIN) values
-(1, "vlan",'1',"NEUTRON","Cool network",1,"BASIC","0");
-UNLOCK TABLES;
-
-LOCK TABLES `NETWORK_RECIPE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RECIPE` DISABLE KEYS */;
-INSERT INTO `NETWORK_RECIPE`(`NETWORK_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-('vlan','CREATE','1',NULL,'/active-bpel/services/REST/CreateNetwork',NULL,180,NULL),
-('vlan','DELETE','1',NULL,'/active-bpel/services/REST/DeleteNetwork',NULL,180,NULL);
-/*!40000 ALTER TABLE `NETWORK_RECIPE` ENABLE KEYS */;
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RECIPE` WRITE;
-INSERT INTO `VNF_RECIPE`(`ID`, `VNF_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-(100,'VPE','CREATE','1','','/active-bpel/services/REST/CreateGenericVNF','',180,'SDN-ETHERNET-INTERNET'),
-(101,'VPE','DELETE','1','','/active-bpel/services/REST/DeleteGenericVNF','',180,'SDN-ETHERNET-INTERNET');
-UNLOCK TABLES;
-
-LOCK TABLES `VF_MODULE` WRITE;
-INSERT INTO `VF_MODULE`(`ID`, `TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `MODEL_NAME`, `MODEL_VERSION`, `IS_BASE`, `VNF_RESOURCE_ID`) VALUES
-(100,'dns-servicetest/DNSResource-1::VF_DNS::module-1','1.0','VF_DNS::module-1','1.0','1','7'),
-(101,'dns-servicetest/DNSResource-1::Mog111..mog_psm..module-1','1.0','Mog111..mog_psm..module-1','1.0','1','7');
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RESOURCE` WRITE;
-INSERT INTO `VNF_RESOURCE`(`ID`, `VNF_TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `ORCHESTRATION_MODE`, `MODEL_VERSION`) VALUES
-(100,'dns-servicetest/DNSResource-1','1.0','VF_DNS::module-1','1.0');
-UNLOCK TABLES;
-
-DELETE FROM HEAT_TEMPLATE_PARAMS;
-DELETE FROM HEAT_TEMPLATE;
-DELETE FROM HEAT_ENVIRONMENT;
+++ /dev/null
-SOURCE ../../camunda/mariadb_engine_7.7.3-ee.sql
-
---
--- Create an admin user automatically for the cockpit
---
-SOURCE ../../camunda/mysql_create_camunda_admin.sql
-
---
--- Current Database: `mso_requests`
---
-
-DROP DATABASE IF EXISTS `mso_requests`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_requests` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_requests`;
-
-SOURCE ../../main-schemas/MySQL-Requests-schema.sql
-
---
--- Current Database: `mso_catalog`
---
-
-DROP DATABASE IF EXISTS `mso_catalog`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_catalog` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_catalog`;
-
-SOURCE ../../main-schemas/MySQL-Catalog-schema.sql
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','Contrail30-l2nodhcp','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network with L2NODHCP\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_allow_transit:\n type: boolean\n description: allow_transit for the VirtualNetwork\n default: True\n virtual_network_properties_forwarding_mode:\n type: string\n description: forwarding_mode for the VirtualNetwork\n default: l2\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n flood_unknown_unicast:\n type: boolean\n description: flood_unknown_unicast for the VirtualNetwork\n default: True\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n flood_unknown_unicast: { get_param: flood_unknown_unicast } \n virtual_network_properties:\n {\n virtual_network_properties_allow_transit: { get_param: virtual_network_properties_allow_transit },\n virtual_network_properties_forwarding_mode: { get_param: virtual_network_properties_forwarding_mode },\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf },\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','Contrail30-gndirect','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network for GNDIRECT\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n virtual_network_properties:\n {\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf }\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`,`NAME`,`VERSION`,`BODY`,`TIMEOUT_MINUTES`,`DESCRIPTION`,`CREATION_TIMESTAMP`,`ARTIFACT_CHECKSUM`) VALUES ('efee1d84-b8ec-11e7-abc4-cec278b6b50a','Generic NeutronNet','1','heat_template_version: 2013-05-23\n\ndescription:\n HOT template that creates a Generic Neutron Network\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_name:\n type: string\n description: Name of subnet network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_cidr:\n type: string\n description: CIDR of subnet network (e.g. core, dmz)\n default: 10.0.0.0/16\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n network:\n type: OS::Neutron::Net\n properties:\n name: {get_param: network_name }\n\n subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: network_subnet_name }\n network_id: { get_resource: network }\n cidr: { get_param: network_subnet_cidr }\n enable_dhcp: false\n',10,'Generic Neutron Template','2017-10-26 14:44:00', 'MANUAL RECORD');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','flood_unknown_unicast','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_allow_transit','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_forwarding_mode','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (1,'CONTRAIL_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (2,'CONTRAIL_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (3,'CONTRAIL_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (4,'CONTRAIL_SHARED','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (5,'CONTRAIL_SHARED','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (6,'CONTRAIL_SHARED','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (7,'CONTRAIL_EXTERNAL','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (8,'CONTRAIL_EXTERNAL','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (9,'CONTRAIL_EXTERNAL','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (10,'CONTRAIL30_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (11,'CONTRAIL30_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (12,'CONTRAIL30_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (13,'CONTRAIL30_MPSCE','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (14,'CONTRAIL30_MPSCE','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (15,'CONTRAIL30_MPSCE','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (16,'VID_DEFAULT','createInstance','VID_DEFAULT recipe to create network if no custom BPMN flow is found','/mso/async/services/CreateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (17,'VID_DEFAULT','updateInstance','VID_DEFAULT recipe to update network if no custom BPMN flow is found','/mso/async/services/UpdateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (18,'VID_DEFAULT','deleteInstance','VID_DEFAULT recipe to delete network if no custom BPMN flow is found','/mso/async/services/DeleteNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (19,'CONTRAIL30_L2NODHCP','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (20,'CONTRAIL30_L2NODHCP','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (21,'CONTRAIL30_L2NODHCP','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (22,'CONTRAIL30_GNDIRECT','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (23,'CONTRAIL30_GNDIRECT','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (24,'CONTRAIL30_GNDIRECT','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc36cc-a9fe-11e7-8b4b-0242ac120002','VID_DEFAULT','48cd56c8-a9fe-11e7-8b4b-0242ac120002','1.0','Default service for VID to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc3acd-a9fe-11e7-8b4b-0242ac120002','*','48ce2256-a9fe-11e7-8b4b-0242ac120002','1.0','Default service to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (1,'createInstance','1','VID_DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (2,'deleteInstance','1','VID_DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (3,'createInstance','1','DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (4,'deleteInstance','1','DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-
---
--- Custom Reciepe for the VoLTE service added temporarily
---
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('dfcd7471-16c7-444e-8268-d4c50d90593a','UUI_DEFAULT','dfcd7471-16c7-444e-8268-d4c50d90593a','1.0','Default service for UUI to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-23 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (11,'createInstance','1','Custom recipe to create E2E service-instance if no custom BPMN flow is found','/mso/async/services/CreateCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (12,'deleteInstance','1','Custom recipe to delete E2E service-instance if no custom BPMN flow is found','/mso/async/services/DeleteCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_GNDIRECT','4885c7a1-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_L2NODHCP','4885c198-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`,`AIC_VERSION_MIN` , `AIC_VERSION_MAX` ) VALUES ('Generic NeutronNet','efee1d84-b8ec-11e7-abc4-cec278b6b50a','2.0','NULL');
-
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,'*','VOLUME_GROUP',NULL,'CREATE',NULL,'1','Recipe Match All for','/mso/async/services/createCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,'*','VOLUME_GROUP',NULL,'DELETE',NULL,'1','Recipe Match All for','/mso/async/services/deleteCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,'*','VOLUME_GROUP',NULL,'UPDATE',NULL,'1','Recipe Match All for','/mso/async/services/updateCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,NULL,'VOLUME_GROUP',NULL,'CREATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/CreateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,NULL,'VOLUME_GROUP',NULL,'DELETE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/DeleteVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,NULL,'VOLUME_GROUP',NULL,'UPDATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/UpdateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'volumeGroup','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'volumeGroup','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (9,NULL,'volumeGroup','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (10,NULL,'vfModule','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (11,NULL,'vfModule','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (12,NULL,'vfModule','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-
---
--- Default Reciepe for the VNF componnets added start #SO-334, to unblock the VNF operations
---
-
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','createInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/CreateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','updateInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/UpdateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','deleteInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/DeleteVfModuleInfra','vfModule',NULL,180,NULL);
---
--- Default Reciepe for the VNF componnets added End
---
-
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,NULL,'CREATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/CreateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,NULL,'DELETE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/async/services//deleteGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,NULL,'UPDATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/updateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,'*','CREATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/CreateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,'*','DELETE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/DeleteVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,'*','UPDATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/UpdateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'createInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to create VNF if no custom BPMN flow is found','/mso/async/services/CreateVnfInfra',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'deleteInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to delete VNF if no custom BPMN flow is found','/mso/async/services/DeleteVnfInfra',NULL,180,'2017-10-05 18:52:03');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+++ /dev/null
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID1','base_vlb.env','1.0','BASE VLB ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_net_cidr: 192.168.10.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.211\n vdns_private_ip_1: 192.168.9.211\n vlb_name_0: zdfw1lb01lb01\n vdns_name_0: zdfw1lb01dns01\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID2','dnsscaling.env','1.0','DNS Scaling ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.222\n vdns_private_ip_1: 192.168.9.222\n vdns_name_0: zdfw1lb01dns02\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID1','base_vlb.yaml','1.0','Base VLB Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vLoadBalancer/vDNS demo app for OpenECOMP\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_net_cidr:\n type: string\n label: vLoadBalancer private network CIDR\n description: The CIDR of the vLoadBalancer private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vlb_name_0:\n type: string\n label: vLoadBalancer name\n description: Name of the vLoadBalancer\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n vlb_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: vlb_private_net_id }\n\n vlb_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: vlb_private_net_id }\n network_id: { get_resource: vlb_private_network }\n cidr: { get_param: vlb_private_net_cidr }\n\n vlb_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vlb_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vlb_private_0_port }\n - port: { get_resource: vlb_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__: { get_param: dcae_collector_ip }\n __local_private_ipaddr__: { get_param: vlb_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_lb_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vlb.sh\n chmod +x v_lb_init.sh\n chmod +x vlb.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n LOCAL_PUBLIC_IPADDR=$(ifconfig eth0 | grep \"inet addr\" | tr -s \' \' | cut -d\' \' -f3 | cut -d\':\' -f2)\n echo $LOCAL_PUBLIC_IPADDR > config/local_public_ipaddr.txt\n mv vlb.sh /etc/init.d\n update-rc.d vlb.sh defaults\n ./v_lb_init.sh\n\n vlb_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vlb_private_ip_0 }}]\n\n vlb_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vlb_private_ip_1 }}]\n\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID2','dnsscaling.yaml','1.0','DNS Scaling Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy a vDNS for OpenECOMP (scaling-up scenario)\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_param: key_name }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: vlb_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: vlb_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','dcae_collector_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','key_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','public_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','pub_key','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdsn_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vf_module_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_flavor_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_image_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vnf_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','webserver_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','dcae_collector_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','ecomp_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','key_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','public_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','pub_key','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdsn_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vf_module_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_flavor_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_image_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vnf_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','webserver_ip','\ 1','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','dns-service','585822c8-4027-4f84-ba50-e9248606f111','1.0','dns service for unit test','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `service_to_resource_customizations` (`SERVICE_MODEL_UUID`, `RESOURCE_MODEL_CUSTOMIZATION_UUID`, `MODEL_TYPE`, `CREATION_TIMESTAMP`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','302aa6be-a9fe-11e7-8b4b-0242ac120002','vnf','2017-10-05 18:51:28');
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f132','1.0','VF_RI1_DNS::module-1',NULL,1,'Artifact-UUID1',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group','585822c7-4027-4f84-ba50-e9248606f133','1.0','VF_RI1_DNS::module-2',NULL,0,'Artifact-UUID2',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('30316d81-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID1',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group');
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('303170ae-a9fe-11e7-8b4b-0242ac120002',NULL,0,0,NULL,NULL,'EnvArtifact-UUID2',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group');
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','30316d81-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','303170ae-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','dns service for unit test1707MIGRATED','2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f112','1.0','DNSResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','DNSResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:51:25','585822c7-4027-4f84-ba50-e9248606f131');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+++ /dev/null
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID3','base_vfw.env','1.0','base_vfw ENV file','parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID3','base_vfw.yaml','1.0','Base VFW Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vFirewall demo app for OpenECOMP\n\nparameters:\n vfw_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vfw_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n unprotected_private_net_id:\n type: string\n label: Unprotected private network name or ID\n description: Private network that connects vPacketGenerator with vFirewall\n protected_private_net_id:\n type: string\n label: Protected private network name or ID\n description: Private network that connects vFirewall with vSink\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n unprotected_private_net_cidr:\n type: string\n label: Unprotected private network CIDR\n description: The CIDR of the unprotected private network\n protected_private_net_cidr:\n type: string\n label: Protected private network CIDR\n description: The CIDR of the protected private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vfw_private_ip_0:\n type: string\n label: vFirewall private IP address towards the unprotected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator\n vfw_private_ip_1:\n type: string\n label: vFirewall private IP address towards the protected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vSink\n vfw_private_ip_2:\n type: string\n label: vFirewall private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vFirewall to communicate with ECOMP components\n vpg_private_ip_0:\n type: string\n label: vPacketGenerator private IP address towards the unprotected network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall\n vpg_private_ip_1:\n type: string\n label: vPacketGenerator private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with ECOMP components\n vsn_private_ip_0:\n type: string\n label: vSink private IP address towards the protected network\n description: Private IP address that is assigned to the vSink to communicate with the vFirewall\n vsn_private_ip_1:\n type: string\n label: vSink private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vSink to communicate with ECOMP components\n vfw_name_0:\n type: string\n label: vFirewall name\n description: Name of the vFirewall\n vpg_name_0:\n type: string\n label: vPacketGenerator name\n description: Name of the vPacketGenerator\n vsn_name_0:\n type: string\n label: vSink name\n description: Name of the vSink\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vFirewall Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n unprotected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: unprotected_private_net_id }\n\n protected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: protected_private_net_id }\n\n unprotected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: unprotected_private_network }\n cidr: { get_param: unprotected_private_net_cidr }\n\n protected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: protected_private_network }\n cidr: { get_param: protected_private_net_cidr }\n\n vfw_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vfw_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vfw_private_0_port }\n - port: { get_resource: vfw_private_1_port }\n - port: { get_resource: vfw_private_2_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__ : { get_param: dcae_collector_ip }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_firewall_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vfirewall.sh\n chmod +x v_firewall_init.sh\n chmod +x vfirewall.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo \"no\" > config/install.txt\n mv vfirewall.sh /etc/init.d\n sudo update-rc.d vfirewall.sh defaults\n ./v_firewall_init.sh\n\n vfw_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_0 }}]\n\n vfw_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_1 }}]\n\n vfw_private_2_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vfw_private_ip_2 }}]\n\n vpg_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vpg_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vpg_private_0_port }\n - port: { get_resource: vpg_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __fw_ipaddr__: { get_param: vfw_private_ip_0 }\n __protected_net_cidr__: { get_param: protected_private_net_cidr }\n __sink_ipaddr__: { get_param: vsn_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n FW_IPADDR=__fw_ipaddr__\n PROTECTED_NET_CIDR=__protected_net_cidr__\n SINK_IPADDR=__sink_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_packetgen_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vpacketgen.sh\n chmod +x v_packetgen_init.sh\n chmod +x vpacketgen.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $FW_IPADDR > config/fw_ipaddr.txt\n echo $PROTECTED_NET_CIDR > config/protected_net_cidr.txt\n echo $SINK_IPADDR > config/sink_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vpacketgen.sh /etc/init.d\n sudo update-rc.d vpacketgen.sh defaults\n ./v_packetgen_init.sh\n\n vpg_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vpg_private_ip_0 }}]\n\n vpg_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vpg_private_ip_1 }}]\n\n vsn_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vsn_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vsn_private_0_port }\n - port: { get_resource: vsn_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __protected_net_gw__: { get_param: vfw_private_ip_1 }\n __unprotected_net__: { get_param: unprotected_private_net_cidr }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n PROTECTED_NET_GW=__protected_net_gw__\n UNPROTECTED_NET=__unprotected_net__\n UNPROTECTED_NET=$(echo $UNPROTECTED_NET | cut -d\'/\' -f1)\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_sink_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vsink.sh\n chmod +x v_sink_init.sh\n chmod +x vsink.sh\n echo $PROTECTED_NET_GW > config/protected_net_gw.txt\n echo $UNPROTECTED_NET > config/unprotected_net.txt\n echo \"no\" > config/install.txt\n mv vsink.sh /etc/init.d\n sudo update-rc.d vsink.sh defaults\n ./v_sink_init.sh\n\n vsn_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vsn_private_ip_0 }}]\n\n vsn_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vsn_private_ip_1 }}]\n \n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','dcae_collector_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','key_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','public_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','pub_key','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_flavor_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_image_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_2','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vf_module_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vnf_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','webserver_ip','\ 1','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('2e34774e-715e-4fd5-bd09-7b654622f35i','vfw-service','585822c7-4027-4f84-ba50-e9248606f112','1.0','VFW service','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f134','1.0','VF_RI1_VFW::module-1',NULL,1,'Artifact-UUID3',NULL,'2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('5aa23938-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID3',NULL,'2017-10-05 18:52:03','1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','5aa23938-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:52:03');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','VFW service1707MIGRATED','2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f113','1.0','VFWResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','VFWResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:52:03','685822c7-4027-4f84-ba50-e9248606f132');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+++ /dev/null
-DROP DATABASE IF EXISTS `camundabpmn`;
-
-CREATE DATABASE `camundabpmn`;
-
-USE `camundabpmn`;
-
-# DROP USER IF EXISTS 'camunda';
-delete from mysql.user where User='camunda';
-CREATE USER 'camunda';
-GRANT ALL on camundabpmn.* to 'camunda' identified by 'camunda123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `camundabpmn`;
-
-create table ACT_GE_PROPERTY (
- NAME_ varchar(64),
- VALUE_ varchar(300),
- REV_ integer,
- primary key (NAME_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-insert into ACT_GE_PROPERTY
-values ('schema.version', 'fox', 1);
-
-insert into ACT_GE_PROPERTY
-values ('schema.history', 'create(fox)', 1);
-
-insert into ACT_GE_PROPERTY
-values ('next.dbid', '1', 1);
-
-insert into ACT_GE_PROPERTY
-values ('deployment.lock', '0', 1);
-
-insert into ACT_GE_PROPERTY
-values ('history.cleanup.job.lock', '0', 1);
-
-create table ACT_GE_BYTEARRAY (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- BYTES_ LONGBLOB,
- GENERATED_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_DEPLOYMENT (
- ID_ varchar(64),
- NAME_ varchar(255),
- DEPLOY_TIME_ timestamp(3),
- SOURCE_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXECUTION (
- ID_ varchar(64),
- REV_ integer,
- PROC_INST_ID_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- SUPER_EXEC_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- IS_ACTIVE_ TINYINT,
- IS_CONCURRENT_ TINYINT,
- IS_SCOPE_ TINYINT,
- IS_EVENT_SCOPE_ TINYINT,
- SUSPENSION_STATE_ integer,
- CACHED_ENT_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOB (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- TYPE_ varchar(255) NOT NULL,
- LOCK_EXP_TIME_ timestamp(3) NULL,
- LOCK_OWNER_ varchar(255),
- EXCLUSIVE_ boolean,
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- RETRIES_ integer,
- EXCEPTION_STACK_ID_ varchar(64),
- EXCEPTION_MSG_ varchar(4000),
- DUEDATE_ timestamp(3) NULL,
- REPEAT_ varchar(255),
- HANDLER_TYPE_ varchar(255),
- HANDLER_CFG_ varchar(4000),
- DEPLOYMENT_ID_ varchar(64),
- SUSPENSION_STATE_ integer NOT NULL DEFAULT 1,
- JOB_DEF_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOBDEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- JOB_TYPE_ varchar(255) NOT NULL,
- JOB_CONFIGURATION_ varchar(255),
- SUSPENSION_STATE_ integer,
- JOB_PRIORITY_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_PROCDEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- HAS_START_FORM_KEY_ TINYINT,
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- VERSION_TAG_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_TASK (
- ID_ varchar(64),
- REV_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- TASK_DEF_KEY_ varchar(255),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- DELEGATION_ varchar(64),
- PRIORITY_ integer,
- CREATE_TIME_ timestamp(3),
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_IDENTITYLINK (
- ID_ varchar(64),
- REV_ integer,
- GROUP_ID_ varchar(255),
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_VARIABLE (
- ID_ varchar(64) not null,
- REV_ integer,
- TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- TASK_ID_ varchar(64),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- VAR_SCOPE_ varchar(64) not null,
- SEQUENCE_COUNTER_ bigint,
- IS_CONCURRENT_LOCAL_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EVENT_SUBSCR (
- ID_ varchar(64) not null,
- REV_ integer,
- EVENT_TYPE_ varchar(255) not null,
- EVENT_NAME_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- CONFIGURATION_ varchar(255),
- CREATED_ timestamp(3) not null,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_INCIDENT (
- ID_ varchar(64) not null,
- REV_ integer not null,
- INCIDENT_TIMESTAMP_ timestamp(3) not null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_AUTHORIZATION (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ integer not null,
- GROUP_ID_ varchar(255),
- USER_ID_ varchar(255),
- RESOURCE_TYPE_ integer not null,
- RESOURCE_ID_ varchar(64),
- PERMS_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_FILTER (
- ID_ varchar(64) not null,
- REV_ integer not null,
- RESOURCE_TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- OWNER_ varchar(255),
- QUERY_ LONGTEXT not null,
- PROPERTIES_ LONGTEXT,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_METER_LOG (
- ID_ varchar(64) not null,
- NAME_ varchar(64) not null,
- REPORTER_ varchar(255),
- VALUE_ bigint,
- TIMESTAMP_ timestamp(3),
- MILLISECONDS_ bigint DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXT_TASK (
- ID_ varchar(64) not null,
- REV_ integer not null,
- WORKER_ID_ varchar(255),
- TOPIC_NAME_ varchar(255),
- RETRIES_ integer,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- LOCK_EXP_TIME_ timestamp(3) NULL,
- SUSPENSION_STATE_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_BATCH (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_CREATED_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- SUSPENSION_STATE_ integer,
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_EXEC_BUSKEY on ACT_RU_EXECUTION(BUSINESS_KEY_);
-create index ACT_IDX_EXEC_TENANT_ID on ACT_RU_EXECUTION(TENANT_ID_);
-create index ACT_IDX_TASK_CREATE on ACT_RU_TASK(CREATE_TIME_);
-create index ACT_IDX_TASK_ASSIGNEE on ACT_RU_TASK(ASSIGNEE_);
-create index ACT_IDX_TASK_TENANT_ID on ACT_RU_TASK(TENANT_ID_);
-create index ACT_IDX_IDENT_LNK_USER on ACT_RU_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_IDENT_LNK_GROUP on ACT_RU_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_EVENT_SUBSCR_CONFIG_ on ACT_RU_EVENT_SUBSCR(CONFIGURATION_);
-create index ACT_IDX_EVENT_SUBSCR_TENANT_ID on ACT_RU_EVENT_SUBSCR(TENANT_ID_);
-create index ACT_IDX_VARIABLE_TASK_ID on ACT_RU_VARIABLE(TASK_ID_);
-create index ACT_IDX_VARIABLE_TENANT_ID on ACT_RU_VARIABLE(TENANT_ID_);
-create index ACT_IDX_ATHRZ_PROCEDEF on ACT_RU_IDENTITYLINK(PROC_DEF_ID_);
-create index ACT_IDX_INC_CONFIGURATION on ACT_RU_INCIDENT(CONFIGURATION_);
-create index ACT_IDX_INC_TENANT_ID on ACT_RU_INCIDENT(TENANT_ID_);
--- CAM-5914
-create index ACT_IDX_JOB_EXECUTION_ID on ACT_RU_JOB(EXECUTION_ID_);
--- this index needs to be limited in mariadb see CAM-6938
-create index ACT_IDX_JOB_HANDLER on ACT_RU_JOB(HANDLER_TYPE_(100),HANDLER_CFG_(155));
-create index ACT_IDX_JOB_PROCINST on ACT_RU_JOB(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_JOB_TENANT_ID on ACT_RU_JOB(TENANT_ID_);
-create index ACT_IDX_JOBDEF_TENANT_ID on ACT_RU_JOBDEF(TENANT_ID_);
-
--- new metric milliseconds column
-CREATE INDEX ACT_IDX_METER_LOG_MS ON ACT_RU_METER_LOG(MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_NAME_MS ON ACT_RU_METER_LOG(NAME_, MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_REPORT ON ACT_RU_METER_LOG(NAME_, REPORTER_, MILLISECONDS_);
-
--- old metric timestamp column
-CREATE INDEX ACT_IDX_METER_LOG_TIME ON ACT_RU_METER_LOG(TIMESTAMP_);
-CREATE INDEX ACT_IDX_METER_LOG ON ACT_RU_METER_LOG(NAME_, TIMESTAMP_);
-
-create index ACT_IDX_EXT_TASK_TOPIC on ACT_RU_EXT_TASK(TOPIC_NAME_);
-create index ACT_IDX_EXT_TASK_TENANT_ID on ACT_RU_EXT_TASK(TENANT_ID_);
-create index ACT_IDX_EXT_TASK_PRIORITY ON ACT_RU_EXT_TASK(PRIORITY_);
-create index ACT_IDX_EXT_TASK_ERR_DETAILS ON ACT_RU_EXT_TASK(ERROR_DETAILS_ID_);
-create index ACT_IDX_AUTH_GROUP_ID ON ACT_RU_AUTHORIZATION(GROUP_ID_);
-create index ACT_IDX_JOB_JOB_DEF_ID on ACT_RU_JOB(JOB_DEF_ID_);
-
-alter table ACT_GE_BYTEARRAY
- add constraint ACT_FK_BYTEARR_DEPL
- foreign key (DEPLOYMENT_ID_)
- references ACT_RE_DEPLOYMENT (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_SUPER
- foreign key (SUPER_EXEC_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_TSKASS_TASK
- foreign key (TASK_ID_)
- references ACT_RU_TASK (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_ATHRZ_PROCEDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_BYTEARRAY
- foreign key (BYTEARRAY_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_JOB
- add constraint ACT_FK_JOB_EXCEPTION
- foreign key (EXCEPTION_STACK_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_EVENT_SUBSCR
- add constraint ACT_FK_EVENT_EXEC
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_CAUSE
- foreign key (CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_RCAUSE
- foreign key (ROOT_CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_ERROR_DETAILS
- foreign key (ERROR_DETAILS_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-create index ACT_IDX_INC_JOB_DEF on ACT_RU_INCIDENT(JOB_DEF_ID_);
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_JOB_DEF
- foreign key (JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_USER
- unique (USER_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_GROUP
- unique (GROUP_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_UNIQ_VARIABLE
- unique (VAR_SCOPE_, NAME_);
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-create index ACT_IDX_BATCH_SEED_JOB_DEF ON ACT_RU_BATCH(SEED_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_SEED_JOB_DEF
- foreign key (SEED_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_MONITOR_JOB_DEF ON ACT_RU_BATCH(MONITOR_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_MONITOR_JOB_DEF
- foreign key (MONITOR_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_JOB_DEF ON ACT_RU_BATCH(BATCH_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_JOB_DEF
- foreign key (BATCH_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
--- indexes for deadlock problems - https://app.camunda.com/jira/browse/CAM-2567 --
-create index ACT_IDX_INC_CAUSEINCID on ACT_RU_INCIDENT(CAUSE_INCIDENT_ID_);
-create index ACT_IDX_INC_EXID on ACT_RU_INCIDENT(EXECUTION_ID_);
-create index ACT_IDX_INC_PROCDEFID on ACT_RU_INCIDENT(PROC_DEF_ID_);
-create index ACT_IDX_INC_PROCINSTID on ACT_RU_INCIDENT(PROC_INST_ID_);
-create index ACT_IDX_INC_ROOTCAUSEINCID on ACT_RU_INCIDENT(ROOT_CAUSE_INCIDENT_ID_);
--- index for deadlock problem - https://app.camunda.com/jira/browse/CAM-4440 --
-create index ACT_IDX_AUTH_RESOURCE_ID on ACT_RU_AUTHORIZATION(RESOURCE_ID_);
--- index to prevent deadlock on fk constraint - https://app.camunda.com/jira/browse/CAM-5440 --
-create index ACT_IDX_EXT_TASK_EXEC on ACT_RU_EXT_TASK(EXECUTION_ID_);
-
--- indexes to improve deployment
-create index ACT_IDX_BYTEARRAY_NAME on ACT_GE_BYTEARRAY(NAME_);
-create index ACT_IDX_DEPLOYMENT_NAME on ACT_RE_DEPLOYMENT(NAME_);
-create index ACT_IDX_DEPLOYMENT_TENANT_ID on ACT_RE_DEPLOYMENT(TENANT_ID_);
-create index ACT_IDX_JOBDEF_PROC_DEF_ID ON ACT_RU_JOBDEF(PROC_DEF_ID_);
-create index ACT_IDX_JOB_HANDLER_TYPE ON ACT_RU_JOB(HANDLER_TYPE_);
-create index ACT_IDX_EVENT_SUBSCR_EVT_NAME ON ACT_RU_EVENT_SUBSCR(EVENT_NAME_);
-create index ACT_IDX_PROCDEF_DEPLOYMENT_ID ON ACT_RE_PROCDEF(DEPLOYMENT_ID_);
-create index ACT_IDX_PROCDEF_TENANT_ID ON ACT_RE_PROCDEF(TENANT_ID_);
-create index ACT_IDX_PROCDEF_VER_TAG ON ACT_RE_PROCDEF(VERSION_TAG_);
--- create case definition table --
-create table ACT_RE_CASE_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case execution table --
-create table ACT_RU_CASE_EXECUTION (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- SUPER_EXEC_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- ACT_ID_ varchar(255),
- PREV_STATE_ integer,
- CURRENT_STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case sentry part table --
-
-create table ACT_RU_CASE_SENTRY_PART (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- CASE_EXEC_ID_ varchar(64),
- SENTRY_ID_ varchar(255),
- TYPE_ varchar(255),
- SOURCE_CASE_EXEC_ID_ varchar(64),
- STANDARD_EVENT_ varchar(255),
- SOURCE_ varchar(255),
- VARIABLE_EVENT_ varchar(255),
- VARIABLE_NAME_ varchar(255),
- SATISFIED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create index on business key --
-create index ACT_IDX_CASE_EXEC_BUSKEY on ACT_RU_CASE_EXECUTION(BUSINESS_KEY_);
-
--- create foreign key constraints on ACT_RU_CASE_EXECUTION --
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_VARIABLE --
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
--- create foreign key constraints on ACT_RU_TASK --
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_CASE_SENTRY_PART --
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_EXEC
- foreign key (CASE_EXEC_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-create index ACT_IDX_CASE_DEF_TENANT_ID on ACT_RE_CASE_DEF(TENANT_ID_);
-create index ACT_IDX_CASE_EXEC_TENANT_ID on ACT_RU_CASE_EXECUTION(TENANT_ID_);
--- create decision definition table --
-create table ACT_RE_DECISION_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create decision requirements definition table --
-create table ACT_RE_DECISION_REQ_DEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) NOT NULL,
- VERSION_ integer NOT NULL,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_RE_DECISION_DEF
- add constraint ACT_FK_DEC_REQ
- foreign key (DEC_REQ_ID_)
- references ACT_RE_DECISION_REQ_DEF(ID_);
-
-create index ACT_IDX_DEC_DEF_TENANT_ID on ACT_RE_DECISION_DEF(TENANT_ID_);
-create index ACT_IDX_DEC_DEF_REQ_ID on ACT_RE_DECISION_DEF(DEC_REQ_ID_);
-create index ACT_IDX_DEC_REQ_DEF_TENANT_ID on ACT_RE_DECISION_REQ_DEF(TENANT_ID_);
-create table ACT_HI_PROCINST (
- ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- START_USER_ID_ varchar(255),
- START_ACT_ID_ varchar(255),
- END_ACT_ID_ varchar(255),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- DELETE_REASON_ varchar(4000),
- TENANT_ID_ varchar(64),
- STATE_ varchar(255),
- primary key (ID_),
- unique (PROC_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- EXECUTION_ID_ varchar(64) not null,
- ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- ACT_NAME_ varchar(255),
- ACT_TYPE_ varchar(255) not null,
- ASSIGNEE_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- ACT_INST_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_TASKINST (
- ID_ varchar(64) not null,
- TASK_DEF_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- DELETE_REASON_ varchar(4000),
- PRIORITY_ integer,
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_VARINST (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(100),
- REV_ integer,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_DETAIL (
- ID_ varchar(64) not null,
- TYPE_ varchar(255) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- VAR_INST_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(255),
- REV_ integer,
- TIME_ datetime(3) not null,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- OPERATION_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_IDENTITYLINK (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- GROUP_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- OPERATION_TYPE_ varchar(64),
- ASSIGNER_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_COMMENT (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TIME_ datetime(3) not null,
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTION_ varchar(255),
- MESSAGE_ varchar(4000),
- FULL_MSG_ LONGBLOB,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ATTACHMENT (
- ID_ varchar(64) not null,
- REV_ integer,
- USER_ID_ varchar(255),
- NAME_ varchar(255),
- DESCRIPTION_ varchar(4000),
- TYPE_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- URL_ varchar(4000),
- CONTENT_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_OP_LOG (
- ID_ varchar(64) not null,
- DEPLOYMENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- JOB_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- BATCH_ID_ varchar(64),
- USER_ID_ varchar(255),
- TIMESTAMP_ timestamp(3) not null,
- OPERATION_TYPE_ varchar(64),
- OPERATION_ID_ varchar(64),
- ENTITY_TYPE_ varchar(30),
- PROPERTY_ varchar(64),
- ORG_VALUE_ varchar(4000),
- NEW_VALUE_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_INCIDENT (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CREATE_TIME_ timestamp(3) not null,
- END_TIME_ timestamp(3) null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- ACTIVITY_ID_ varchar(255),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- INCIDENT_STATE_ integer,
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_JOB_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- JOB_ID_ varchar(64) not null,
- JOB_DUEDATE_ timestamp(3) NULL,
- JOB_RETRIES_ integer,
- JOB_PRIORITY_ bigint NOT NULL DEFAULT 0,
- JOB_EXCEPTION_MSG_ varchar(4000),
- JOB_EXCEPTION_STACK_ID_ varchar(64),
- JOB_STATE_ integer,
- JOB_DEF_ID_ varchar(64),
- JOB_DEF_TYPE_ varchar(255),
- JOB_DEF_CONFIGURATION_ varchar(255),
- ACT_ID_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_BATCH (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_EXT_TASK_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- EXT_TASK_ID_ varchar(64) not null,
- RETRIES_ integer,
- TOPIC_NAME_ varchar(255),
- WORKER_ID_ varchar(255),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- STATE_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_PRO_INST_END on ACT_HI_PROCINST(END_TIME_);
-create index ACT_IDX_HI_PRO_I_BUSKEY on ACT_HI_PROCINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_PRO_INST_TENANT_ID on ACT_HI_PROCINST(TENANT_ID_);
-create index ACT_IDX_HI_PRO_INST_PROC_DEF_KEY on ACT_HI_PROCINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_ACT_INST_START on ACT_HI_ACTINST(START_TIME_);
-create index ACT_IDX_HI_ACT_INST_END on ACT_HI_ACTINST(END_TIME_);
-create index ACT_IDX_HI_ACT_INST_PROCINST on ACT_HI_ACTINST(PROC_INST_ID_, ACT_ID_);
-create index ACT_IDX_HI_ACT_INST_COMP on ACT_HI_ACTINST(EXECUTION_ID_, ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_ACT_INST_STATS on ACT_HI_ACTINST(PROC_DEF_ID_, ACT_ID_, END_TIME_, ACT_INST_STATE_);
-create index ACT_IDX_HI_ACT_INST_TENANT_ID on ACT_HI_ACTINST(TENANT_ID_);
-create index ACT_IDX_HI_ACT_INST_PROC_DEF_KEY on ACT_HI_ACTINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_TASK_INST_TENANT_ID on ACT_HI_TASKINST(TENANT_ID_);
-create index ACT_IDX_HI_TASK_INST_PROC_DEF_KEY on ACT_HI_TASKINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_DETAIL_PROC_INST on ACT_HI_DETAIL(PROC_INST_ID_);
-create index ACT_IDX_HI_DETAIL_ACT_INST on ACT_HI_DETAIL(ACT_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_INST on ACT_HI_DETAIL(CASE_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_EXEC on ACT_HI_DETAIL(CASE_EXECUTION_ID_);
-create index ACT_IDX_HI_DETAIL_TIME on ACT_HI_DETAIL(TIME_);
-create index ACT_IDX_HI_DETAIL_NAME on ACT_HI_DETAIL(NAME_);
-create index ACT_IDX_HI_DETAIL_TASK_ID on ACT_HI_DETAIL(TASK_ID_);
-create index ACT_IDX_HI_DETAIL_TENANT_ID on ACT_HI_DETAIL(TENANT_ID_);
-create index ACT_IDX_HI_DETAIL_PROC_DEF_KEY on ACT_HI_DETAIL(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_IDENT_LNK_USER on ACT_HI_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_HI_IDENT_LNK_GROUP on ACT_HI_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_HI_IDENT_LNK_TENANT_ID on ACT_HI_IDENTITYLINK(TENANT_ID_);
-create index ACT_IDX_HI_IDENT_LNK_PROC_DEF_KEY on ACT_HI_IDENTITYLINK(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
-create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
-create index ACT_IDX_HI_CASEVAR_CASE_INST on ACT_HI_VARINST(CASE_INST_ID_);
-create index ACT_IDX_HI_VAR_INST_TENANT_ID on ACT_HI_VARINST(TENANT_ID_);
-create index ACT_IDX_HI_VAR_INST_PROC_DEF_KEY on ACT_HI_VARINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_INCIDENT_TENANT_ID on ACT_HI_INCIDENT(TENANT_ID_);
-create index ACT_IDX_HI_INCIDENT_PROC_DEF_KEY on ACT_HI_INCIDENT(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_JOB_LOG_PROCINST on ACT_HI_JOB_LOG(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROCDEF on ACT_HI_JOB_LOG(PROCESS_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_TENANT_ID on ACT_HI_JOB_LOG(TENANT_ID_);
-create index ACT_IDX_HI_JOB_LOG_JOB_DEF_ID on ACT_HI_JOB_LOG(JOB_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROC_DEF_KEY on ACT_HI_JOB_LOG(PROCESS_DEF_KEY_);
-
-create index ACT_HI_EXT_TASK_LOG_PROCINST on ACT_HI_EXT_TASK_LOG(PROC_INST_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROCDEF on ACT_HI_EXT_TASK_LOG(PROC_DEF_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROC_DEF_KEY on ACT_HI_EXT_TASK_LOG(PROC_DEF_KEY_);
-create index ACT_HI_EXT_TASK_LOG_TENANT_ID on ACT_HI_EXT_TASK_LOG(TENANT_ID_);
-
-create index ACT_IDX_HI_OP_LOG_PROCINST on ACT_HI_OP_LOG(PROC_INST_ID_);
-create index ACT_IDX_HI_OP_LOG_PROCDEF on ACT_HI_OP_LOG(PROC_DEF_ID_);
-create table ACT_HI_CASEINST (
- ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64) not null,
- CREATE_TIME_ datetime(3) not null,
- CLOSE_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- CREATE_USER_ID_ varchar(255),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_),
- unique (CASE_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_CASEACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- CASE_ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- CASE_ACT_NAME_ varchar(255),
- CASE_ACT_TYPE_ varchar(255),
- CREATE_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_CAS_I_CLOSE on ACT_HI_CASEINST(CLOSE_TIME_);
-create index ACT_IDX_HI_CAS_I_BUSKEY on ACT_HI_CASEINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_CAS_I_TENANT_ID on ACT_HI_CASEINST(TENANT_ID_);
-create index ACT_IDX_HI_CAS_A_I_CREATE on ACT_HI_CASEACTINST(CREATE_TIME_);
-create index ACT_IDX_HI_CAS_A_I_END on ACT_HI_CASEACTINST(END_TIME_);
-create index ACT_IDX_HI_CAS_A_I_COMP on ACT_HI_CASEACTINST(CASE_ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_CAS_A_I_CASEINST on ACT_HI_CASEACTINST(CASE_INST_ID_, CASE_ACT_ID_);
-create index ACT_IDX_HI_CAS_A_I_TENANT_ID on ACT_HI_CASEACTINST(TENANT_ID_);
--- create history decision instance table --
-create table ACT_HI_DECINST (
- ID_ varchar(64) NOT NULL,
- DEC_DEF_ID_ varchar(64) NOT NULL,
- DEC_DEF_KEY_ varchar(255) NOT NULL,
- DEC_DEF_NAME_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- EVAL_TIME_ datetime(3) not null,
- COLLECT_VALUE_ double,
- USER_ID_ varchar(255),
- ROOT_DEC_INST_ID_ varchar(64),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision input table --
-create table ACT_HI_DEC_IN (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision output table --
-create table ACT_HI_DEC_OUT (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- RULE_ID_ varchar(64),
- RULE_ORDER_ integer,
- VAR_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-
-create index ACT_IDX_HI_DEC_INST_ID on ACT_HI_DECINST(DEC_DEF_ID_);
-create index ACT_IDX_HI_DEC_INST_KEY on ACT_HI_DECINST(DEC_DEF_KEY_);
-create index ACT_IDX_HI_DEC_INST_PI on ACT_HI_DECINST(PROC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_CI on ACT_HI_DECINST(CASE_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT on ACT_HI_DECINST(ACT_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT_INST on ACT_HI_DECINST(ACT_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_TIME on ACT_HI_DECINST(EVAL_TIME_);
-create index ACT_IDX_HI_DEC_INST_TENANT_ID on ACT_HI_DECINST(TENANT_ID_);
-create index ACT_IDX_HI_DEC_INST_ROOT_ID on ACT_HI_DECINST(ROOT_DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_ID on ACT_HI_DECINST(DEC_REQ_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_KEY on ACT_HI_DECINST(DEC_REQ_KEY_);
-
-
-create index ACT_IDX_HI_DEC_IN_INST on ACT_HI_DEC_IN(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_IN_CLAUSE on ACT_HI_DEC_IN(DEC_INST_ID_, CLAUSE_ID_);
-
-create index ACT_IDX_HI_DEC_OUT_INST on ACT_HI_DEC_OUT(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_OUT_RULE on ACT_HI_DEC_OUT(RULE_ORDER_, CLAUSE_ID_);
-
-
--- mariadb identity:
-
-create table ACT_ID_GROUP (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- TYPE_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_MEMBERSHIP (
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (USER_ID_, GROUP_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_USER (
- ID_ varchar(64),
- REV_ integer,
- FIRST_ varchar(255),
- LAST_ varchar(255),
- EMAIL_ varchar(255),
- PWD_ varchar(255),
- SALT_ varchar(255),
- PICTURE_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_INFO (
- ID_ varchar(64),
- REV_ integer,
- USER_ID_ varchar(64),
- TYPE_ varchar(64),
- KEY_ varchar(255),
- VALUE_ varchar(255),
- PASSWORD_ LONGBLOB,
- PARENT_ID_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT_MEMBER (
- ID_ varchar(64) not null,
- TENANT_ID_ varchar(64) not null,
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_USER
- unique (TENANT_ID_, USER_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_GROUP
- unique (TENANT_ID_, GROUP_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB
- foreign key (TENANT_ID_)
- references ACT_ID_TENANT (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
+++ /dev/null
-USE camundabpmn;
-
-INSERT INTO `act_id_group` (`ID_`, `REV_`, `NAME_`, `TYPE_`) VALUES ('camunda-admin',1,'camunda BPM Administrators','SYSTEM');
-
-INSERT INTO `act_id_user` (`ID_`, `REV_`, `FIRST_`, `LAST_`, `EMAIL_`, `PWD_`, `SALT_`, `PICTURE_ID_`) VALUES ('admin',1,'admin','user','camundaadmin@onap.org','{SHA-512}n5jUw7fvXM9sZBcrIkLiAOCqiPHutaqEkbg6IQVQdylVP1im8SczBJf4f2xL7cvWwIAZjkcSSQzgFTsdaJSEiA==','ftTn4gNgMcq07wdSD0lEJQ==',NULL);
-
-INSERT INTO `act_id_membership` (`USER_ID_`, `GROUP_ID_`) VALUES ('admin','camunda-admin');
-
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b0e028-a3c6-11e7-b0ec-0242ac120003',1,1,NULL,'admin',1,'admin',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b525e9-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'camunda-admin',2);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b8814a-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,0,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49baa42b-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,1,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bd8a5c-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bfd44d-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,3,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c1f72e-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,4,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c41a0f-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,5,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c77570-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,6,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ca5ba1-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,7,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49cca592-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,8,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ceef83-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,9,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d11264-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,10,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d38365-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,11,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d5a646-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,12,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d83e57-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,13,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49da3a28-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,14,'*',2147483647);
+++ /dev/null
-
- alter table HEAT_TEMPLATE_PARAMS
- drop
- foreign key FK_p3ol1xcvp831glqohrlu6o07o;
-
- alter table MODEL_RECIPE
- drop
- foreign key FK_c23r0puyqug6n44jg39dutm1c;
-
- alter table SERVICE
- drop
- foreign key FK_l3qy594u2xr1tfpmma3uigsna;
-
- alter table SERVICE_RECIPE
- drop
- foreign key FK_i3r1b8j6e7dg9hkp49evnnm5y;
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- drop
- foreign key FK_kiddaay6cfe0aob1f1jaio1bb;
-
- alter table VF_MODULE
- drop
- foreign key FK_12jptc9it7gs3pru08skobxxc;
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- drop
- foreign key FK_iff1ayhb1hrp5jhea3vvikuni;
-
- drop table if exists ALLOTTED_RESOURCE;
-
- drop table if exists ALLOTTED_RESOURCE_CUSTOMIZATION;
-
- drop table if exists HEAT_ENVIRONMENT;
-
- drop table if exists HEAT_FILES;
-
- drop table if exists HEAT_NESTED_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE_PARAMS;
-
- drop table if exists MODEL;
-
- drop table if exists MODEL_RECIPE;
-
- drop table if exists NETWORK_RECIPE;
-
- drop table if exists NETWORK_RESOURCE;
-
- drop table if exists NETWORK_RESOURCE_CUSTOMIZATION;
-
- drop table if exists SERVICE;
-
- drop table if exists SERVICE_RECIPE;
-
- drop table if exists SERVICE_TO_ALLOTTED_RESOURCES;
-
- drop table if exists SERVICE_TO_NETWORKS;
-
- drop table if exists SERVICE_TO_RESOURCE_CUSTOMIZATIONS;
-
- drop table if exists TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP;
-
- drop table if exists TOSCA_CSAR;
-
- drop table if exists VF_MODULE;
-
- drop table if exists VF_MODULE_CUSTOMIZATION;
-
- drop table if exists VF_MODULE_TO_HEAT_FILES;
-
- drop table if exists VNF_COMPONENTS;
-
- drop table if exists VNF_COMPONENTS_RECIPE;
-
- drop table if exists VNF_RECIPE;
-
- drop table if exists VNF_RESOURCE;
-
- drop table if exists VNF_RESOURCE_CUSTOMIZATION;
-
- drop table if exists VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM;
-
- create table ALLOTTED_RESOURCE (
- MODEL_UUID varchar(255) not null,
- MODEL_INVARIANT_UUID varchar(255),
- MODEL_VERSION varchar(255),
- MODEL_NAME varchar(255),
- TOSCA_NODE_TYPE varchar(255),
- SUBCATEGORY varchar(255),
- DESCRIPTION varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table ALLOTTED_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- AR_MODEL_UUID varchar(255),
- PROVIDING_SERVICE_MODEL_INVARIANT_UUID varchar(255),
- TARGET_NETWORK_ROLE varchar(255),
- NF_FUNCTION varchar(255),
- NF_TYPE varchar(255),
- NF_ROLE varchar(255),
- NF_NAMING_CODE varchar(255),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table HEAT_ENVIRONMENT (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(100) not null,
- VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- BODY longtext not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD',
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_FILES (
- ARTIFACT_UUID varchar(255) not null,
- DESCRIPTION varchar(255),
- NAME varchar(255),
- VERSION varchar(255),
- BODY longtext,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(255),
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_NESTED_TEMPLATE (
- PARENT_HEAT_TEMPLATE_UUID varchar(200) not null,
- CHILD_HEAT_TEMPLATE_UUID varchar(200) not null,
- PROVIDER_RESOURCE_FILE varchar(100),
- primary key (PARENT_HEAT_TEMPLATE_UUID, CHILD_HEAT_TEMPLATE_UUID)
- );
-
- create table HEAT_TEMPLATE (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- BODY longtext not null,
- TIMEOUT_MINUTES integer,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD' not null,
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_TEMPLATE_PARAMS (
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(255) not null,
- PARAM_NAME varchar(255) not null,
- IS_REQUIRED bit not null,
- PARAM_TYPE varchar(20),
- PARAM_ALIAS varchar(45),
- primary key (HEAT_TEMPLATE_ARTIFACT_UUID, PARAM_NAME)
- );
-
- create table MODEL (
- id integer not null auto_increment,
- MODEL_TYPE varchar(20) not null,
- MODEL_VERSION_ID varchar(40) not null,
- MODEL_INVARIANT_ID varchar(40),
- MODEL_NAME varchar(40) not null,
- MODEL_VERSION varchar(20),
- MODEL_CUSTOMIZATION_ID varchar(40),
- MODEL_CUSTOMIZATION_NAME varchar(40),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table MODEL_RECIPE (
- id integer not null auto_increment,
- MODEL_ID integer not null,
- ACTION varchar(20) not null,
- SCHEMA_VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- MODEL_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RECIPE (
- id integer not null auto_increment,
- MODEL_NAME varchar(20) not null,
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- SERVICE_TYPE varchar(45),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- NETWORK_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20),
- TOSCA_NODE_TYPE varchar(200),
- NEUTRON_NETWORK_TYPE varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) default 2.5 not null,
- AIC_VERSION_MAX varchar(20) default 2.5,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table NETWORK_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- NETWORK_RESOURCE_MODEL_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- NETWORK_TECHNOLOGY varchar(255),
- NETWORK_TYPE varchar(255),
- NETWORK_SCOPE varchar(255),
- NETWORK_ROLE varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- TOSCA_CSAR_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- MODEL_INVARIANT_UUID varchar(200) default 'MANUAL_RECORD' not null,
- SERVICE_TYPE varchar(20),
- SERVICE_ROLE varchar(20),
- primary key (MODEL_UUID)
- );
-
- create table SERVICE_RECIPE (
- id integer not null auto_increment,
- SERVICE_MODEL_UUID varchar(200) not null,
- ACTION varchar(40) not null,
- ORCHESTRATION_URI varchar(256) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- VERSION_STR varchar(20),
- DESCRIPTION varchar(1200),
- SERVICE_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- SERVICE_TIMEOUT_INTERIM integer,
- primary key (id)
- );
-
- create table SERVICE_TO_ALLOTTED_RESOURCES (
- SERVICE_MODEL_UUID varchar(200) not null,
- AR_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, AR_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_NETWORKS (
- SERVICE_MODEL_UUID varchar(200) not null,
- NETWORK_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, NETWORK_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_RESOURCE_CUSTOMIZATIONS (
- MODEL_TYPE varchar(20) not null,
- RESOURCE_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- SERVICE_MODEL_UUID varchar(200) not null,
- primary key (MODEL_TYPE, RESOURCE_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP (
- NETWORK_RESOURCE_MODEL_NAME varchar(200) not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) not null,
- AIC_VERSION_MAX varchar(20),
- primary key (NETWORK_RESOURCE_MODEL_NAME)
- );
-
- create table TOSCA_CSAR (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- ARTIFACT_CHECKSUM varchar(200) not null,
- URL varchar(200) not null,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (ARTIFACT_UUID)
- );
-
- create table VF_MODULE (
- MODEL_UUID varchar(200) not null,
- VNF_RESOURCE_MODEL_UUID varchar(200),
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200) not null,
- DESCRIPTION varchar(1200),
- IS_BASE integer not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- VOL_HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VF_MODULE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_MODEL_UUID varchar(200) not null,
- VOL_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- HEAT_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- INITIAL_COUNT integer,
- AVAILABILITY_ZONE_COUNT integer,
- LABEL varchar(200),
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VF_MODULE_TO_HEAT_FILES (
- VF_MODULE_MODEL_UUID varchar(200) not null,
- HEAT_FILES_ARTIFACT_UUID varchar(200) not null,
- primary key (VF_MODULE_MODEL_UUID, HEAT_FILES_ARTIFACT_UUID)
- );
-
- create table VNF_COMPONENTS (
- VNF_ID integer not null,
- COMPONENT_TYPE varchar(20) not null,
- HEAT_TEMPLATE_ID integer,
- HEAT_ENVIRONMENT_ID integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_ID, COMPONENT_TYPE)
- );
-
- create table VNF_COMPONENTS_RECIPE (
- id integer not null auto_increment,
- VNF_TYPE varchar(200),
- VF_MODULE_MODEL_UUID varchar(100),
- VNF_COMPONENT_TYPE varchar(45) not null,
- ACTION varchar(20) not null,
- SERVICE_TYPE varchar(45),
- VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_COMPONENT_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RECIPE (
- id integer not null auto_increment,
- VF_MODULE_ID varchar(100),
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45) default null,
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200),
- TOSCA_NODE_TYPE varchar(200),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20) not null,
- AIC_VERSION_MIN varchar(20),
- AIC_VERSION_MAX varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VNF_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(200) not null,
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- AVAILABILITY_ZONE_MAX_COUNT integer,
- NF_FUNCTION varchar(200),
- NF_TYPE varchar(200),
- NF_ROLE varchar(200),
- NF_NAMING_CODE varchar(200),
- VNF_RESOURCE_MODEL_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM (
- VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID, VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID)
- );
-
- alter table MODEL
- add constraint UK_rra00f1rk6eyy7g00k9raxh2v unique (MODEL_TYPE, MODEL_VERSION_ID);
-
- alter table MODEL_RECIPE
- add constraint UK_b4g8j9wtqrkxfycyi3ursk7gb unique (MODEL_ID, ACTION);
-
- alter table NETWORK_RECIPE
- add constraint UK_pbsa8i44m8p10f9529jdgfuk9 unique (MODEL_NAME, ACTION, VERSION_STR);
-
- alter table SERVICE_RECIPE
- add constraint UK_2lr377dpqnvl5aqlp5dtj2fcp unique (SERVICE_MODEL_UUID, ACTION);
-
- alter table VNF_COMPONENTS_RECIPE
- add constraint UK_g3je95aaxxiuest25f0qoy2u8 unique (VNF_TYPE, VF_MODULE_MODEL_UUID, VNF_COMPONENT_TYPE, ACTION, SERVICE_TYPE, VERSION);
-
- alter table VNF_RECIPE
- add constraint UK_f3tvqau498vrifq3cr8qnigkr unique (VF_MODULE_ID, ACTION, VERSION_STR);
-
- alter table HEAT_TEMPLATE_PARAMS
- add constraint FK_p3ol1xcvp831glqohrlu6o07o
- foreign key (HEAT_TEMPLATE_ARTIFACT_UUID)
- references HEAT_TEMPLATE (ARTIFACT_UUID);
-
- alter table MODEL_RECIPE
- add constraint FK_c23r0puyqug6n44jg39dutm1c
- foreign key (MODEL_ID)
- references MODEL (id);
-
- alter table SERVICE
- add constraint FK_l3qy594u2xr1tfpmma3uigsna
- foreign key (TOSCA_CSAR_ARTIFACT_UUID)
- references TOSCA_CSAR (ARTIFACT_UUID);
-
- alter table SERVICE_RECIPE
- add constraint FK_i3r1b8j6e7dg9hkp49evnnm5y
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- add constraint FK_kiddaay6cfe0aob1f1jaio1bb
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table VF_MODULE
- add constraint FK_12jptc9it7gs3pru08skobxxc
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- add constraint FK_iff1ayhb1hrp5jhea3vvikuni
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
+++ /dev/null
-
- drop table if exists INFRA_ACTIVE_REQUESTS;
-
- drop table if exists SITE_STATUS;
-
- create table INFRA_ACTIVE_REQUESTS (
- REQUEST_ID varchar(45) not null,
- CLIENT_REQUEST_ID varchar(45),
- ACTION varchar(45) not null,
- REQUEST_STATUS varchar(20),
- STATUS_MESSAGE varchar(2000),
- PROGRESS bigint,
- START_TIME datetime,
- END_TIME datetime,
- SOURCE varchar(45),
- VNF_ID varchar(45),
- VNF_NAME varchar(80),
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45),
- AIC_NODE_CLLI varchar(11),
- TENANT_ID varchar(45),
- PROV_STATUS varchar(20),
- VNF_PARAMS longtext,
- VNF_OUTPUTS longtext,
- REQUEST_BODY longtext,
- RESPONSE_BODY longtext,
- LAST_MODIFIED_BY varchar(50),
- MODIFY_TIME datetime,
- REQUEST_TYPE varchar(20),
- VOLUME_GROUP_ID varchar(45),
- VOLUME_GROUP_NAME varchar(45),
- VF_MODULE_ID varchar(45),
- VF_MODULE_NAME varchar(200),
- VF_MODULE_MODEL_NAME varchar(200),
- AAI_SERVICE_ID varchar(50),
- AIC_CLOUD_REGION varchar(11),
- CALLBACK_URL varchar(200),
- CORRELATOR varchar(80),
- SERVICE_INSTANCE_ID varchar(45),
- SERVICE_INSTANCE_NAME varchar(80),
- REQUEST_SCOPE varchar(20),
- REQUEST_ACTION varchar(45) not null,
- NETWORK_ID varchar(45),
- NETWORK_NAME varchar(80),
- NETWORK_TYPE varchar(80),
- REQUESTOR_ID varchar(80),
- primary key (REQUEST_ID)
- );
-
- create table SITE_STATUS (
- SITE_NAME varchar(255) not null,
- STATUS bit,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SITE_NAME)
- );
- create table OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- SERVICE_NAME varchar(255),
- OPERATION_TYPE varchar(255),
- USER_ID varchar(255),
- RESULT varchar(255),
- OPERATION_CONTENT varchar(255),
- PROGRESS varchar(255),
- REASON varchar(255),
- OPERATE_AT datetime,
- FINISHED_AT datetime,
- primary key (SERVICE_ID,OPERATION_ID)
- );
- create table RESOURCE_OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- RESOURCE_TEMPLATE_UUID varchar(255) not null,
- OPER_TYPE varchar(255),
- RESOURCE_INSTANCE_ID varchar(255),
- JOB_ID varchar(255),
- STATUS varchar(255),
- PROGRESS varchar(255),
- ERROR_CODE varchar(255) ,
- STATUS_DESCRIPOTION varchar(255) ,
- primary key (SERVICE_ID,OPERATION_ID,RESOURCE_TEMPLATE_UUID)
- );
- alter table INFRA_ACTIVE_REQUESTS
- add constraint UK_bhu6w8p7wvur4pin0gjw2d5ak unique (CLIENT_REQUEST_ID);
+++ /dev/null
-Bag Attributes
- friendlyName: aaiopenecomp
- localKeyID: 54 69 6D 65 20 31 35 31 30 30 33 33 31 37 31 38 39 32
-subject=/C=US/ST=NJ/L=Bedminister/O=ONAP/CN=aai.api.simpledemo.openecomp.org/emailAddress=aai-host@api.simpledemo.openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIDyzCCArMCCQDrA8zzZKXznDANBgkqhkiG9w0BAQsFADCBrTELMAkGA1UEBhMC
-VVMxCzAJBgNVBAgMAk5KMRMwEQYDVQQHDApCZWRtaW5zdGVyMRIwEAYDVQQKDAlP
-cGVuRUNPTVAxEzARBgNVBAsMCnNpbXBsZWRlbW8xKjAoBgNVBAMMIU9wZW5FQ09N
-UCBzaW1wbGVkZW1vIFNlcnZlciBDQSBYMTEnMCUGCSqGSIb3DQEJARYYc2ltcGxl
-ZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE3MTEwMzIzNDUzNVoXDTE4MTIwNjIzNDUz
-NVowgaAxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOSjEUMBIGA1UEBwwLQmVkbWlu
-aXN0ZXIxDTALBgNVBAoMBE9OQVAxKTAnBgNVBAMMIGFhaS5hcGkuc2ltcGxlZGVt
-by5vcGVuZWNvbXAub3JnMTQwMgYJKoZIhvcNAQkBFiVhYWktaG9zdEBhcGkuc2lt
-cGxlZGVtby5vcGVuZWNvbXAub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEA6gFktbGZVt4o78kU6oeCdqx04yPNTd1qRmJ06CD87fgrIDCTXVC+PE7R
-hHd1V71aNnoElBzn+mwetn4qG4T9IqAJvFIXxrzLpS7WlKBxStFhe4GNXl+RDqWc
-UM+47+s32TwZ3czQrhMVR9VNENUHo2d6XylGaUDcVgrMYWbFYWfmIJ4tO1latW9n
-h+perB0nNBxNDK9nYtjLHQk6ukTmONSnldvCgu/TFX5C34qB49cI0LmCf5Lwk9tv
-8dmTZ6Um8A0EbQen+uPaaHeEXm/EtFy0FSVzoKmxuQS0g4JNhfnfNCHVDO7zGE+N
-pCb9VfUI2fXIZvjNBAemKN/b2i5d6QIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBh
-93eaeAw0aA4ukAPpuWIODxxAnZlFfDH4uzwnv6smDJzO1biRwQ5BBZfL8qSVozrp
-aDKeIPWP7fZvjl3mGfCp8mLkI6WkfXVcZy5IlJGDTnW+G8Cpohq910W/Ibp1J9zx
-Ki4IdgKx7FbSYLpgwH2g2EPshHXQX2qFdxYvnEH0PzJjYBKeyyHV3N2kNr6+kM3Q
-HpXXIiLNbNcqLT+9zOmuJszN8ILLV56vu8Clzwxld+ru0tiO2OJk2eT+mtw2PI1/
-jcYqEEdOIZycrQiytxXgvte7A9VFQP/1Tl22BBYrAW2BhyW67kopATeiSunK1FmO
-DLcT7mR+59F964RV9BJR
------END CERTIFICATE-----
-Bag Attributes
- friendlyName: root
- 2.16.840.1.113894.746875.1.1: <Unsupported tag 6>
-subject=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Root Certification Authority/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIFpTCCA42gAwIBAgIJAJqx8dKnCZZoMA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
-VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
-BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
-bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
-MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
-ODIxMTQyNloXDTIxMTEyNzIxMTQyNlowga0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
-DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
-EQYDVQQLDApzaW1wbGVkZW1vMSowKAYDVQQDDCFPcGVuRUNPTVAgc2ltcGxlZGVt
-byBTZXJ2ZXIgQ0EgWDExJzAlBgkqhkiG9w0BCQEWGHNpbXBsZWRlbW9Ab3BlbmVj
-b21wLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr4rivKQuRk
-YNf5Ig40e1nqj6s6LB1vgMOYbKfRziOFpPcUpsHPOhusHowiUsrU1vdFSzPz6Ej7
-PjlmNSg2Qka8YCn9kd6QgM7U0KcPJvIucBp+qjifH3EvP0jgDPhDeVRYxzV454dv
-5kQ9uCpswJP7YAnX51dkWeH8nwPUoagt31bOl9LXENSrgxEThxdLYMJnQJWk2CmV
-otXM4tT1dxyJxFUrZ6uJCEAYw5VtlplqihHf8lHy+sWQavtsLz/4dc+sGeXSTfoI
-voKvoh3uZ5gEhGV8yfJxk1veX5y5/AxP80vQ+smWYjTnQL5QQ57y4bciez4XVBmQ
-SWimWtOi4e8CAwEAAaOBtTCBsjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
-AwIBhjAdBgNVHQ4EFgQUTqdsYgGNGubdJHq9tsaJhM9HE5wwcAYDVR0gBGkwZzBl
-BgRVHSAAMF0wWwYIKwYBBQUHAgIwTxpNSWYgeW91IHRydXN0IHRoaXMgY2VydCB0
-aGVuIHdlIGhhdmUgYSBicmlkZ2UgdGhhdCB5b3UgbWlnaHQgYmUgaW50ZXJlc3Rl
-ZCBpbi4wDQYJKoZIhvcNAQELBQADggIBAKNNlRqFuE/JgV1BHyYK0xoSXH4aZP/7
-IoHtDVcSaZAOOuFOUrwVMUbzRBebbb6RpFwt/X+NLFUGysd+XNLF7W7lzxKtmFNX
-n4OpNkBe0y5O7yurus8rERHzu3jiOSgVo+WzDlGpYSRnG3hI2qPWqD+Puzx/WwI8
-XUTuzEQQ3gUSyVFfXHpay3VpYmLZiLJ9WKY5SDw7Ie6Sxrju4Qm1HwnFY8wHZGcs
-2KMQzorJ1ZNQf523yUTghbT0rKaSFaD8zugPtI2ONfFG/QgrkQXo78opzPsHnHwa
-SxGSiAgeLbwAUCvPNl27zr6k6+7TcNjV0VUivAs0OG3VEAdgi7UWYB+30KfWwHwE
-zGmvd4IAGqIqlqLcSVArN5z8JK1B5nfjQn5UrclU1vK+dnuiKE2X4rKuBTRYRFR/
-km+mj4koYFPKFHndmJl1uv2OCJK9l5CSIuKWeI1qv8BASKqgNdoT/SKBXqxgYlCb
-o+j4IDjxrxChRO+e5vl9lA7INfRrbljCkUjfLRa+v2q9tWQ3+EQUwwnSrSfihh2T
-j0Tksr6b8dDsvMlCdOKG1B+JPcEXORSFKNXVTEfjqpJG8s16kFAocWt3S6xO0k1t
-qbQp+3tWQgW2TGnX0rMZzB6NGRNfWhlYmq2zHgXkiCIZ26Ztgt/LNbwEvN3+VlLo
-z/Rd+SKtlrfb
------END CERTIFICATE-----
+++ /dev/null
-aa3871669d893c7fb8abbcda31b88b4f
+++ /dev/null
-<?xml version='1.0' encoding='UTF-8'?>
-
-<server xmlns="urn:jboss:domain:4.2">
-
- <extensions>
- <extension module="org.jboss.as.clustering.infinispan"/>
- <extension module="org.jboss.as.clustering.jgroups"/>
- <extension module="org.jboss.as.connector"/>
- <extension module="org.jboss.as.deployment-scanner"/>
- <extension module="org.jboss.as.ee"/>
- <extension module="org.jboss.as.ejb3"/>
- <extension module="org.jboss.as.jaxrs"/>
- <extension module="org.jboss.as.jdr"/>
- <extension module="org.jboss.as.jmx"/>
- <extension module="org.jboss.as.jpa"/>
- <extension module="org.jboss.as.jsf"/>
- <extension module="org.jboss.as.jsr77"/>
- <extension module="org.jboss.as.logging"/>
- <extension module="org.jboss.as.mail"/>
- <extension module="org.jboss.as.modcluster"/>
- <extension module="org.jboss.as.naming"/>
- <extension module="org.jboss.as.pojo"/>
- <extension module="org.jboss.as.remoting"/>
- <extension module="org.jboss.as.sar"/>
- <extension module="org.jboss.as.security"/>
- <extension module="org.jboss.as.transactions"/>
- <extension module="org.jboss.as.webservices"/>
- <extension module="org.jboss.as.weld"/>
- <extension module="org.wildfly.extension.batch.jberet"/>
- <extension module="org.wildfly.extension.bean-validation"/>
- <extension module="org.wildfly.extension.clustering.singleton"/>
- <extension module="org.wildfly.extension.io"/>
- <extension module="org.wildfly.extension.messaging-activemq"/>
- <extension module="org.wildfly.extension.request-controller"/>
- <extension module="org.wildfly.extension.security.manager"/>
- <extension module="org.wildfly.extension.undertow"/>
- <extension module="org.wildfly.iiop-openjdk"/>
- </extensions>
-
-
- <management>
- <security-realms>
- <security-realm name="ManagementRealm">
- <authentication>
- <local default-user="$local" skip-group-loading="true"/>
- <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>
- </authentication>
- <authorization map-groups-to-roles="false">
- <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/>
- </authorization>
- </security-realm>
- <security-realm name="ApplicationRealm">
- <server-identities>
- <ssl>
- <keystore path="application.keystore" relative-to="jboss.server.config.dir" keystore-password="password" alias="server" key-password="password" generate-self-signed-certificate-host="localhost"/>
- </ssl>
- </server-identities>
- <authentication>
- <local default-user="$local" allowed-users="*" skip-group-loading="true"/>
- <properties path="application-users.properties" relative-to="jboss.server.config.dir"/>
- </authentication>
- <authorization>
- <properties path="application-roles.properties" relative-to="jboss.server.config.dir"/>
- </authorization>
- </security-realm>
- </security-realms>
- <audit-log>
- <formatters>
- <json-formatter name="json-formatter"/>
- </formatters>
- <handlers>
- <file-handler name="file" formatter="json-formatter" path="audit-log.log" relative-to="jboss.server.data.dir"/>
- </handlers>
- <logger log-boot="true" log-read-only="false" enabled="false">
- <handlers>
- <handler name="file"/>
- </handlers>
- </logger>
- </audit-log>
- <management-interfaces>
- <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true">
- <socket-binding http="management-http"/>
- </http-interface>
- </management-interfaces>
- <access-control provider="simple">
- <role-mapping>
- <role name="SuperUser">
- <include>
- <user name="$local"/>
- </include>
- </role>
- </role-mapping>
- </access-control>
- </management>
-
- <profile>
- <subsystem xmlns="urn:jboss:domain:logging:3.0">
- <console-handler name="CONSOLE">
- <level name="INFO"/>
- <formatter>
- <named-formatter name="COLOR-PATTERN"/>
- </formatter>
- </console-handler>
- <periodic-rotating-file-handler name="FILE" autoflush="true">
- <formatter>
- <named-formatter name="PATTERN"/>
- </formatter>
- <file relative-to="jboss.server.log.dir" path="server.log"/>
- <suffix value=".yyyy-MM-dd"/>
- <append value="true"/>
- </periodic-rotating-file-handler>
- <logger category="com.arjuna">
- <level name="WARN"/>
- </logger>
- <logger category="org.jboss.as.config">
- <level name="DEBUG"/>
- </logger>
- <logger category="sun.rmi">
- <level name="WARN"/>
- </logger>
- <root-logger>
- <level name="INFO"/>
- <handlers>
- <handler name="CONSOLE"/>
- <handler name="FILE"/>
- </handlers>
- </root-logger>
- <formatter name="PATTERN">
- <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
- </formatter>
- <formatter name="COLOR-PATTERN">
- <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
- </formatter>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:batch-jberet:1.0">
- <default-job-repository name="in-memory"/>
- <default-thread-pool name="batch"/>
- <job-repository name="in-memory">
- <in-memory/>
- </job-repository>
- <thread-pool name="batch">
- <max-threads count="10"/>
- <keepalive-time time="30" unit="seconds"/>
- </thread-pool>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:bean-validation:1.0"/>
- <subsystem xmlns="urn:jboss:domain:datasources:4.0">
- <datasources>
- <datasource jndi-name="java:jboss/datasources/mso-requests" pool-name="mso-requests" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://mso-mariadb.{{.Values.nsPrefix}}:3306/mso_requests?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
- <driver>mariadb</driver>
- <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- <pool>
- <min-pool-size>10</min-pool-size>
- <max-pool-size>100</max-pool-size>
- <prefill>true</prefill>
- <use-strict-min>false</use-strict-min>
- <flush-strategy>FailingConnectionOnly</flush-strategy>
- </pool>
- <security>
- <user-name>mso</user-name>
- <password>mso123</password>
- </security>
- <validation>
- <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
- <validate-on-match>false</validate-on-match>
- <background-validation>true</background-validation>
- <background-validation-millis>20000</background-validation-millis>
- <use-fast-fail>true</use-fast-fail>
- <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
- </validation>
- <timeout>
- <idle-timeout-minutes>15</idle-timeout-minutes>
- <query-timeout>30</query-timeout>
- <allocation-retry>1</allocation-retry>
- <allocation-retry-wait-millis>3000</allocation-retry-wait-millis>
- </timeout>
- </datasource>
- <datasource jndi-name="java:jboss/datasources/mso-catalog" pool-name="mso-catalog" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://mso-mariadb.{{.Values.nsPrefix}}:3306/mso_catalog?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
- <driver>mariadb</driver>
- <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- <pool>
- <min-pool-size>10</min-pool-size>
- <max-pool-size>100</max-pool-size>
- <prefill>true</prefill>
- <use-strict-min>false</use-strict-min>
- <flush-strategy>FailingConnectionOnly</flush-strategy>
- </pool>
- <security>
- <user-name>catalog</user-name>
- <password>catalog123</password>
- </security>
- <validation>
- <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
- <validate-on-match>false</validate-on-match>
- <background-validation>true</background-validation>
- <background-validation-millis>20000</background-validation-millis>
- <use-fast-fail>true</use-fast-fail>
- <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
- </validation>
- <timeout>
- <idle-timeout-minutes>15</idle-timeout-minutes>
- <query-timeout>30</query-timeout>
- <allocation-retry>1</allocation-retry>
- <allocation-retry-wait-millis>3000</allocation-retry-wait-millis>
- </timeout>
- </datasource>
- <datasource jta="true" jndi-name="java:jboss/datasources/ProcessEngine" pool-name="ProcessEngine" enabled="true" use-java-context="true" use-ccm="true">
- <connection-url>jdbc:mariadb://mso-mariadb.{{.Values.nsPrefix}}:3306/camundabpmn?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
- <driver>mariadb</driver>
- <new-connection-sql>set autocommit=1</new-connection-sql>
- <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- <pool>
- <min-pool-size>10</min-pool-size>
- <max-pool-size>100</max-pool-size>
- <prefill>true</prefill>
- <use-strict-min>false</use-strict-min>
- <flush-strategy>FailingConnectionOnly</flush-strategy>
- </pool>
- <security>
- <user-name>camunda</user-name>
- <password>camunda123</password>
- </security>
- <validation>
- <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
- <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
- </validation>
- <statement>
- <prepared-statement-cache-size>32</prepared-statement-cache-size>
- <share-prepared-statements>true</share-prepared-statements>
- </statement>
- </datasource>
- <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
- <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
- <driver>h2</driver>
- <security>
- <user-name>sa</user-name>
- <password>sa</password>
- </security>
- </datasource>
- <drivers>
- <driver name="h2" module="com.h2database.h2">
- <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
- </driver>
- <driver name="mariadb" module="mariadb">
- <xa-datasource-class>org.mariadb.jdbc.MySQLDataSource</xa-datasource-class>
- </driver>
- </drivers>
- </datasources>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">
- <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:ee:4.0">
- <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>
- <concurrent>
- <context-services>
- <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/>
- </context-services>
- <managed-thread-factories>
- <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>
- </managed-thread-factories>
- <managed-executor-services>
- <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" keepalive-time="5000"/>
- </managed-executor-services>
- <managed-scheduled-executor-services>
- <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" keepalive-time="3000"/>
- </managed-scheduled-executor-services>
- </concurrent>
- <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:ejb3:4.0">
- <session-bean>
- <stateless>
- <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
- </stateless>
- <stateful default-access-timeout="5000" cache-ref="distributable" passivation-disabled-cache-ref="simple"/>
- <singleton default-access-timeout="5000"/>
- </session-bean>
- <mdb>
- <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:activemq-ra.rar}"/>
- <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
- </mdb>
- <pools>
- <bean-instance-pools>
- <strict-max-pool name="slsb-strict-max-pool" derive-size="from-worker-pools" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
- <strict-max-pool name="mdb-strict-max-pool" derive-size="from-cpu-count" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
- </bean-instance-pools>
- </pools>
- <caches>
- <cache name="simple"/>
- <cache name="distributable" passivation-store-ref="infinispan" aliases="passivating clustered"/>
- </caches>
- <passivation-stores>
- <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/>
- </passivation-stores>
- <async thread-pool-name="default"/>
- <timer-service thread-pool-name="default" default-data-store="default-file-store">
- <data-stores>
- <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/>
- </data-stores>
- </timer-service>
- <remote connector-ref="http-remoting-connector" thread-pool-name="default"/>
- <thread-pools>
- <thread-pool name="default">
- <max-threads count="10"/>
- <keepalive-time time="100" unit="milliseconds"/>
- </thread-pool>
- </thread-pools>
- <iiop enable-by-default="false" use-qualified-name="false"/>
- <default-security-domain value="other"/>
- <default-missing-method-permissions-deny-access value="true"/>
- <log-system-exceptions value="true"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:io:1.1">
- <worker name="default"/>
- <buffer-pool name="default"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:infinispan:4.0">
- <cache-container name="server" aliases="singleton cluster" default-cache="default" module="org.wildfly.clustering.server">
- <transport lock-timeout="60000"/>
- <replicated-cache name="default" mode="SYNC">
- <transaction mode="BATCH"/>
- </replicated-cache>
- </cache-container>
- <cache-container name="web" default-cache="dist" module="org.wildfly.clustering.web.infinispan">
- <transport lock-timeout="60000"/>
- <distributed-cache name="dist" mode="ASYNC" l1-lifespan="0" owners="2">
- <locking isolation="REPEATABLE_READ"/>
- <transaction mode="BATCH"/>
- <file-store/>
- </distributed-cache>
- <distributed-cache name="concurrent" mode="SYNC" l1-lifespan="0" owners="2">
- <file-store/>
- </distributed-cache>
- </cache-container>
- <cache-container name="ejb" aliases="sfsb" default-cache="dist" module="org.wildfly.clustering.ejb.infinispan">
- <transport lock-timeout="60000"/>
- <distributed-cache name="dist" mode="ASYNC" l1-lifespan="0" owners="2">
- <locking isolation="REPEATABLE_READ"/>
- <transaction mode="BATCH"/>
- <file-store/>
- </distributed-cache>
- </cache-container>
- <cache-container name="hibernate" default-cache="local-query" module="org.hibernate.infinispan">
- <transport lock-timeout="60000"/>
- <local-cache name="local-query">
- <eviction strategy="LRU" max-entries="10000"/>
- <expiration max-idle="100000"/>
- </local-cache>
- <invalidation-cache name="entity" mode="SYNC">
- <transaction mode="NON_XA"/>
- <eviction strategy="LRU" max-entries="10000"/>
- <expiration max-idle="100000"/>
- </invalidation-cache>
- <replicated-cache name="timestamps" mode="ASYNC"/>
- </cache-container>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:iiop-openjdk:1.0">
- <orb socket-binding="iiop" ssl-socket-binding="iiop-ssl"/>
- <initializers security="identity" transactions="spec"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
- <subsystem xmlns="urn:jboss:domain:jca:4.0">
- <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
- <bean-validation enabled="true"/>
- <default-workmanager>
- <short-running-threads>
- <core-threads count="50"/>
- <queue-length count="50"/>
- <max-threads count="50"/>
- <keepalive-time time="10" unit="seconds"/>
- </short-running-threads>
- <long-running-threads>
- <core-threads count="50"/>
- <queue-length count="50"/>
- <max-threads count="50"/>
- <keepalive-time time="10" unit="seconds"/>
- </long-running-threads>
- </default-workmanager>
- <cached-connection-manager/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
- <subsystem xmlns="urn:jboss:domain:jgroups:4.0">
- <channels default="ee">
- <channel name="ee" stack="udp"/>
- </channels>
- <stacks>
- <stack name="udp">
- <transport type="UDP" socket-binding="jgroups-udp"/>
- <protocol type="PING"/>
- <protocol type="MERGE3"/>
- <protocol type="FD_SOCK" socket-binding="jgroups-udp-fd"/>
- <protocol type="FD_ALL"/>
- <protocol type="VERIFY_SUSPECT"/>
- <protocol type="pbcast.NAKACK2"/>
- <protocol type="UNICAST3"/>
- <protocol type="pbcast.STABLE"/>
- <protocol type="pbcast.GMS"/>
- <protocol type="UFC"/>
- <protocol type="MFC"/>
- <protocol type="FRAG2"/>
- </stack>
- <stack name="tcp">
- <transport type="TCP" socket-binding="jgroups-tcp"/>
- <protocol type="MPING" socket-binding="jgroups-mping"/>
- <protocol type="MERGE3"/>
- <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
- <protocol type="FD"/>
- <protocol type="VERIFY_SUSPECT"/>
- <protocol type="pbcast.NAKACK2"/>
- <protocol type="UNICAST3"/>
- <protocol type="pbcast.STABLE"/>
- <protocol type="pbcast.GMS"/>
- <protocol type="MFC"/>
- <protocol type="FRAG2"/>
- </stack>
- </stacks>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jmx:1.3">
- <expose-resolved-model/>
- <expose-expression-model/>
- <remoting-connector/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jpa:1.1">
- <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jsf:1.0"/>
- <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>
- <subsystem xmlns="urn:jboss:domain:mail:2.0">
- <mail-session name="default" jndi-name="java:jboss/mail/Default">
- <smtp-server outbound-socket-binding-ref="mail-smtp"/>
- </mail-session>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">
- <server name="default">
- <cluster password="${jboss.messaging.cluster.password:CHANGE ME!!}"/>
- <security-setting name="#">
- <role name="guest" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/>
- </security-setting>
- <address-setting name="#" dead-letter-address="jms.queue.DLQ" expiry-address="jms.queue.ExpiryQueue" max-size-bytes="10485760" page-size-bytes="2097152" message-counter-history-day-limit="10" redistribution-delay="1000"/>
- <http-connector name="http-connector" socket-binding="http" endpoint="http-acceptor"/>
- <http-connector name="http-connector-throughput" socket-binding="http" endpoint="http-acceptor-throughput">
- <param name="batch-delay" value="50"/>
- </http-connector>
- <in-vm-connector name="in-vm" server-id="0"/>
- <http-acceptor name="http-acceptor" http-listener="default"/>
- <http-acceptor name="http-acceptor-throughput" http-listener="default">
- <param name="batch-delay" value="50"/>
- <param name="direct-deliver" value="false"/>
- </http-acceptor>
- <in-vm-acceptor name="in-vm" server-id="0"/>
- <broadcast-group name="bg-group1" jgroups-channel="activemq-cluster" connectors="http-connector"/>
- <discovery-group name="dg-group1" jgroups-channel="activemq-cluster"/>
- <cluster-connection name="my-cluster" address="jms" connector-name="http-connector" discovery-group="dg-group1"/>
- <jms-queue name="ExpiryQueue" entries="java:/jms/queue/ExpiryQueue"/>
- <jms-queue name="DLQ" entries="java:/jms/queue/DLQ"/>
- <connection-factory name="InVmConnectionFactory" entries="java:/ConnectionFactory" connectors="in-vm"/>
- <connection-factory name="RemoteConnectionFactory" entries="java:jboss/exported/jms/RemoteConnectionFactory" connectors="http-connector" ha="true" block-on-acknowledge="true" reconnect-attempts="-1"/>
- <pooled-connection-factory name="activemq-ra" entries="java:/JmsXA java:jboss/DefaultJMSConnectionFactory" connectors="in-vm" transaction="xa"/>
- </server>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:modcluster:2.0">
- <mod-cluster-config advertise-socket="modcluster" connector="ajp">
- <dynamic-load-provider>
- <load-metric type="cpu"/>
- </dynamic-load-provider>
- </mod-cluster-config>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:naming:2.0">
- <remote-naming/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
- <subsystem xmlns="urn:jboss:domain:remoting:3.0">
- <endpoint/>
- <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:resource-adapters:4.0"/>
- <subsystem xmlns="urn:jboss:domain:request-controller:1.0"/>
- <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
- <subsystem xmlns="urn:jboss:domain:security-manager:1.0">
- <deployment-permissions>
- <maximum-set>
- <permission class="java.security.AllPermission"/>
- </maximum-set>
- </deployment-permissions>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:security:1.2">
- <security-domains>
- <security-domain name="other" cache-type="default">
- <authentication>
- <login-module code="Remoting" flag="optional">
- <module-option name="password-stacking" value="useFirstPass"/>
- </login-module>
- <login-module code="RealmDirect" flag="required">
- <module-option name="password-stacking" value="useFirstPass"/>
- </login-module>
- </authentication>
- </security-domain>
- <security-domain name="jboss-web-policy" cache-type="default">
- <authorization>
- <policy-module code="Delegating" flag="required"/>
- </authorization>
- </security-domain>
- <security-domain name="jboss-ejb-policy" cache-type="default">
- <authorization>
- <policy-module code="Delegating" flag="required"/>
- </authorization>
- </security-domain>
- <security-domain name="jaspitest" cache-type="default">
- <authentication-jaspi>
- <login-module-stack name="dummy">
- <login-module code="Dummy" flag="optional"/>
- </login-module-stack>
- <auth-module code="Dummy"/>
- </authentication-jaspi>
- </security-domain>
- </security-domains>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:singleton:1.0">
- <singleton-policies default="default">
- <singleton-policy name="default" cache-container="server">
- <simple-election-policy/>
- </singleton-policy>
- </singleton-policies>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:transactions:3.0">
- <core-environment>
- <process-id>
- <uuid/>
- </process-id>
- </core-environment>
- <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:undertow:3.1">
- <buffer-cache name="default"/>
- <server name="default-server">
- <ajp-listener name="ajp" socket-binding="ajp"/>
- <http-listener name="default" socket-binding="http" enable-http2="true"/>
- <https-listener name="https" socket-binding="https" security-realm="ApplicationRealm" enable-http2="true"/>
- <host name="default-host" alias="localhost">
- <location name="/" handler="welcome-content"/>
- <filter-ref name="server-header"/>
- <filter-ref name="x-powered-by-header"/>
- </host>
- </server>
- <servlet-container name="default">
- <jsp-config/>
- <websockets/>
- </servlet-container>
- <handlers>
- <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
- </handlers>
- <filters>
- <response-header name="server-header" header-name="Server" header-value="WildFly/10"/>
- <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
- </filters>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:webservices:2.0">
- <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
- <endpoint-config name="Standard-Endpoint-Config"/>
- <endpoint-config name="Recording-Endpoint-Config">
- <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
- <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
- </pre-handler-chain>
- </endpoint-config>
- <client-config name="Standard-Client-Config"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:weld:3.0"/>
- </profile>
-
- <interfaces>
- <interface name="management">
- <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
- </interface>
- <interface name="public">
- <inet-address value="${jboss.bind.address:127.0.0.1}"/>
- </interface>
- <interface name="private">
- <inet-address value="${jboss.bind.address.private:127.0.0.1}"/>
- </interface>
- <interface name="unsecure">
- <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
- </interface>
- </interfaces>
-
- <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
- <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
- <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>
- <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
- <socket-binding name="http" port="${jboss.http.port:8080}"/>
- <socket-binding name="https" port="${jboss.https.port:8443}"/>
- <socket-binding name="iiop" interface="unsecure" port="3528"/>
- <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>
- <socket-binding name="jgroups-mping" interface="private" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
- <socket-binding name="jgroups-tcp" interface="private" port="7600"/>
- <socket-binding name="jgroups-tcp-fd" interface="private" port="57600"/>
- <socket-binding name="jgroups-udp" interface="private" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
- <socket-binding name="jgroups-udp-fd" interface="private" port="54200"/>
- <socket-binding name="modcluster" port="0" multicast-address="224.0.1.105" multicast-port="23364"/>
- <socket-binding name="txn-recovery-environment" port="4712"/>
- <socket-binding name="txn-status-manager" port="4713"/>
- <outbound-socket-binding name="mail-smtp">
- <remote-destination host="localhost" port="25"/>
- </outbound-socket-binding>
- </socket-binding-group>
-
-</server>
+++ /dev/null
-{
- "name": "mso-docker",
- "description": "MSO Docker Images",
- "chef_type": "environment",
- "json_class": "Chef::Environment",
- "default_attributes":
- {
- "mso_config_path": "/etc/mso/config.d/",
-
- "mso-api-handler-infra-config":
- {
- "bpelURL": "http://localhost:8080",
- "bpelAuth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "camundaURL": "http://localhost:8080",
- "camundaAuth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
- },
-
- "asdc-connections":
- {
- "asdc-controller1":
- {
- "user": "mso",
- "consumerGroup": "sdc-OpenSource-Env1",
- "consumerId": "sdc-COpenSource-Env11",
- "environmentName": "{{ .Values.dmaapTopic }}",
- "asdcAddress": "sdc-be.{{.Values.nsPrefix}}:8443",
- "password": "613AF3483E695524F9857643B697FA51C7A9A0951094F53791485BF3458F9EADA37DBACCCEBD0CB242B85B4062745247",
- "pollingInterval": 60,
- "pollingTimeout": 60,
- "relevantArtifactTypes": "HEAT,HEAT_ENV,HEAT_VOL",
- "activateServerTLSAuth": "false",
- "keyStorePassword": "",
- "keyStorePath": ""
- }
- },
-
- "mso-sdnc-adapter-config":
- {
- "sdncurls":
- [
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/L3SDN-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/config/L3SDN-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/Firewall-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/config",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/VNF-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/NBNC-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/NORTHBOUND-API:service-topology-operation",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/GENERIC-RESOURCE-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/VNFTOPOLOGYAIC-API:"
- ],
-
- "bpelurl": "http://localhost:8080/mso/SDNCAdapterCallbackService",
- "restbpelurl": "http://localhost:8080/mso/WorkflowMessage",
- "myurl": "http://localhost:8080/adapters/rest/SDNCNotify",
- "sdncauth": "263f7d5f944d4d0c76db74b4148bec67d0bc796a874bc0d2a2a12aae89a866aa69133f700f391f784719a37f6a68d29bf5a2fbae1dab0402db7788c800c5ba73",
- "bpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
- "sdncconnecttime": "5000"
- },
- "mso-po-adapter-config":
- {
- "identity_services":
- [
- {
- "dcp_clli": "DEFAULT_KEYSTONE",
- "identity_url": "{{ .Values.openStackKeyStoneUrl }}/v2.0",
- "mso_id": "{{ .Values.openStackUserName }}",
- "mso_pass": "{{ .Values.openStackEncryptedPasswordHere }}",
- "admin_tenant":"{{ .Values.openStackServiceTenantName }}",
- "member_role": "admin",
- "tenant_metadata": "true",
- "identity_server_type": "KEYSTONE",
- "identity_authentication_type": "USERNAME_PASSWORD"
- }
- ],
-
- "cloud_sites":
- [
- {
- "id": "{{ .Values.openStackRegion }}",
- "aic_version": "2.5",
- "lcp_clli": "{{ .Values.openStackRegion }}",
- "region_id": "{{ .Values.openStackRegion }}",
- "identity_service_id": "DEFAULT_KEYSTONE"
- }
- ],
-
- "vnfbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
- "checkrequiredparameters": "true",
- "nwbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
- },
-
-
- "mso-workflow-message-adapter-config":
- {
- "wmbpelurl": "http://localhost:8080/mso/WorkflowMessage",
- "wmbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
- },
-
- "mso-appc-adapter-config":
- {
- "appc_url": "http://localhost:18080",
- "appc_stub": "/AppC-Simulator/action/execute",
- "appc_auth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "appc_timeout": "30",
- "ueb_cluster_address": "http://localhost:18080",
- "ueb_consumer_group": "testgroup",
- "ueb_consumer_id": "testuser",
- "ueb_topic": "queuetopic",
- "ueb_polling_interval": "30",
- "ueb_polling_interval": "30",
- "ueb_user": "user",
- "ueb_password": "1ec0d74615d4e4639f991c0590c83b88",
- "bpel_url": "http://localhost:18080",
- "bpel_stub": "/AppC-Simulator/bpmn/appCResponse",
- "bpel_auth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "bpel_timeout": "30"
- },
-
- "mso-bpmn-config":
- {
- "urnFileSystemLoadingEnabled": "true"
- },
-
- "mso-bpmn-urn-config":
- {
- "debug":"false",
- "invariantIdL3ToHigherLayerDeleteBonding": "50359538-066f-4a8d-807f-f2bc8eaa79dc",
- "versionIdL3ToHigherLayerDeleteBonding": "52dbec20-47aa-42e4-936c-331d8e350d44",
- "infraCustomerId": "21014aa2-526b-11e6-beb8-9e71128cae77",
- "sniroAuth": "test:testpwd",
- "sniroEndpoint": "http://sniro-emulator.{{.Values.nsPrefix}}:8080/sniro/api/v2/placement",
- "sniroTimeout": "PT30M",
- "serviceAgnosticSniroHost": "http://sniro-emulator.{{.Values.nsPrefix}}:8080",
- "serviceAgnosticSniroEndpoint": "/sniro/api/v2/placement",
- "aaiEndpoint": "https://aai-service.{{.Values.nsPrefix}}:8443",
- "aaiAuth": "2630606608347B7124C244AB0FE34F6F",
- "adaptersNamespace": "http://org.openecomp.mso",
- "adaptersCompletemsoprocessEndpoint": "http://localhost:8080/CompleteMsoProcess",
- "adaptersDbEndpoint": "http://localhost:8080/dbadapters/MsoRequestsDbAdapter",
- "adaptersOpenecompDbEndpoint": "http://localhost:8080/dbadapters/RequestsDbAdapter",
- "catalogDbEndpoint": "http://localhost:8080/ecomp/mso/catalog",
- "adaptersSdncEndpoint": "http://localhost:8080/adapters/SDNCAdapter",
- "adaptersSdncRestEndpoint": "http://localhost:8080/adapters/rest/v1/sdnc",
- "adaptersTenantEndpoint": "http://localhost:8080/tenants/TenantAdapter",
- "adaptersDbAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
- "adaptersWorkflowMessageEndpoint": "http://localhost:8080/workflows/messages/message",
- "workflowMessageEndpoint": "http://localhost:8080/mso/WorkflowMessage",
- "workflowSdncAdapterCallback": "http://localhost:8080/mso/SDNCAdapterCallbackService",
- "workflowSdncReplicationDelay": "PT5S",
- "workflowAaiDistributionDelay": "PT30S",
- "msoKey": "07a7159d3bf51a0e53be7a8f89699be7",
- "adaptersPoAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
- "sdncTimeout": "PT5M",
- "rollback": "true",
- "adaptersNetworkEndpoint": "http://localhost:8080/networks/NetworkAdapter",
- "adaptersNetworkRestEndpoint": "http://localhost:8080/networks/rest/v1/networks",
- "adaptersVnfAsyncEndpoint": "http://localhost:8080/vnfs/VnfAdapterAsync",
- "workflowVnfAdapterDeleteCallback": "http://localhost:8080/mso/vnfAdapterNotify",
- "workflowVnfAdapterCreateCallback": "http://localhost:8080/mso/vnfAdapterNotify",
- "adaptersVnfRestEndpoint": "http://localhost:8080/vnfs/rest/v1/vnfs",
- "workflowVnfAdapterRestCallback": "http://localhost:8080/mso/vnfAdapterRestNotify",
- "poTimeout": "PT5M",
- "sdncFirewallYangModel": "http://com/att/svc/mis/firewall-lite-gui",
- "sdncFirewallYangModelVersion": "2015-05-15",
- "sdncTimeoutFirewall": "20",
- "callbackRetryAttempts": "30",
- "callbackRetrySleepTime": "1000",
- "workflowL3ToHigherLayerAddBondingModelName" : "WAN Bonding",
- "workflowL3ToHigherLayerAddBondingModelVersion" : "2.0"
- }
- },
-
- "override_attributes":
- {
- },
-
- "cookbook_versions":
- {
- "mso-config": "~> 1.0.0"
- }
-}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: mso-mariadb
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mso-mariadb
-spec:
- ports:
- - port: 3306
- name: mso-mariadb-3306
- selector:
- app: mso-mariadb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMsoMso }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: mso
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mso
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "so",
- "version": "v1",
- "url": "/ecomp/mso/infra",
- "protocol": "REST"
- "port": "8080",
- "visualRange":"1"
- },
- {
- "serviceName": "so-deprecated",
- "version": "v1",
- "url": "/ecomp/mso/infra",
- "protocol": "REST"
- "port": "8080",
- "visualRange":"1",
- "path":"/ecomp/mso/infra"
- }
- ]'
-spec:
- selector:
- app: mso
- ports:
- - name: mso1
- port: 8080
- nodePort: {{ .Values.nodePortPrefix }}23
- - name: mso2
- port: 3904
- nodePort: {{ .Values.nodePortPrefix }}25
- - name: mso3
- port: 3905
- nodePort: {{ .Values.nodePortPrefix }}24
- - name: mso4
- port: 9990
- nodePort: {{ .Values.nodePortPrefix }}22
- - name: mso5
- port: 8787
- nodePort: {{ .Values.nodePortPrefix }}50
- type: NodePort
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-confd-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-docker-entry-initd-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-automated-tests-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-bulkload-default-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-demo-dns-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-demo-vfw-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-scripts-camunda-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-main-schemas-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: mso-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dbReplicas }}
- selector:
- matchLabels:
- app: mso-mariadb
- template:
- metadata:
- labels:
- app: mso-mariadb
- name: mso-mariadb
- spec:
- hostname: mso-mariadb
- containers:
- - args:
- image: {{ .Values.image.mariadb }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "mso-mariadb"
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: password
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /etc/mysql/conf.d
- name: mso-mariadb-conf
- - mountPath: /docker-entrypoint-initdb.d/02-load-additional-changes.sh
- name: mso-mariadb-docker-entrypoint-initdb
- subPath: 02-load-additional-changes.sh
- - mountPath: /docker-entrypoint-initdb.d/01-load-default-sql-files.sh
- name: mso-mariadb-docker-entrypoint-initdb
- subPath: 01-load-default-sql-files.sh
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests
- name: mso-mariadb-docker-entrypoint-automated-tests
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default
- name: mso-mariadb-docker-entrypoint-bulkload-default
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns
- name: mso-mariadb-docker-entrypoint-demo-dns
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
- name: mso-mariadb-docker-entrypoint-demo-vfw
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/camunda
- name: mso-mariadb-docker-entrypoint-camunda
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/main-schemas
- name: mso-mariadb-docker-entrypoint-main-schemas
- - mountPath: /var/lib/mysql
- name: mso-mariadb-data
- ports:
- - containerPort: 3306
- name: mso-mariadb
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: mso-mariadb-conf
- configMap:
- name: mso-confd-configmap
- - name: mso-mariadb-docker-entrypoint-initdb
- configMap:
- name: mso-docker-entry-initd-configmap
- - name: mso-mariadb-docker-entrypoint-automated-tests
- configMap:
- name: mso-automated-tests-configmap
- - name: mso-mariadb-docker-entrypoint-bulkload-default
- configMap:
- name: mso-bulkload-default-configmap
- - name: mso-mariadb-docker-entrypoint-demo-dns
- configMap:
- name: mso-demo-dns-configmap
- - name: mso-mariadb-docker-entrypoint-demo-vfw
- configMap:
- name: mso-demo-vfw-configmap
- - name: mso-mariadb-docker-entrypoint-camunda
- configMap:
- name: mso-scripts-camunda-configmap
- - name: mso-mariadb-docker-entrypoint-main-schemas
- configMap:
- name: mso-main-schemas-configmap
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: mso-mariadb-data
- persistentVolumeClaim:
- claimName: mso-db
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMsoMso }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-config-mso-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mso/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-docker-file-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/docker-files/scripts/start-jboss-server.sh").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-jboss-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mso/jboss/standalone-full-ha-mso.xml").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMsoMso }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: mso
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.msoReplicas }}
- selector:
- matchLabels:
- app: mso
- template:
- metadata:
- labels:
- app: mso
- name: mso
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mso-mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: mso-readiness
- containers:
- - command:
- - /tmp/start-jboss-server.sh
- image: {{ .Values.image.mso }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: mso
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /shared/
- name: mso
- - mountPath: /tmp/start-jboss-server.sh
- name: mso-docker-files
- subPath: start-jboss-server.sh
- - mountPath: /opt/jboss/standalone/configuration/standalone-full-ha-mso.xml
- name: mso-jboss-config
- subPath: standalone-full-ha-mso.xml
- - mountPath: /var/log/onap
- name: mso-logs
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.network.xml
- name: mso-logback
- subPath: logback.network.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.tenant.xml
- name: mso-logback
- subPath: logback.tenant.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.vnf.xml
- name: mso-logback
- subPath: logback.vnf.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.vfc.xml
- name: mso-logback
- subPath: logback.vfc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml
- name: mso-logback
- subPath: logback.apihandler-infra.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-appc-adapter-config/logback.appc.xml
- name: mso-logback
- subPath: logback.appc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml
- name: mso-logback
- subPath: logback.msorequestsdbadapter.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-asdc-controller-config/logback.asdc.xml
- name: mso-logback
- subPath: logback.asdc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-sdnc-adapter-config/logback.sdnc.xml
- name: mso-logback
- subPath: logback.sdnc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-bpmn-config/logback.bpmn.xml
- name: mso-logback
- subPath: logback.bpmn.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-workflow-message-adapter-config/logback.workflow-message-adapter.xml
- name: mso-logback
- subPath: logback.workflow-message-adapter.xml
- env:
- - name: JBOSS_DEBUG
- value: "false"
- ports:
- - containerPort: 3904
- - containerPort: 3905
- - containerPort: 8080
- - containerPort: 9990
- - containerPort: 8787
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: mso-logs
- - mountPath: /usr/share/filebeat/data
- name: mso-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: mso-logback
- configMap:
- name: mso-log-configmap
- - name: filebeat-conf
- configMap:
- name: mso-filebeat-configmap
- - name: mso
- configMap:
- name: mso-config-mso-configmap
- items:
- - key: mso-docker.json
- path: mso-docker.json
- mode: 0755
- - key: aai.crt
- path: aai.crt
- mode: 0755
- - key: encryption.key
- path: encryption.key
- mode: 0644
- - name: mso-logs
- emptyDir: {}
- - name: mso-data-filebeat
- emptyDir: {}
- - name: mso-docker-files
- configMap:
- name: mso-docker-file-configmap
- items:
- - key: start-jboss-server.sh
- path: start-jboss-server.sh
- mode: 0755
- - name: mso-jboss-config
- configMap:
- name: mso-jboss-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMsoMso }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-*/}}
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-mso"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-mso"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/mso/mariadb/data
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: mso-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-mso"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-openStackUserName: "vnf_user"
-openStackRegion: "RegionOne"
-openStackKeyStoneUrl: "http://1.2.3.4:5000"
-dmaapTopic: "AUTO"
-openStackServiceTenantName: "service"
-openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
-msoReplicas: 1
-dbReplicas: 1
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- mso: nexus3.onap.org:10001/openecomp/mso:v1.1.2
- mariadb: nexus3.onap.org:10001/mariadb:10.1.11
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
-
-config:
- logstashServiceName: log-ls
- logstashPort: 5044
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP multicloud broker
name: multicloud
-version: 1.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP multicloud OpenStack Ocata Plugin
+name: multicloud-ocata
+version: 2.0.0
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ ocata:
+ handlers: [ocata_handler]
+ level: "DEBUG"
+ propagate: False
+ newton_base:
+ handlers: [ocata_handler]
+ level: "DEBUG"
+ propagate: False
+ common:
+ handlers: [ocata_handler]
+ level: "DEBUG"
+ propagate: False
+
+handlers:
+ ocata_handler:
+ level: "DEBUG"
+ class: "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/multicloud/openstack/ocata/ocata.log"
+ formatter: "mdcFormat"
+ maxBytes: 1024*1024*50
+ backupCount: 10
+
+formatters:
+ standard:
+ format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
+ mdcFormat:
+ format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# #
+# # 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.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - env:
+ - name: MSB_ADDR
+ value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}"
+ - name: AAI_ADDR
+ value: aai.{{ include "common.namespace" . }}
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: ocata-log
+ - mountPath: /opt/ocata/ocata/pub/config/log.yml
+ name: ocata-logconfig
+ subPath: log.yml
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ httpGet:
+ path: /api/multicloud-ocata/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ successThreshold: {{ .Values.liveness.successThreshold }}
+ failureThreshold: {{ .Values.liveness.failureThreshold }}
+ {{ end }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: ocata-log
+ - mountPath: /usr/share/filebeat/data
+ name: ocata-data-filebeat
+
+ volumes:
+ - name: ocata-log
+ emptyDir: {}
+ - name: ocata-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: ocata-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# #
+# # 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.
+*/}}
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "multicloud-ocata",
+ "version": "v0",
+ "url": "/api/multicloud-ocata/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/openstack-ocata:1.1.2-SNAPSHOT
+pullPolicy: Always
+
+# application configuration
+config:
+ msbgateway: msb-iag
+ msbPort: 80
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+service:
+ type: NodePort
+ name: multicloud-ocata
+ externalPort: 9006
+ internalPort: 9006
+ nodePort: 93
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP multicloud VIO plugin
+name: multicloud-vio
+version: 2.0.0
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# #
+# # 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.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: multicloud-vio
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - env:
+ - name: MSB_ADDR
+ value: "{{ .Values.config.msbgateway }}"
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}.{{ include "common.namespace" . }}"
+ - name: AAI_ADDR
+ value: aai.{{ include "common.namespace" . }}
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: vio-log
+ - mountPath: /opt/vio/vio/pub/config/log.yml
+ name: vio-logconfig
+ subPath: log.yml
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ path: /api/multicloud-vio/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ successThreshold: {{ .Values.liveness.successThreshold }}
+ failureThreshold: {{ .Values.liveness.failureThreshold }}
+ {{ end -}}
+
+ # side car containers
+ - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: vio-log
+ - mountPath: /usr/share/filebeat/data
+ name: vio-data-filebeat
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: vio-log
+ emptyDir: {}
+ - name: vio-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: vio-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# #
+# # 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.
+*/}}
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "multicloud-vio",
+ "version": "v0",
+ "url": "/api/multicloud-vio/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/vio:1.1.2-STAGING
+pullPolicy: Always
+
+# application configuration
+config:
+ msbgateway: msb-iag
+ msbPort: 80
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+service:
+ type: NodePort
+ name: multicloud-vio
+ externalPort: 9004
+ internalPort: 9004
+ nodePort: 92
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP multicloud OpenStack WindRiver Plugin
+name: multicloud-windriver
+version: 2.0.0
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ titanium_cloud:
+ handlers: [titanium_cloud_handler]
+ level: "DEBUG"
+ propagate: False
+ newton_base:
+ handlers: [titanium_cloud_handler]
+ level: "DEBUG"
+ propagate: False
+ common:
+ handlers: [titanium_cloud_handler]
+ level: "DEBUG"
+ propagate: False
+
+handlers:
+ titanium_cloud_handler:
+ level: "DEBUG"
+ class: "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/multicloud/openstack/windriver/titanium_cloud.log"
+ formatter: "mdcFormat"
+ maxBytes: 1024*1024*50
+ backupCount: 10
+
+formatters:
+ standard:
+ format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
+ mdcFormat:
+ format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# #
+# # 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.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - env:
+ - name: MSB_ADDR
+ value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}"
+ - name: AAI_ADDR
+ value: aai.{{ include "common.namespace" . }}
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: windriver-log
+ - mountPath: /opt/windriver/titanium_cloud/pub/config/log.yml
+ name: windriver-logconfig
+ subPath: log.yml
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ httpGet:
+ path: /api/multicloud-titanium_cloud/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ successThreshold: {{ .Values.liveness.successThreshold }}
+ failureThreshold: {{ .Values.liveness.failureThreshold }}
+ {{ end }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: windriver-log
+ - mountPath: /usr/share/filebeat/data
+ name: windriver-data-filebeat
+
+ volumes:
+ - name: windriver-log
+ emptyDir: {}
+ - name: windriver-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: windriver-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# #
+# # 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.
+*/}}
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "multicloud-titanium_cloud",
+ "version": "v0",
+ "url": "/api/multicloud-titanium_cloud/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+
+spec:
+ ports:
+ {{ if eq .Values.service.type "NodePort" }}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{ else }}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{ end }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/openstack-windriver:1.1.2-SNAPSHOT
+pullPolicy: Always
+
+# application configuration
+config:
+ msbgateway: msb-iag
+ msbPort: 80
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+service:
+ type: NodePort
+ name: multicloud-windriver
+ externalPort: 9005
+ internalPort: 9005
+ nodePort: 94
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+++ /dev/null
-version: 1
-disable_existing_loggers: False
-
-loggers:
- ocata:
- handlers: [ocata_handler]
- level: "DEBUG"
- propagate: False
- newton_base:
- handlers: [ocata_handler]
- level: "DEBUG"
- propagate: False
- common:
- handlers: [ocata_handler]
- level: "DEBUG"
- propagate: False
-
-handlers:
- ocata_handler:
- level: "DEBUG"
- class: "logging.handlers.RotatingFileHandler"
- filename: "/var/log/onap/multicloud/openstack/ocata/ocata.log"
- formatter: "mdcFormat"
- maxBytes: 1024*1024*50
- backupCount: 10
-
-formatters:
- standard:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
- mdcFormat:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:[%(mdc)s]: %(message)s"
- mdcfmt: "{requestID}"
- datefmt: "%Y-%m-%d %H:%M:%S"
- (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file
+++ /dev/null
-version: 1
-disable_existing_loggers: False
-
-loggers:
- titanium_cloud:
- handlers: [titanium_cloud_handler]
- level: "DEBUG"
- propagate: False
- newton_base:
- handlers: [titanium_cloud_handler]
- level: "DEBUG"
- propagate: False
- common:
- handlers: [titanium_cloud_handler]
- level: "DEBUG"
- propagate: False
-
-handlers:
- titanium_cloud_handler:
- level: "DEBUG"
- class: "logging.handlers.RotatingFileHandler"
- filename: "/var/log/onap/multicloud/openstack/windriver/titanium_cloud.log"
- formatter: "mdcFormat"
- maxBytes: 1024*1024*50
- backupCount: 10
-
-formatters:
- standard:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
- mdcFormat:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:[%(mdc)s]: %(message)s"
- mdcfmt: "{requestID}"
- datefmt: "%Y-%m-%d %H:%M:%S"
- (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file
--- /dev/null
+{
+ "openstack": {
+ "vim_type": "openstack",
+ "versions": {
+ "titanium_cloud": {
+ "version": "titanium_cloud",
+ "extra_info_hint": "",
+ "provider_plugin": "multicloud-titanium_cloud"
+ },
+ "ocata": {
+ "version": "ocata",
+ "extra_info_hint": "",
+ "provider_plugin": "multicloud-ocata"
+ }
+ },
+ "provider_plugin": "multicloud-ocata"
+ },
+ "vmware": {
+ "vim_type": "vmware",
+ "versions": {
+ "4.0": {
+ "version": "4.0",
+ "extra_info_hint": "",
+ "provider_plugin": "multicloud-vio"
+ }
+ },
+ "provider_plugin": "multicloud-vio"
+ }
+}
\ No newline at end of file
--- /dev/null
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMulticloudFramework }}
-apiVersion: v1
-kind: Service
-metadata:
- name: framework
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: framework
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud",
- "version": "v0",
- "url": "/api/multicloud/v0",
- "protocol": "REST",
- "port": "9001",
- "visualRange": "1"
- }
- ]'
-spec:
- ports:
- - name: "framework-port"
- port: 9001
- nodePort: {{ .Values.nodePortPrefix }}91
- selector:
- app: framework
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableMulticloudMulticloudVio }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: multicloud-vio
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: multicloud-vio
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud-vio",
- "version": "v0",
- "url": "/api/multicloud-vio/v0",
- "protocol": "REST",
- "port": "9004",
- "visualRange": "1"
- }
- ]'
-
-spec:
- ports:
- - name: "multicloud-port"
- port: 9004
- nodePort: {{ .Values.nodePortPrefix }}92
- selector:
- app: multicloud-vio
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableMulticloudMulticloudOcata }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: multicloud-ocata
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: multicloud-ocata
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud-ocata",
- "version": "v0",
- "url": "/api/multicloud-ocata/v0",
- "protocol": "REST",
- "port": "9006",
- "visualRange": "1"
- }
- ]'
-
-spec:
- ports:
- - name: "multicloud-port"
- port: 9006
- nodePort: {{ .Values.nodePortPrefix }}93
- selector:
- app: multicloud-ocata
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableMulticloudMulticloudWindriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: multicloud-windriver
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: multicloud-windriver
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud-titanium_cloud",
- "version": "v0",
- "url": "/api/multicloud-titanium_cloud/v0",
- "protocol": "REST",
- "port": "9005",
- "visualRange": "1"
- }
- ]'
-
-spec:
- ports:
- - name: "multicloud-port"
- port: 9005
- nodePort: {{ .Values.nodePortPrefix }}94
- selector:
- app: multicloud-windriver
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: multicloud-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/framework/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-provider-plugin-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/provider-plugin.json").AsConfig . | indent 2 }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - env:
+ - name: MSB_ADDR
+ value: {{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}"
+ - name: AAI_ADDR
+ value: "aai.{{ include "common.namespace" . }}"
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: framework-log
+ - mountPath: /opt/multivimbroker/multivimbroker/pub/config/log.yml
+ name: framework-logconfig
+ subPath: log.yml
+ - mountPath: /opt/multivimbroker/multivimbroker/pub/config/provider-plugin.json
+ name: provider-plugin
+ subPath: provider-plugin.json
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ path: /api/multicloud/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ successThreshold: {{ .Values.liveness.successThreshold }}
+ failureThreshold: {{ .Values.liveness.failureThreshold }}
+ {{ end -}}
+
+ # side car containers
+ - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: framework-log
+ - mountPath: /usr/share/filebeat/data
+ name: framework-data-filebeat
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: framework-log
+ emptyDir: {}
+ - name: provider-plugin
+ configMap:
+ name: {{ include "common.fullname" . }}-provider-plugin-configmap
+ - name: framework-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: framework-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMulticloudFramework }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-framework
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.frameworkReplicas }}
- selector:
- matchLabels:
- app: framework
- template:
- metadata:
- labels:
- app: framework
- name: multicloud-framework
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbgateway . }}
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- image: {{ .Values.image.framework }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: framework
- volumeMounts:
- - mountPath: /var/log/onap
- name: framework-log
- - mountPath: /opt/multivimbroker/multivimbroker/pub/config/log.yml
- name: framework-logconfig
- subPath: log.yml
- ports:
- - containerPort: 9001
- livenessProbe:
- httpGet:
- path: /api/multicloud/v0/swagger.json
- port: 9001
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: framework-log
- - mountPath: /usr/share/filebeat/data
- name: framework-data-filebeat
- volumes:
- - name: framework-log
- emptyDir: {}
- - name: framework-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: framework-logconfig
- configMap:
- name: multicloud-framework-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVidVidServer }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-framework-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/framework/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-vio-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/vio/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-ocata-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/ocata/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-windriver-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/windriver/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMulticloudMulticloudOcata }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-ocata
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.ocataReplicas }}
- selector:
- matchLabels:
- app: multicloud-ocata
- template:
- metadata:
- labels:
- app: multicloud-ocata
- name: multicloud-ocata
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: "{{ tpl .Values.msbgateway . }}"
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- name: multicloud-ocata
- volumeMounts:
- - mountPath: /var/log/onap
- name: ocata-log
- - mountPath: /opt/ocata/ocata/pub/config/log.yml
- name: ocata-logconfig
- subPath: log.yml
- image: {{ .Values.image.ocata }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- ports:
- - containerPort: 9006
- livenessProbe:
- httpGet:
- path: /api/multicloud-ocata/v0/swagger.json
- port: 9006
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: ocata-log
- - mountPath: /usr/share/filebeat/data
- name: ocata-data-filebeat
- volumes:
- - name: ocata-log
- emptyDir: {}
- - name: ocata-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: ocata-logconfig
- configMap:
- name: multicloud-ocata-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMulticloudMulticloudVio }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-vio
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vioReplicas }}
- selector:
- matchLabels:
- app: multicloud-vio
- template:
- metadata:
- labels:
- app: multicloud-vio
- name: multicloud-vio
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: "{{ tpl .Values.msbgateway . }}"
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- name: multicloud-vio
- volumeMounts:
- - mountPath: /var/log/onap
- name: vio-log
- - mountPath: /opt/vio/vio/pub/config/log.yml
- name: vio-logconfig
- subPath: log.yml
- image: {{ .Values.image.vio }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- ports:
- - containerPort: 9004
- livenessProbe:
- httpGet:
- path: /api/multicloud-vio/v0/swagger.json
- port: 9004
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: vio-log
- - mountPath: /usr/share/filebeat/data
- name: vio-data-filebeat
- volumes:
- - name: vio-log
- emptyDir: {}
- - name: vio-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: vio-logconfig
- configMap:
- name: multicloud-vio-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableMulticloudMulticloudWindriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-windriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.windRiverReplicas }}
- selector:
- matchLabels:
- app: multicloud-windriver
- template:
- metadata:
- labels:
- app: multicloud-windriver
- name: multicloud-windriver
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: "{{ tpl .Values.msbgateway . }}"
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- name: multicloud-windriver
- volumeMounts:
- - mountPath: /var/log/onap
- name: windriver-log
- - mountPath: /opt/windriver/titanium_cloud/pub/config/log.yml
- name: windriver-logconfig
- subPath: log.yml
- image: {{ .Values.image.windriver }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- ports:
- - containerPort: 9005
- livenessProbe:
- httpGet:
- path: /api/multicloud-titanium_cloud/v0/swagger.json
- port: 9005
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: windriver-log
- - mountPath: /usr/share/filebeat/data
- name: windriver-data-filebeat
- volumes:
- - name: windriver-log
- emptyDir: {}
- - name: windriver-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: windriver-logconfig
- configMap:
- name: multicloud-windriver-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "multicloud",
+ "version": "v0",
+ "url": "/api/multicloud/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/framework:1.1.2-STAGING
pullPolicy: Always
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-frameworkReplicas: 1
-ocataReplicas: 1
-vioReplicas: 1
-windRiverReplicas: 1
-image:
- readiness: oomk8s/readiness-check:1.1.0
- framework: nexus3.onap.org:10001/onap/multicloud/framework:latest
- vio: nexus3.onap.org:10001/onap/multicloud/vio:latest
- ocata: nexus3.onap.org:10001/onap/multicloud/openstack-ocata:latest
- windriver: nexus3.onap.org:10001/onap/multicloud/openstack-windriver:latest
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
-# domain name of msb gateway
-msbgateway: msb-iag.{{ .Values.nsPrefix }}
-msbPort: 80
+# application configuration
config:
+ msbgateway: msb-iag
+ msbPort: 80
logstashServiceName: log-ls
logstashPort: 5044
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+service:
+ type: NodePort
+ name: multicloud
+ externalPort: 9001
+ internalPort: 9001
+ nodePort: 91
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
sources:
- https://gerrit.onap.org/r/#/admin/projects/
icon: https://wiki.onap.org/download/thumbnails/1015829/onap_704x271%20copy.png?version=1&modificationDate=1488326334000&api=v2
+tillerVersion: "~2.8.2"
# > helm repo add local http://127.0.0.1:8879
dependencies:
- name: aaf
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: aaf.enabled
- name: aai
repository: '@local'
condition: clamp.enabled
- name: cli
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: cli.enabled
- name: common
version: ~2.0.0
repository: '@local'
- name: consul
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: consul.enabled
- name: dcaegen2
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: dcaegen2.enabled
+ - name: dmaap
+ version: ~2.0.0
+ repository: '@local'
+ condition: dmaap.enabled
- name: esr
- version: ~1.0.0
+ version: ~2.0.0
repository: '@local'
condition: esr.enabled
- name: log
version: ~2.0.0
repository: '@local'
condition: log.enabled
- - name: message-router
- version: ~0.1.0
- repository: '@local'
- condition: message-router.enabled
- - name: mock
- version: ~0.1.0
+ - name: sniro-emulator
+ version: ~2.0.0
repository: '@local'
- condition: mock.enabled
+ condition: sniro-emulator.enabled
- name: msb
version: ~2.0.0
repository: '@local'
condition: msb.enabled
- name: multicloud
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: multicloud.enabled
- name: policy
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: policy.enabled
- name: portal
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: portal.enabled
+ - name: oof
+ version: ~2.0.0
+ repository: '@local'
+ condition: oof.enabled
- name: robot
version: ~2.0.0
repository: '@local'
condition: robot.enabled
- name: sdc
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: sdc.enabled
- name: sdnc
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: sdnc.enabled
- name: so
repository: '@local'
condition: so.enabled
- name: uui
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: uui.enabled
- name: vfc
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: vfc.enabled
- name: vid
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: vid.enabled
- name: vnfsdk
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: vnfsdk.enabled
# with other instances running within the same k8s cluster
nodePortPrefix: 302
- # image repositories
- repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
- # readiness check
+ # ONAP Repository
+ # Uncomment the following to enable the use of a single docker
+ # repository but ONLY if your repository mirrors all ONAP
+ # docker images. This includes all images from dockerhub and
+ # any other repository that hosts images for ONAP components.
+ #repository: nexus3.onap.org:10001
+
+ # readiness check - temporary repo until images migrated to nexus3
readinessRepository: oomk8s
- # logging agent
+ # logging agent - temporary repo until images migrated to nexus3
loggingRepository: docker.elastic.co
# image pull policy
enabled: true
cli:
enabled: false
-consul: # Consul Health Check Monitoring
+consul:
enabled: false
dcaegen2:
enabled: false
+dmaap:
+ enabled: false
esr:
enabled: false
log:
enabled: false
-message-router:
+sniro-emulator:
enabled: false
-mock:
+oof:
enabled: false
msb:
enabled: false
enabled: false
portal:
enabled: false
-robot: # Robot Health Check
+robot:
enabled: true
sdc:
enabled: false
sdnc:
enabled: false
-so: # Service Orchestrator
+
+ replicaCount: 1
+
+ mysql:
+ replicaCount: 1
+so:
enabled: true
replicaCount: 1
vid:
enabled: false
vnfsdk:
- enabled: false
\ No newline at end of file
+ enabled: false
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+
+# This override file is useful to test one or more subcharts.
+# It overrides the default ONAP parent chart behaviour to deploy
+# all of ONAP.
+#
+# Example use to enable a single subchart (from this directory):
+#
+# helm install local/onap -n onap --namespace onap -f disable-allcharts.yaml --set so.enabled=true
+
+#################################################################
+# Enable/disable and configure helm charts (ie. applications)
+# to customize the ONAP deployment.
+#################################################################
+aaf:
+ enabled: false
+aai:
+ enabled: false
+appc:
+ enabled: false
+clamp:
+ enabled: false
+cli:
+ enabled: false
+consul:
+ enabled: false
+dcaegen2:
+ enabled: false
+dmaap:
+ enabled: false
+esr:
+ enabled: false
+log:
+ enabled: false
+sniro-emulator:
+ enabled: false
+msb:
+ enabled: false
+multicloud:
+ enabled: false
+oof:
+ enabled: false
+policy:
+ enabled: false
+portal:
+ enabled: false
+robot:
+ enabled: false
+sdc:
+ enabled: false
+sdnc:
+ enabled: false
+so:
+ enabled: false
+uui:
+ enabled: false
+vfc:
+ enabled: false
+vid:
+ enabled: false
+vnfsdk:
+ enabled: false
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
- .dockercfg: {{ .Values.global.repositorySecret | default .Values.repositorySecret }}
-type: kubernetes.io/dockercfg
\ No newline at end of file
+ .dockercfg: {{ include "common.repository.secret" . }}
+type: kubernetes.io/dockercfg
# with other instances running within the same k8s cluster
nodePortPrefix: 302
- # image repositories
- repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
- # readiness check
+ # ONAP Repository
+ # Uncomment the following to enable the use of a single docker
+ # repository but ONLY if your repository mirrors all ONAP
+ # docker images. This includes all images from dockerhub and
+ # any other repository that hosts images for ONAP components.
+ #repository: nexus3.onap.org:10001
+ repositoryCred:
+ user: docker
+ password: docker
+
+ # readiness check - temporary repo until images migrated to nexus3
readinessRepository: oomk8s
- # logging agent
+ # logging agent - temporary repo until images migrated to nexus3
loggingRepository: docker.elastic.co
# image pull policy
# flag to enable debugging - application support required
debugEnabled: false
+# Repository for creation of nexus3.onap.org secret
+repository: nexus3.onap.org:10001
+
#################################################################
# Enable/disable and configure helm charts (ie. applications)
enabled: true
appc:
enabled: true
+ config:
+ openStackType: OpenStackProvider
+ openStackName: OpenStack
+ openStackKeyStoneUrl: http://localhost:8181/apidoc/explorer/index.html
+ openStackServiceTenantName: default
+ openStackDomain: default
+ openStackUserName: admin
+ openStackEncryptedPassword: admin
clamp:
enabled: true
cli:
enabled: true
-consul: # Consul Health Check Monitoring
+consul:
enabled: true
dcaegen2:
enabled: true
+dmaap:
+ enabled: true
esr:
enabled: true
-log: # ONAP Logging ElasticStack
+log:
enabled: true
-message-router:
+sniro-emulator:
enabled: true
-mock:
+oof:
enabled: true
msb:
enabled: true
enabled: true
portal:
enabled: true
-robot: # Robot Health Check
+robot:
enabled: true
sdc:
enabled: true
sdnc:
enabled: true
-so: # Service Orchestrator
+
+ replicaCount: 1
+
+ mysql:
+ replicaCount: 1
+so:
enabled: true
replicaCount: 1
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Optimization Framework
+name: oof
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+make-has:
+ cd charts && helm dep up oof-has
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Homing and Allocation Service
+name: oof-has
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Homing and Allocation Servicei - API
+name: oof-has-api
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-api
+ - --port={{ .Values.service.internalPort }}
+ - --
+ - --config-file=/usr/local/bin/conductor.conf
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+service:
+ type: NodePort
+ name: oof-has-api
+ externalPort: 8091
+ internalPort: 8091
+ nodePort: 75
+ portName: oof-has-api
+ingress:
+ enabled: false
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+resources: {}
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: OOF-HAS Cassandra
+name: oof-has-cassandra
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+
+CREATE KEYSPACE conductor WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
+
+CREATE TABLE conductor.plans (
+ id text PRIMARY KEY,
+ created bigint,
+ message text,
+ name text,
+ recommend_max int,
+ reservation_counter int,
+ reservation_owner text,
+ solution text,
+ solver_counter int,
+ solver_owner text,
+ status text,
+ template text,
+ timeout int,
+ translation text,
+ translation_counter int,
+ translation_owner text,
+ updated bigint,
+ vector_ts text
+);
+
+CREATE INDEX conductor_plans_index ON conductor.plans(status);
+
+CREATE KEYSPACE conductor_rpc WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
+
+CREATE TABLE conductor_rpc.controller (
+ id text PRIMARY KEY,
+ action text,
+ args text,
+ created bigint,
+ ctxt text,
+ failure text,
+ method text,
+ owner text,
+ response text,
+ status text,
+ updated bigint,
+ vector_ts text
+);
+
+CREATE TABLE conductor_rpc.data (
+ id text PRIMARY KEY,
+ action text,
+ args text,
+ created bigint,
+ ctxt text,
+ failure text,
+ method text,
+ owner text,
+ response text,
+ status text,
+ updated bigint,
+ vector_ts text
+);
+
+INSERT INTO admin.keyspace_master (
+uuid, application_name, is_aaf, is_api, keyspace_name, password,username)
+VALUES ( now(), 'conductor', False, True, 'conductor', 'c0nduct0r', 'conductor');
+
+INSERT INTO admin.keyspace_master (
+uuid, application_name, is_aaf, is_api, keyspace_name, password, username)
+VALUES( now(), 'conductor', False, True, 'conductor_rpc', 'c0nduct0r', 'conductor');
+
+CREATE ROLE IF NOT EXISTS conductor WITH PASSWORD = 'c0nduct0r' AND LOGIN = true;
+
+GRANT ALL PERMISSIONS on KEYSPACE conductor to 'conductor';
+
+GRANT ALL PERMISSIONS on KEYSPACE conductor_rpc to 'conductor';
+
+INSERT INTO conductor.plans (id, created, message, name, recommend_max, solution, status, template,timeout, translation,updated) VALUES('healthcheck',1479482603641,'','foo',1,'{"healthcheck": " healthcheck"}','solved','{"healthcheck": "healthcheck"}',3600,'{"healthcheck": "healthcheck"}',1484324150629);
+
+
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-docker-entry-initd
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ - containerPort: {{ .Values.service.internalPort4 }}
+ - containerPort: {{ .Values.service.internalPort5 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CASSUSER
+ value: "{{ .Values.config.cassandraUsername }}"
+ - name: CASSPASS
+ value: "{{ .Values.config.cassandraPassword }}"
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: cassandra-docker-entrypoint-initdb
+ mountPath: /docker-entrypoint-initdb.d/zzz_conductor.cql
+ subPath: zzz_conductor.cql
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/data
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: cassandra-docker-entrypoint-initdb
+ configMap:
+ name: {{ include "common.fullname" . }}-docker-entry-initd
+ {{- if .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
+ name: {{ .Values.service.portName }}5
+
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ name: {{ .Values.service.portName }}5
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+ persistence: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/music/cassandra_music:3.0.0
+pullPolicy: Always
+
+# application configuration
+config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: oof/cassandra/data
+service:
+ type: ClusterIP
+ name: oof-has-cassandra
+ portName: oof-has-cassandra
+ externalPort: 9160
+ internalPort: 9160
+ externalPort2: 7000
+ internalPort2: 7000
+ externalPort3: 7001
+ internalPort3: 7001
+ externalPort4: 7199
+ internalPort4: 7199
+ externalPort5: 9042
+ internalPort5: 9042
+
+ingress:
+ enabled: false
+
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Homing and Allocation Sservice - Controller
+name: oof-has-controller
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-controller
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.sh
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+ingress:
+ enabled: false
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Homing and Allocation Service - Data Component
+name: oof-has-data
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-data
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.sh
+ - mountPath: /usr/local/bin/aai_cert.cer
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: aai_cert.cer
+ - mountPath: /usr/local/bin/aai_key.key
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: aai_key.key
+ - mountPath: /usr/local/bin/bundle.pem
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: bundle.pem
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ - key: aai_cert.cer
+ path: aai_cert.cer
+ - key: aai_key.key
+ path: aai_key.key
+ - key: bundle.pem
+ path: bundle.pem
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+ingress:
+ enabled: false
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP OOF-MUSIC Container
+name: oof-has-music
+version: 2.5.3
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+my.public.ip=localhost
+all.public.ips=localhost
+my.id=0
+all.ids=0
+#######################################
+# Optional current values are defaults
+#######################################
+zookeeper.host=oof-has-zk
+cassandra.host=oof-has-cassandra
+cassandra.user=root
+cassandra.password=Aa123456
+# AAF Endpoint if using AAF
+aaf.endpoint.url=https://aaf.api.simpledemo.onap.org
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+OUT=$(curl -o /dev/null -s -w "%{http_code}\n" \
+ http://localhost:8080/MUSIC/rest/v2/admin/onboardAppWithMusic \
+ -H 'Cache-Control: no-cache' \
+ -H 'Content-Type: application/json' \
+ -H 'Postman-Token: 705d4a9d-aaf2-40b4-914a-e0ce1a79534c' \
+ -d '{
+ "appname": "conductor",
+ "userId" : "conductor",
+ "isAAF" : false,
+ "password" : "c0nduct0r"
+}
+')
+
+if [ ${OUT} = "200" ]; then
+ echo "Success"
+ echo 1 > /tmp/onboarded
+ exit 0;
+else
+ echo "Failure"
+ exit 1;
+fi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+# War Container
+ - name: "{{ include "common.name" . }}-war"
+ image: "{{ include "common.repository" . }}/{{ .Values.warImage }}" #"
+ command: ["cp","/app/MUSIC.war","/webapps"]
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ volumeMounts:
+ - mountPath: /webapps
+ name: shared-data
+ containers:
+ # Tomcat Container
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}" #"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/tomcat/webapps
+ name: shared-data
+ - name: properties-music
+ mountPath: /opt/app/music/etc/music.properties
+ subPath: music.properties
+ - name: properties-music
+ mountPath: /opt/app/music/startup.sh
+ subPath: startup.sh
+ volumes:
+ - name: shared-data
+ emptyDir: {}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-music
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repository: nexus3.onap.org:10001
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: library/tomcat:8.5
+pullPolicy: Always
+warImage: onap/music/music:latest
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ usernameCassandra: cassandra1
+ passwordCassandra: cassandra1
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: oof-has-music
+ externalPort: 8080
+ internalPort: 8080
+ nodePort: 76
+ portName: oof-has-music
+ingress:
+ enabled: false
+
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Homing and Allocation Sevice - Reservation Component
+name: oof-has-reservation
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-reservation
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{ end -}}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.sh
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+ingress:
+ enabled: false
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Homing and Allocation Service - Solver Component
+name: oof-has-solver
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-solver
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.sh
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+ingress:
+ enabled: false
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP OOF Zookeeper
+name: oof-has-zookeeper
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: {{ include "common.repository" . }}/{{ .Values.image }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+ persistence: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: zookeeper:3.4
+pullPolicy: Always
+
+# default number of instances
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+service:
+ type: ClusterIP
+ name: oof-has-zk
+ externalPort: 2181
+ internalPort: 2181
+ portName: oof-has-zookeeper
+ingress:
+ enabled: false
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+-----BEGIN CERTIFICATE-----\r
+MIIEKjCCAxKgAwIBAgIBHjANBgkqhkiG9w0BAQsFADBHMQswCQYDVQQGEwJVUzEN\r
+MAsGA1UECgwET05BUDEOMAwGA1UECwwFT1NBQUYxGTAXBgNVBAMMEGludGVybWVk\r
+aWF0ZUNBXzEwHhcNMTgwNDI1MTIxMzAxWhcNMTkwNDIwMTIxMzAxWjBtMQswCQYD\r
+VQQGEwJVUzENMAsGA1UECgwET05BUDEZMBcGA1UECwwQb29mQG9vZi5vbmFwLm9y\r
+ZzEOMAwGA1UECwwFT1NBQUYxJDAiBgNVBAMMG29vZi5hcGkuc2ltcGxlZGVtby5v\r
+bmFwLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANGpQUtgLXG3\r
+dVikd/QC2Q24wzeTOeZzbx3PnidNYZT5K0sJ/TdnZF6O/4+9gXQ6AQS2Q8wfQ009\r
+MQAA5vhUaq5yZ2K+XAtEFGln1TxTFpGu3WDOwQ800Vw18Dk8WidrkzDJv489Bn1f\r
+SSaPC0IaRB0K1d8BD63ZHgsuEY8lt31DX2wFWJcfN9mxNDzuLTZoLxtxKsedoZKH\r
+rsOOILwXOhwuunfx40i6RQN/pFX6C2i8dtOA5OwUm9Q1RrZ2Tv1Uf4IURriH6bfZ\r
+5n50yxTuL22TMYXsF/ohrdgwacuC0aV9ZSGhIZUJPyHVg7+QTBioHmoUJInVKuIx\r
+kkC4lENbLYUCAwEAAaOB+jCB9zAJBgNVHRMEAjAAMBEGCWCGSAGG+EIBAQQEAwIG\r
+wDAzBglghkgBhvhCAQ0EJhYkT3BlblNTTCBHZW5lcmF0ZWQgU2VydmVyIENlcnRp\r
+ZmljYXRlMB0GA1UdDgQWBBQwbU5oHU2iYHCoVz4hFCvBW59cdTBUBgNVHSMETTBL\r
+gBQd5lldG54KOKRipsGF8/PP1vGX6qEwpC4wLDEOMAwGA1UECwwFT1NBQUYxDTAL\r
+BgNVBAoMBE9OQVAxCzAJBgNVBAYTAlVTggEBMA4GA1UdDwEB/wQEAwIF4DAdBgNV\r
+HSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBADEa\r
+0VuxoFIygeQTqlizpHNwfApPmlAVSKDTWuEu4rhJs8GT61EuWZQPygXEUHCYmGvJ\r
+GMwEGGIDGiQqxMqlqng46gksNJbi1ktXr6Du18qW7gziUd84ve8KcecjZru1Sk1e\r
+UJ/6WEQVE17CHKcnzQZsMDakgP+61VgKbk5NlkeF/Qh4L6/3jY7g+xoXqaId5RT9\r
+BetmH/cMsj33lxQTs0fcXTbAQd6BX5ug854OJ1mU4ngJnNBdmn9Ow1bB71ohf5Xv\r
+OEYX8+khjgjlmM0u1hBRL4qViv3y2Gzhpm1M8cETMDj4g0zIJytzIYMxO8XvDPCF\r
+YmVZHXJDLsCogSOmmh0=\r
+-----END CERTIFICATE-----
\ No newline at end of file
--- /dev/null
+-----BEGIN ENCRYPTED PRIVATE KEY-----\r
+MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIvxjZPeQVkRACAggA\r
+MBQGCCqGSIb3DQMHBAhWqwQCjZFCrASCBMjWG5wsC1WFJISJ5odMHzYOWOKLpaDP\r
+7a/dxnBrV6gId/DTmzoqtiBCmQRqhnUuYok98DNUFGjR9JqztNNOf5eslzqCugsh\r
+zVwCvsJYKvxxJ4Q8tow3DKx28I6EmOvwudMsL9c30OxpEWdlWmyFimu5JDdDvWUH\r
+S0fWKebQETZ7lptiRX2IXhC3Ye6Wu/DowDYc5L4Z/Q8nwncMB3n2ntMX10pBrura\r
+15/R18AvG5cDwcasTXz5WKIB/K2onvJfW0so2M8jApu2DF4MpEIN9Z973uTNFXcL\r
+dgHKWtIl2WO38coedaXUILgsxLSSU27TG4F+7QMGjiKXUSWjN9+TD+8zWye/9OIW\r
+qfVtoh+n7lWtzC3Axo1OmPInCkFb+I7QaDsJgsUn+ZWap7FVJFrYiz20UTzYYgAK\r
+OukCgKiJTHOhTT1k0km34ROPmqOk6mH7IkioUSTmoP362RpIVTbKv2e5GKzhYfkk\r
+27W3RRG/qoZLUTU2AaAyoGZlzXDkBFw2g4vxnhcfHeXX6jyJyQWOOOeRJ5B6uc+Y\r
+4XmKKJvq5pFlxUDmVCZLRzjwpvYPTQwTQQ9t7kEZFI8B7TMkDqv62YlXyoWNDwPq\r
+yLvDwPDicx33AZor8N/eDgIOE+TXQ0vEyphf0c9OcgneeJmEtn7IskEahv32ruMQ\r
+uFAAuIUmQfXPNMXu3MYIUItvZDm3RUk3YJDj9c8YtvxDlzLytHu5QYJ3v7rvo+mG\r
+XKwmnZouaNRLw5Y7Mff07BuTPuttyNadacuJtUjvv8qVOIeuxQ7nku6yqKKLTeJr\r
+8E4/tYyZ15FIo3hWi16h3zyZ9LiHhhe7d2XYSVMuzuD4jkIdHbdgiKsCJn9mI5PF\r
+VpDF34w1Fjwv7Gu32MRMpJijAW10ENaP1O2izr9l8jwo+CLgi5qa6a2YTYAZooqt\r
+UjTLfEIQKbwFbq5L9Eb1uRw1lRR9SxcxdNQdY+mtx0x2BSmXVUEcyi6OG/8Lzf/1\r
+9VoE5UPfhSE7ogfbL8eraFlQmKL8f3h3Jx/XDvvKC8YXxgooEhV0BsofXmLdF0BK\r
+bhXR1/JptLz8CJjtlBWQkmqj+ONOHFA9/4YHMNn5T1PBLNzQCZSjQXrDKxowLDsI\r
+ozUyZ080c2LrJCf6zj6+fB3LDvHYfJ6LnYASCHJlNS0NVmRPiYB/dmoqF/iyAEjp\r
+cKUUrbhs6U95aPMo0pPSCuhLKiibCo3Vz/9dvGb7pr6aj/ehOjrtKtGlYukBqNkS\r
+RQK2kkL8IO+iPWs3aCnEhfeS+wNBMAtI/TEw6As2zseyb3/SylHjek4s1gs9MPdw\r
+c3o2ArwMzmP0sfFIjYz+AyQm+5i/LSnkNjG0OU9ekGXy7Z4HAcko2Dv8/SmOVapP\r
+cf8c55RUDlYJh9Ltn0W5fuNA6dykV7f9s8BIrZcnzTN+lifNhNlEYYcmyZwlCcX4\r
+NBLoH+ENW+Q7+nuhGcf52j/XgTaPZ0Eec8ZJdK7FzVDN4DWKM4KHD7DgpkOR7TZl\r
+IKGNtdvb3SaGG83YlJhRkkr0C2KvB0Mz2dkAhOKX3NkBr5fY62IvuMdqD7VDjGAw\r
+h/GBn0k5+gpVP0Uh6yWEla3CjM9GnUuMVcwIUAYSeW2rFu4iapK0gBwguR91cM1N\r
+MA8=\r
+-----END ENCRYPTED PRIVATE KEY-----\r
--- /dev/null
+-----BEGIN CERTIFICATE-----\r
+MIIEVDCCAjygAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMQ4wDAYDVQQLDAVPU0FB\r
+RjENMAsGA1UECgwET05BUDELMAkGA1UEBhMCVVMwHhcNMTgwNDA1MTQxNTQwWhcN\r
+MTgwNjA0MTQxNTQwWjBHMQswCQYDVQQGEwJVUzENMAsGA1UECgwET05BUDEOMAwG\r
+A1UECwwFT1NBQUYxGTAXBgNVBAMMEGludGVybWVkaWF0ZUNBXzEwggEiMA0GCSqG\r
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCY3YPA/YQdz4kaZQzdRzWNjmn33WYAWZ8+\r
+EIz3PhkEzk7M1q9N7Icx2LvozMj4VH0yGz/HYlliHhw26ZRsjYMSR8zATsXl4oW9\r
+w9BrjuyvM3w8Ptxe8WbUFF9LJDGyXPeVvcXVo0iyh3QYPWC/AWmomN19MvBFN5vH\r
+AvEG/7qtonViNfISW9Gr9LpXB0foCmUDBu/lV+SwRGajoCPqdZhZ6/L6/yqDvha2\r
+wsML/UZXlGhXAedt/xOKmT/dSXx/I0vWBVp6Tq4zu87yCvd+I6Tpa5HjttA2I5EV\r
+zdHX+JYBPBBcVCyO9YQOYjJuoVDE4D5etY6dEipKG/KZF/rqAoqZAgMBAAGjZjBk\r
+MB0GA1UdDgQWBBQd5lldG54KOKRipsGF8/PP1vGX6jAfBgNVHSMEGDAWgBRTVTPy\r
+S+vQUbHBeJrBKDF77+rtSTASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQE\r
+AwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAmgeiitBDi/YEqFh2Cqp0VIEqw8hiuV87\r
+rADQWMK4hv5WXl3KJTjFAnWsYFUKrm6s1jNH16FyGExUQgwggob0Vt+MHiUs36jU\r
+kyret/uE5qrjz+/J+i2XG6s1oKcDRVD/jU4qBygZWFBMuwl7sz8IEvaYXGM43s96\r
+Du3UF9E+V3aMppqkGWz6MnrTmANnWAlDAMeifcoexjrpxiKbp8f49HX1UzwFoeEg\r
+RnVwNqgDWT66yGV6mbNl6FpE/U81RpCRY1ZJDeVTxbqIaG/UPV4hpQ+BEVBDF+cb\r
+rGsvsNYYpWx5srIQ7WtGKIlaDFbfWPwnHDHegzr8ypAS3KNWULE+QXCbHWtB+b0Y\r
+WhP/2F6Jjb+ByvJqQoE+nHEYBeUOZUUZC4IuQFNJ5Wy5P0CNXdheiWhdrBmG02Gy\r
+KMi0FJx6BEoWM2xcdl6bn5j9mhF4TX7zgepNWlgTra4Z8Oz8iqbQk33/s2OKM4ic\r
+6ZezUYhNp+MuUt4Se+ufNcGV65jnUKeROtWzNLwP+xwglEFlG8aNiAORthd7QJuT\r
+Ey2cX7H7f38ENQ5YCriUk1nVLO9F66l/rNRzYZgQzRI3IvDW8vyM2TLW2mcZNsaf\r
+qjFMcCDweV2FRb8eTbmWzzB2/xTVpGzVJqzwgE+U7UtJx5CZS3wPkvXuEgvcg1tY\r
+m1r4NGYFvLM=\r
+-----END CERTIFICATE-----
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+[DEFAULT]
+
+#
+# From conductor
+#
+
+# Configuration file for WSGI definition of API. (string value)
+#api_paste_config = api_paste.ini
+
+# Music keyspace for content (string value)
+keyspace = conductor
+
+#
+# From oslo.log
+#
+
+# If set to true, the logging level will be set to DEBUG instead of the default
+# INFO level. (boolean value)
+# Note: This option can be changed without restarting.
+debug = true
+
+# DEPRECATED: If set to false, the logging level will be set to WARNING instead
+# of the default INFO level. (boolean value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+#verbose = true
+
+# The name of a logging configuration file. This file is appended to any
+# existing logging configuration files. For details about logging configuration
+# files, see the Python logging module documentation. Note that when logging
+# configuration files are used then all logging configuration is set in the
+# configuration file and other logging configuration options are ignored (for
+# example, logging_context_format_string). (string value)
+# Note: This option can be changed without restarting.
+# Deprecated group/name - [DEFAULT]/log_config
+# log_config_append = /usr/local/bin/log.conf
+
+# Defines the format string for %%(asctime)s in log records. Default:
+# %(default)s . This option is ignored if log_config_append is set. (string
+# value)
+#log_date_format = %Y-%m-%d %H:%M:%S
+
+# (Optional) Name of log file to send logging output to. If no default is set,
+# logging will go to stderr as defined by use_stderr. This option is ignored if
+# log_config_append is set. (string value)
+# Deprecated group/name - [DEFAULT]/logfile
+#log_file = <None>
+
+# (Optional) The base directory used for relative log_file paths. This option
+# is ignored if log_config_append is set. (string value)
+# Deprecated group/name - [DEFAULT]/logdir
+#log_dir = <None>
+
+# Uses logging handler designed to watch file system. When log file is moved or
+# removed this handler will open a new log file with specified path
+# instantaneously. It makes sense only if log_file option is specified and
+# Linux platform is used. This option is ignored if log_config_append is set.
+# (boolean value)
+#watch_log_file = false
+
+# Use syslog for logging. Existing syslog format is DEPRECATED and will be
+# changed later to honor RFC5424. This option is ignored if log_config_append
+# is set. (boolean value)
+#use_syslog = false
+
+# Syslog facility to receive log lines. This option is ignored if
+# log_config_append is set. (string value)
+#syslog_log_facility = LOG_USER
+
+# Log output to standard error. This option is ignored if log_config_append is
+# set. (boolean value)
+#use_stderr = false
+
+# Format string to use for log messages with context. (string value)
+#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
+
+# Format string to use for log messages when context is undefined. (string
+# value)
+#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
+
+# Additional data to append to log message when logging level for the message
+# is DEBUG. (string value)
+#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
+
+# Prefix each line of exception output with this format. (string value)
+#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
+
+# Defines the format string for %(user_identity)s that is used in
+# logging_context_format_string. (string value)
+#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
+
+# List of package logging levels in logger=LEVEL pairs. This option is ignored
+# if log_config_append is set. (list value)
+#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
+
+# Enables or disables publication of error events. (boolean value)
+#publish_errors = false
+
+# The format for an instance that is passed with the log message. (string
+# value)
+#instance_format = "[instance: %(uuid)s] "
+
+# The format for an instance UUID that is passed with the log message. (string
+# value)
+#instance_uuid_format = "[instance: %(uuid)s] "
+
+# Interval, number of seconds, of log rate limiting. (integer value)
+#rate_limit_interval = 0
+
+# Maximum number of logged messages per rate_limit_interval. (integer value)
+#rate_limit_burst = 0
+
+# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
+# or empty string. Logs with level greater or equal to rate_limit_except_level
+# are not filtered. An empty string means that all levels are filtered. (string
+# value)
+#rate_limit_except_level = CRITICAL
+
+# Enables or disables fatal status of deprecations. (boolean value)
+#fatal_deprecations = false
+
+
+[aai]
+
+#
+# From conductor
+#
+
+# Interval with which to refresh the local cache, in minutes. (integer value)
+cache_refresh_interval = 1
+complex_cache_refresh_interval = 60
+
+# Data Store table prefix. (string value)
+#table_prefix = aai
+
+# Base URL for A&AI, up to and not including the version, and without a
+# trailing slash. (string value)
+server_url = https://oof.api.simpledemo.onap.org:8443/aai
+
+# The version of A&AI in v# format. (string value)
+server_url_version = v11
+
+# SSL/TLS certificate file in pem format. This certificate must be registered
+# with the A&AI endpoint. (string value)
+certificate_file = /usr/local/bin/aai_cert.cer
+
+# Private Certificate Key file in pem format. (string value)
+certificate_key_file = /usr/local/bin/aai_key.key
+
+# Certificate Authority Bundle file in pem format. Must contain the appropriate
+# trust chain for the Certificate file. (string value)
+#certificate_authority_bundle_file = /opt/app/conductor/etc/certs/ca_bundle.pem
+certificate_authority_bundle_file =/usr/local/bin/bundle.pem
+
+[api]
+
+#
+# From conductor
+#
+
+# Toggle Pecan Debug Middleware. (boolean value)
+#pecan_debug = false
+
+# Default maximum number of items returned by API request. (integer value)
+# Minimum value: 1
+#default_api_return_limit = 100
+
+[conductor_api]
+
+# Basic Authentication Username (string value)
+username = admin1
+
+# Basic Authentication Password (string value)
+password = plan.15
+
+basic_auth_secure = False
+
+[controller]
+
+#
+# From conductor
+#
+
+# Timeout for planning requests. Default value is 10. (integer value)
+# Minimum value: 1
+timeout = 200
+
+# Maximum number of result sets to return. Default value is 1. (integer value)
+# Minimum value: 1
+#limit = 1
+
+# Number of workers for controller service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Time between checking for new plans. Default value is 1. (integer value)
+# Minimum value: 1
+#polling_interval = 1
+concurrent = true
+
+
+[inventory_provider]
+
+#
+# From conductor
+#
+
+# Extensions list to use (list value)
+#extensions = aai
+
+
+[messaging_server]
+
+#
+# From conductor
+#
+
+# Music keyspace for messages (string value)
+keyspace = conductor_rpc
+
+# Wait interval while checking for a message response. Default value is 1
+# second. (integer value)
+# Minimum value: 1
+#check_interval = 1
+
+# Overall message response timeout. Default value is 10 seconds. (integer
+# value)
+# Minimum value: 1
+timeout = 300
+
+# Number of workers for messaging service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Time between checking for new messages. Default value is 1. (integer value)
+# Minimum value: 1
+#polling_interval = 1
+
+# Log debug messages. Default value is False. (boolean value)
+#debug = false
+
+
+[music_api]
+
+#
+# From conductor
+#
+music_new_version = True
+# Base URL for Music REST API without a trailing slash. (string value)
+server_url = http://oof-has-music:8080/MUSIC/rest/v2
+version = v2
+music_version = "2.5.3"
+aafuser = conductor
+aafpass = c0nduct0r
+aafns = conductor
+
+# DEPRECATED: List of hostnames (round-robin access) (list value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+# Reason: Use server_url instead
+#hostnames = <None>
+
+# DEPRECATED: Port (integer value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+# Reason: Use server_url instead
+#port = <None>
+
+# DEPRECATED: Path (string value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+# Reason: Use server_url instead
+#path = <None>
+
+# Lock timeout (integer value)
+#lock_timeout = 10
+replication_factor = 1
+# Log debug messages. Default value is False. (boolean value)
+#debug = false
+
+# Use mock API (boolean value)
+#mock = false
+
+# Socket connection timeout (floating point value)
+connect_timeout = 3.05
+
+# Socket read timeout (floating point value)
+read_timeout = 12.05
+
+
+
+[sdnc]
+
+#
+# From conductor
+#
+
+# Interval with which to refresh the local cache, in minutes. (integer value)
+#cache_refresh_interval = 1440
+
+# Data Store table prefix. (string value)
+#table_prefix = sdnc
+
+# Base URL for SDN-C, up to and including the version. (string value)
+server_url = https://sdncodl-conexus-e2e.ecomp.cci.att.com:8543/restconf/
+
+# Basic Authentication Username (string value)
+username = admin
+
+# Basic Authentication Password (string value)
+password = sdnc.15
+
+
+[service_controller]
+
+#
+# From conductor
+#
+
+# Extensions list to use (list value)
+#extensions = sdnc
+
+
+[solver]
+
+#
+# From conductor
+#
+
+# Number of workers for solver service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Set to True when solver will run in active-active mode. When set to False,
+# solver will restart any orphaned solving requests at startup. (boolean value)
+#concurrent = false
+concurrent = true
+
+
+
+[reservation]
+concurrent = true
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#!/bin/bash
+
+# Controller is a process that reads from Music Q
+# It uses no ports (TCP or HTTP). The PROB will check
+# if the controller process exists or not. In case
+# it exists, it will send 0, else send 1 so k8s can i
+# restart the container
+
+pid="$(pgrep -f '/usr/local/bin/conductor')"
+if [ -z "$pid" ]
+then
+ echo 1
+else
+ echo 0
+fi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+[loggers]
+keys=root
+
+[handlers]
+keys=trfhand,consoleHandler,audithand,metrichand,errhand,debughand
+
+[logger_root]
+level=NOTSET
+handlers=trfhand,consoleHandler,audithand,metrichand,errhand,debughand
+
+[handler_consoleHandler]
+class=StreamHandler
+level=NOTSET
+formatter=generic
+args=(sys.stdout,)
+
+[handler_trfhand]
+class=handlers.TimedRotatingFileHandler
+level=NOTSET
+formatter=generic
+args=('application.log','midnight', 1, 10)
+
+[handler_audithand]
+class=handlers.TimedRotatingFileHandler
+level=INFO
+formatter=audit
+args=('audit.log', 'midnight', 1, 10)
+
+[handler_metrichand]
+class=handlers.TimedRotatingFileHandler
+level=INFO
+formatter=metric
+args=('metric.log','midnight', 1, 10)
+
+[handler_errhand]
+class=handlers.TimedRotatingFileHandler
+level=ERROR
+formatter=error
+args=('error.log','midnight', 1, 10)
+
+[handler_debughand]
+class=handlers.TimedRotatingFileHandler
+level=DEBUG
+formatter=generic
+args=('debug.log','midnight', 1, 10)
+
+[formatters]
+keys=generic,audit,metric,error
+
+[formatter_audit]
+format=%(asctime)s|%(asctime)s|00000000-0000-0000-0000-000000000000||%(thread)d||Conductor|N/A|COMPLETE|200|sucessful||%(levelname)s|||0|%(module)s|||||||||%(name)s : [-] %(message)s
+datefmt=
+
+[formatter_metric]
+format=%(asctime)s|%(asctime)s|00000000-0000-0000-0000-000000000000||%(thread)d||Conductor|N/A|N/A|N/A|COMPLETE|200|sucessful||%(levelname)s|||0|%(module)s||||||||||%(name)s : [-] %(message)s
+datefmt=
+
+[formatter_error]
+format=%(asctime)s|00000000-0000-0000-0000-000000000000|%(thread)d|Conductor|N/A|N/A|N/A|ERROR|500|N/A|%(name)s : [-] %(message)s
+datefmt=
+
+[formatter_generic]
+format=%(asctime)s||%(thread)d|%(levelname)s|%(module)s|%(name)s: [-] %(message)s
+datefmt=
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ repository: nexus3.onap.org:10001
+ commonConfigPrefix: onap-oof-has
+ image:
+ readiness: oomk8s/readiness-check:2.0.0
+ optf_has: onap/optf-has:latest
+ filebeat: docker.elastic.co/beats/filebeat:5.5.0
+
+pullPolicy: Always
+nodePortPrefix: 302
+dataRootDir: /dockerdata-nfs
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+
+# Credentials for the OOF placement service – SO. Newly added.
+osdfPlacementSOUsername: {{ .Values.config.osdfPlacementSOUsername }}
+osdfPlacementSOPassword: {{ .Values.config.osdfPlacementSOPassword }}
+
+# Credentials for the OOF CM scheduling service – Generic. Newly added
+osdfCMSchedulerUsername: {{ .Values.config.osdfCMSchedulerUsername }}
+osdfCMSchedulerPassword: {{ .Values.config.osdfCMSchedulerPassword }}
+
+# msoUrl: "" # The SO url for call back. This will be part of the request, so no need
+soUsername: {{ .Values.config.soUsername }}
+soPassword: {{ .Values.config.soPassword }}
+
+conductorUrl: "{{.Release.Name}}-has-api.{{include "common.namespace" .}}:TODO-PORT-FOR-HAS-API"
+conductorUsername: {{ .Values.config.conductorUsername }}
+conductorPassword: {{ .Values.config.conductorPassword }}
+conductorPingWaitTime: {{ .Values.config.conductorPingWaitTime }}
+conductorMaxRetries: {{ .Values.config.conductorMaxRetries }}
+
+# Policy Platform -- requires ClientAuth, Authorization, and Environment
+policyPlatformUrl: {{ .Values.config.policyPlatformUrl }}
+policyPlatformEnv: {{ .Values.config.policyPlatformEnv }}
+policyPlatformUsername: {{ .Values.config.policyPlatformUsername }}
+policyPlatformPassword: {{ .Values.config.policyPlatformPassword }}
+policyClientUsername: {{ .Values.config.policyClientUsername }}
+policyClientPassword: {{ .Values.config.policyClientPassword }}
+
+messageReaderHosts: {{ .Values.config.messageReaderHosts }}
+messageReaderTopic: {{ .Values.config.messageReaderTopic }}
+messageReaderAafUserId: {{ .Values.config.messageReaderAafUserId }}
+messageReaderAafPassword: {{ .Values.config.messageReaderAafPassword }}
+
+sdcUrl: {{ .Values.config.sdcUrl }}
+sdcUsername: {{ .Values.config.sdcUsername }}
+sdcPassword: {{ .Values.config.sdcPassword }}
+sdcONAPInstanceID: {{ .Values.config.sdcONAPInstanceID }}
+
+osdfPlacementUsername: {{ .Values.config.osdfPlacementUsername }}
+osdfPlacementPassword: {{ .Values.config.osdfPlacementPassword }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - pdp
+ - --container-name
+ - oof-has-api
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/config/osdf_config.yaml
+ name: {{ include "common.fullname" . }}-config
+ subPath: osdf_config.yaml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: osdf_config.yaml
+ path: osdf_config.yaml
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/optf-osdf:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ msbgateway: msb-iag.{{ include "common.namespace" . }}
+ msbPort: 80
+ # Credentials for the OOF placement service – SO.
+ osdfPlacementSOUsername: so_test
+ osdfPlacementSOPassword: so_testpwd
+ # Credentials for the OOF CM scheduling service – Generic.
+ osdfCMSchedulerUsername: test1
+ osdfCMSchedulerPassword: testpwd1
+ # Credentials of the callback url for SO.
+ soUsername: "" # SO username for call back.
+ soPassword: "" # SO password for call back.
+ # Url and credentials for Conductor.
+ conductorUrl: https://oof-has-api.{{ include "common.namespace" . }}:8091/v1/plans/
+ conductorUsername: admin1
+ conductorPassword: plan.15
+ conductorPingWaitTime: 60
+ conductorMaxRetries: 30
+ # Url and credentials for the Policy Platform
+ policyPlatformUrl: http://pdp:8081/pdp/api/getConfig # Policy Dev platform URL
+ policyPlatformEnv: TEST # Environment for policy platform
+ policyPlatformUsername: testpdp # Policy platform username.
+ policyPlatformPassword: alpha123 # Policy platform password.
+ policyClientUsername: python # For use with ClientAuth
+ policyClientPassword: test # For use with ClientAuth
+ # Credentials for the message reader - A placeholder.
+ messageReaderHosts: NA
+ messageReaderTopic: NA
+ messageReaderAafUserId: NA
+ messageReaderAafPassword: NA
+ # Credentials for the SDC interface - A placeholder.
+ sdcUrl: NA
+ sdcUsername: NA
+ sdcPassword: NA
+ sdcONAPInstanceID: NA
+ # Credentials for the placement service – Generic.
+ osdfPlacementUsername: "test"
+ osdfPlacementPassword: "testpwd"
+# default number of instances
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+service:
+ type: NodePort
+ name: oof-osdf
+ externalPort: 8698
+ internalPort: 8699
+ nodePort: 48
+ingress:
+ enabled: false
+resources: {}
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Policy Administration Point
name: policy
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Policy BRMS GW
+name: brmsgw
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#! /bin/bash
+
+PROPS_BUILD="${POLICY_HOME}/etc/build.info"
+
+PROPS_RUNTIME="${POLICY_HOME}/servers/brmsgw/config.properties"
+PROPS_INSTALL="${POLICY_HOME}/install/servers/brmsgw/config.properties"
+
+
+if [ ! -f "${PROPS_BUILD}" ]; then
+ echo "error: version information does not exist: ${PROPS_BUILD}"
+ exit 1
+fi
+
+source "${POLICY_HOME}/etc/build.info"
+
+if [ -z "${version}" ]; then
+ echo "error: no version information present"
+ exit 1
+fi
+
+for CONFIG in ${PROPS_RUNTIME} ${PROPS_INSTALL}; do
+ if [ ! -f "${CONFIG}" ]; then
+ echo "warning: configuration does not exist: ${CONFIG}"
+ else
+ sed -i -e "s/brms.dependency.version=.*/brms.dependency.version=${version}/g" "${CONFIG}"
+ fi
+done
+
+DEPS_JSON_RUNTIME="${POLICY_HOME}/servers/brmsgw/dependency.json"
+DEPS_JSON_INSTALL="${POLICY_HOME}/install/servers/brmsgw/dependency.json"
+
+for DEP in ${DEPS_JSON_RUNTIME} ${DEPS_JSON_INSTALL}; do
+ if [ ! -f "${DEP}" ]; then
+ echo "warning: configuration does not exist: ${DEP}"
+ else
+ sed -i -e "s/\"version\":.*-SNAPSHOT\"/\"version\": \"${version}\"/g" "${DEP}"
+ fi
+done
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# BRMSpep component installation configuration parameters
+BRMSGW_JMX_PORT=9989
+
+COMPONENT_X_MX_MB=1024
+COMPONENT_X_MS_MB=1024
+
+REST_PAP_URL=http://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
+REST_PDP_ID=http://{{ .Values.global.pdp.nameOverride }}:{{.Values.config.pdpPort}}/pdp/
+
+PDP_HTTP_USER_ID=testpdp
+PDP_HTTP_PASSWORD=alpha123
+PDP_PAP_PDP_HTTP_USER_ID=testpap
+PDP_PAP_PDP_HTTP_PASSWORD=alpha123
+
+M2_HOME=/usr/share/maven
+snapshotRepositoryID=policy-nexus-snapshots
+snapshotRepositoryName=Snapshots
+snapshotRepositoryURL=http://{{ .Values.global.nexus.nameOverride }}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots
+releaseRepositoryID=policy-nexus-releases
+releaseRepositoryName=Releases
+releaseRepositoryURL=http://{{ .Values.global.nexus.nameOverride }}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases
+repositoryUsername=admin
+repositoryPassword=admin123
+UEB_URL=message-router
+UEB_TOPIC=PDPD-CONFIGURATION
+UEB_API_KEY=
+UEB_API_SECRET=
+
+groupID=org.onap.policy-engine
+artifactID=drlPDPGroup
+AMSTERDAM_GROUP_ID=org.onap.policy-engine.drools.amsterdam
+AMSTERDAM_ARTIFACT_ID=policy-amsterdam-rules
+
+# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
+resource_name=brmsgw_1
+node_type=brms_gateway
+
+#Environment should be Set either DEV, TEST or PROD
+ENVIRONMENT=TEST
+
+#Notification Properties... type can be either websocket, ueb, or dmaap
+BRMS_NOTIFICATION_TYPE=websocket
+BRMS_UEB_URL=message-router
+BRMS_UEB_TOPIC=PDPD-CONFIGURATION
+BRMS_UEB_DELAY=
+BRMS_CLIENT_ID=python
+BRMS_CLIENT_KEY=dGVzdA==
+BRMS_UEB_API_KEY=
+BRMS_UEB_API_SECRET=
+
+#Dependency.json file version
+BRMS_DEPENDENCY_VERSION=1.2.0
+
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.pap.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - command:
+ - /bin/bash
+ - ./do-start.sh
+ - brmsgw
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{- end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/brmsgw-tweaks.sh
+ name: pe-brmsgw
+ subPath: brmsgw-tweaks.sh
+ - mountPath: /tmp/policy-install/config/brmsgw.conf
+ name: pe-brmsgw
+ subPath: brmsgw.conf
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: pe
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/do-start.sh
+ name: pe-scripts
+ subPath: do-start.sh
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: pe
+ configMap:
+ name: {{ .Release.Name }}-pe-configmap
+ defaultMode: 0755
+ - name: pe-scripts
+ configMap:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ defaultMode: 0777
+ - name: pe-brmsgw
+ configMap:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-pe:1.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ papPort: 9091
+ pdpPort: 8081
+ nexusPort: 8081
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: false
+
+readiness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: brmsgw
+ portName: brmsgw
+ externalPort: 9989
+ nodePort: 16
+
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Drools Policy Engine
+name: drools
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Policy Nexus
+name: nexus
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command: ["sh", "-c", "chown -R 200:200 /share"]
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.global.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-init
+ volumeMounts:
+ - mountPath: /share
+ name: nexus-data
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ httpGet:
+ path: {{ .Values.readiness.path }}
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /sonatype-work
+ name: nexus-data
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: nexus-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ ubuntuInitRepository: oomk8s
+ ubuntuInitImage: ubuntu-init:1.0.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: sonatype/nexus:2.14.8-01
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ path: /nexus/service/local/status
+
+service:
+ type: NodePort
+ name: nexus
+ portName: nexus
+ externalPort: 8081
+ nodePort: 36
+
+ingress:
+ enabled: false
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: nexus/data
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+-->
+
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
+
+<!--
+ <proxies>
+ <proxy>
+ <id>http-proxy</id>
+ <active>true</active>
+ <protocol>http</protocol>
+ <host>fastweb.int.bell.ca</host>
+ <port>80</port>
+ <nonProxyHosts>localhost|127.0.0.1|*.svc.cluster.local|nexus</nonProxyHosts>
+ </proxy>
+ <proxy>
+ <id>https-proxy</id>
+ <active>true</active>
+ <protocol>https</protocol>
+ <host>fastweb.int.bell.ca</host>
+ <port>80</port>
+ <nonProxyHosts>localhost|127.0.0.1|*.svc.cluster.local|nexus</nonProxyHosts>
+ </proxy>
+ </proxies>
+-->
+ <profiles>
+ <profile>
+ <id>policy-profile</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+
+ <repositories>
+ <repository>
+ <id>policy-nexus-snapshots</id>
+ <url>http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ <updatePolicy>always</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ <updatePolicy>always</updatePolicy>
+ </snapshots>
+ </repository>
+
+ <repository>
+ <id>policy-nexus-releases</id>
+ <url>http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases/</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>always</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>always</updatePolicy>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ </profile>
+ </profiles>
+
+ <activeProfiles>
+ <activeProfile>policy-profile</activeProfile>
+ </activeProfiles>
+
+ <servers>
+ <server>
+ <id>policy-nexus-snapshots</id>
+ <username>admin</username>
+ <password>admin123</password>
+ </server>
+ <server>
+ <id>policy-nexus-releases</id>
+ <username>admin</username>
+ <password>admin123</password>
+ </server>
+ </servers>
+
+</settings>
--- /dev/null
+<!--
+# Copyright © 2017 Amdocs, Bell Canada,AT&T
+#
+# 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.
+-->
+
+<configuration scan="true" scanPeriod="30 seconds" debug="false">
+
+ <property name="logDir" value="/var/log/onap" />
+
+ <property name="errorLog" value="error" />
+ <property name="debugLog" value="debug" />
+ <property name="networkLog" value="network" />
+
+ <property name="debugPattern" value="[%date|%level|%logger{0}|%thread] %msg%n" />
+ <property name="errorPattern" value="${debugPattern}" />
+ <property name="networkPattern" value="[%d|%t]%m%n" />
+
+ <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDir}/${errorLog}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDir}/${errorLog}.%i.log.zip</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>5</maxIndex>
+ </rollingPolicy>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>15MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${errorPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ErrorOut" />
+ </appender>
+
+ <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDir}/${debugLog}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDir}/${debugLog}.%i.log.zip</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${debugPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="DebugOut" />
+ </appender>
+
+ <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDir}/${networkLog}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDir}/${networkLog}.%i.log.zip</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>15MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${networkPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="NetworkOut" />
+ </appender>
+
+ <logger name="network" level="INFO" additivity="false">
+ <appender-ref ref="AsyncNetworkOut" />
+ </logger>
+
+ <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">
+ <appender-ref ref="AsyncNetworkOut" />
+ </logger>
+
+ <root level="INFO">
+ <appender-ref ref="AsyncDebugOut" />
+ <appender-ref ref="AsyncErrorOut" />
+ </root>
+
+</configuration>
--- /dev/null
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+
+# #################################
+# Usage
+# #################################
+
+function usage {
+ echo
+ echo "Usage: $(basename $0) <application-name> <zipped-application-version> <download-directory>"
+ echo "Example: $(basename $0) controlloop 1.2.0 /opt/policy/config/drools"
+ echo
+}
+
+# #################################
+# snapshot url computation
+# #################################
+
+function url_snapshot {
+ if [[ $DEBUG == y ]]; then
+ echo "-- ${FUNCNAME[0]} --"
+ set -x
+ fi
+
+ APP_URL="${APP_URL}/snapshots/org/onap/policy/drools-applications/${APP_NAME}/packages/apps-${APP_NAME}/${APP_VERSION}"
+
+ local APP_METADATA_URL="${APP_URL}/maven-metadata.xml"
+ local APP_SNAPSHOT_VERSION=$(curl --silent "${APP_METADATA_URL}" | grep -Po "(?<=<value>).*(?=</value>)" | sort -V | tail -1)
+
+ if [[ -z ${APP_SNAPSHOT_VERSION} ]]; then
+ echo "ERROR: cannot compute SNAPSHOT version"
+ usage
+ exit 1
+ fi
+
+ APP_URL="${APP_URL}/apps-${APP_NAME}-${APP_SNAPSHOT_VERSION}.zip"
+}
+
+# #################################
+# release url computation
+# #################################
+
+function url_release {
+ if [[ $DEBUG == y ]]; then
+ echo "-- ${FUNCNAME[0]} --"
+ set -x
+ fi
+
+ APP_URL="${APP_URL}/releases/org/onap/policy/drools-applications/${APP_NAME}/packages/apps-${APP_NAME}/${APP_VERSION}/apps-${APP_NAME}-${APP_VERSION}.zip"
+}
+
+# #################################
+# Main
+# #################################
+
+if [[ $DEBUG == y ]]; then
+ set -x
+fi
+
+APP_NAME=$1
+if [[ -z ${APP_NAME} ]]; then
+ echo "ERROR: no APPLICATION NAME provided (ie. controlloop)"
+ usage
+ exit 1
+fi
+
+APP_VERSION=$2
+if [[ -z ${APP_VERSION} ]]; then
+ echo "ERROR: no APPLICATION VERSION provided"
+ usage
+ exit 1
+fi
+
+DOWNLOAD_DIR=$3
+if [[ -z ${DOWNLOAD_DIR} ]]; then
+ echo "ERROR: no DOWNLOAD DIRECTORY provided"
+ usage
+ exit 1
+fi
+
+if [[ ! -d ${DOWNLOAD_DIR} ]]; then
+ echo "ERROR: ${DOWNLOAD_DIR} is not a directory"
+ usage
+ exit 1
+fi
+
+APP_GROUP_ID="org.onap.policy.drools-applications.${APP_NAME}.packages"
+APP_ARTIFACT_ID="apps-${APP_NAME}"
+APP_BASE_URL="https://nexus.onap.org/content/repositories"
+
+APP_URL="${APP_BASE_URL}"
+
+if [[ ${APP_VERSION} =~ \-SNAPSHOT$ ]]; then
+ url_snapshot
+else
+ url_release
+fi
+
+wget "${APP_URL}" -O "${DOWNLOAD_DIR}"/apps-"${APP_NAME}".zip
+if [[ $? != 0 ]]; then
+ echo "ERROR: cannot download ${DOWNLOAD_DIR}/apps-${APP_NAME}.zip"
+ exit 1
+fi
+
+echo "APP ${APP_NAME} stored at ${DOWNLOAD_DIR}/apps-${APP_NAME}.zip"
+ls -l "${DOWNLOAD_DIR}"/apps-"${APP_NAME}".zip
--- /dev/null
+# Copyright © 2017-2018 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# SYSTEM software configuration
+
+POLICY_HOME=/opt/app/policy
+POLICY_LOGS=/var/log/onap/policy/pdpd
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
+KEYSTORE_PASSWD=Pol1cy_0nap
+
+# Telemetry credentials
+
+ENGINE_MANAGEMENT_PORT=9696
+ENGINE_MANAGEMENT_HOST=0.0.0.0
+ENGINE_MANAGEMENT_USER=@1b3rt
+ENGINE_MANAGEMENT_PASSWORD=31nst31n
+
+# nexus repository
+
+snapshotRepositoryID=policy-nexus-snapshots
+snapshotRepositoryUrl=http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots/
+releaseRepositoryID=policy-nexus-releases
+releaseRepositoryUrl=http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases/
+repositoryUsername=admin
+repositoryPassword=admin123
+
+# Relational (SQL) DB access
+
+SQL_HOST={{.Values.global.mariadb.nameOverride}}
+SQL_USER=policy_user
+SQL_PASSWORD=policy_user
+
+# PDP-D DMaaP configuration channel
+
+PDPD_CONFIGURATION_TOPIC=PDPD-CONFIGURATION
+PDPD_CONFIGURATION_SERVERS=message-router
+PDPD_CONFIGURATION_API_KEY=
+PDPD_CONFIGURATION_API_SECRET=
+PDPD_CONFIGURATION_CONSUMER_GROUP=
+PDPD_CONFIGURATION_CONSUMER_INSTANCE=
+PDPD_CONFIGURATION_PARTITION_KEY=
+
+# PAP
+
+PAP_HOST={{.Values.global.pap.nameOverride}}
+PAP_USERNAME=testpap
+PAP_PASSWORD=alpha123
+
+# PDP-X
+
+PDP_HOST={{.Values.global.pdp.nameOverride}}
+PDP_USERNAME=testpdp
+PDP_PASSWORD=alpha123
+PDP_CLIENT_USERNAME=python
+PDP_CLIENT_PASSWORD=test
+PDP_ENVIRONMENT=TEST
+
+# DCAE DMaaP
+
+DCAE_TOPIC=unauthenticated.DCAE_CL_OUTPUT
+DCAE_SERVERS=message-router
+DCAE_CONSUMER_GROUP=dcae.policy.shared
+
+# Open DMaaP
+
+DMAAP_SERVERS=message-router
+
+# AAI
+
+AAI_URL=https://aai.api.simpledemo.openecomp.org:8443
+AAI_USERNAME=POLICY
+AAI_PASSWORD=POLICY
+
+# MSO
+
+SO_URL=http://mso:8080/ecomp/mso/infra
+SO_USERNAME=InfraPortalClient
+SO_PASSWORD=password1$
+
+# VFC
+
+VFC_URL=
+VFC_USERNAME=
+VFC_PASSWORD=
--- /dev/null
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+
+# #################################
+# Usage
+# #################################
+
+function usage {
+ echo
+ echo "Usage: $(basename $0)"
+ echo
+}
+
+if [[ ${DEBUG} == y ]]; then
+ set -x
+fi
+
+if [[ -z ${BUILD_VERSION} ]]; then
+ echo "no BUILD_VERSION available as environment variable""
+ usage
+ exit 1
+fi
+
+if [[ -z ${POLICY_INSTALL} ]]; then
+ echo "no POLICY_INSTALL available as environment variable""
+ usage
+ exit 2
+fi
+
+CONFIG_DIR=$(dirname "$0")
+echo "invoking ${CONFIG_DIR}/apps-install.sh for controlloop ${BUILD_VERSION} at ${POLICY_INSTALL}"
+export DEBUG=y
+bash ${CONFIG_DIR}/apps-install.sh controlloop ${BUILD_VERSION} ${POLICY_INSTALL}
+unzip -o ${POLICY_INSTALL}/app*.zip -d ${POLICY_INSTALL}
--- /dev/null
+#! /bin/bash
+
+# Copyright © 2017-2018 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+
+${POLICY_HOME}/bin/features enable healthcheck
+${POLICY_HOME}/bin/features enable pooling-dmaap
+${POLICY_HOME}/bin/features enable distributed-locking
+
+${POLICY_HOME}/bin/db-migrator -s pooling -o upgrade
--- /dev/null
+# Copyright 2018 AT&T Intellectual Property. All rights reserved
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+POOLING_TOPIC=POOLING
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+HEALTHCHECK_USER=healthcheck
+HEALTHCHECK_PASSWORD=zb!XztG34
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+CONTROLLER_ARTIFACT_ID=policy-management
+CONTROLLER_NAME=policy-management-controller
+CONTROLLER_PORT=9696
+RULES_ARTIFACT=not-used:not-used:1.0.0-SNAPSHOT
+UEB_TOPIC=policyengine-develop
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#!/bin/bash
+
+if [ "$#" -ne 4 ]; then
+ echo "Usage: $(basename $0) <k8s-host> <policy-pdp-node-port> <policy-drools-node-port> <resource-id>"
+ exit 1
+fi
+
+K8S_HOST=$1
+POLICY_PDP_PORT=$2
+POLICY_DROOLS_PORT=$3
+RESOURCE_ID=$4
+
+echo
+echo
+echo "Removing the vFW Policy from PDP.."
+echo
+echo
+
+curl -v -X DELETE --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyComponent" : "PDP",
+ "policyName": "com.BRMSParamvFirewall",
+ "policyType": "BRMS_Param"
+}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/deletePolicy
+
+sleep 20
+
+echo
+
+echo
+echo "Updating vFW Operational Policy .."
+echo
+
+curl -v -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "policyConfigType": "BRMS_PARAM",
+ "policyName": "com.BRMSParamvFirewall",
+ "policyDescription": "BRMS Param vFirewall policy",
+ "policyScope": "com",
+ "attributes": {
+ "MATCHING": {
+ "controller": "amsterdam"
+ },
+ "RULE": {
+ "templateName": "ClosedLoopControlName",
+ "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a",
+ "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+'${RESOURCE_ID}'%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+ }
+ }
+}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/updatePolicy
+
+sleep 5
+
+echo
+echo
+echo "Pushing the vFW Policy .."
+echo
+echo
+
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.BRMSParamvFirewall",
+ "policyType": "BRMS_Param"
+}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/pushPolicy
+
+sleep 20
+
+echo
+echo
+echo "Restarting PDP-D .."
+echo
+echo
+
+POD=$(kubectl --namespace onap-policy get pods | sed 's/ .*//'| grep drools)
+kubectl --namespace onap-policy exec -it ${POD} -- bash -c "source /opt/app/policy/etc/profile.d/env.sh && policy stop && sleep 5 && policy start"
+
+sleep 20
+
+echo
+echo
+echo "PDP-D amsterdam maven coordinates .."
+echo
+echo
+
+curl -vvv --silent --user @1b3rt:31nst31n -X GET http://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools | python -m json.tool
+
+
+echo
+echo
+echo "PDP-D control loop updated .."
+echo
+echo
+
+curl -v --silent --user @1b3rt:31nst31n -X GET http://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools/facts/closedloop-amsterdam/org.onap.policy.controlloop.Params | python -m json.tool
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-settings-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/drools/settings.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/opt/policy/config/drools/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/drools/logback.xml").AsConfig . | indent 2 }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-secret
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.Files.Glob "resources/config/opt/policy/config/drools/keys/*").AsSecrets | indent 2 }}
+type: Opaque
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort2 }}
+ {{- else -}}
+ - port: {{ .Values.service.type.externalPort }}
+ targetPort: {{ .Values.service.type.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ - --container-name
+ - {{ .Values.global.nexus.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ hostAliases:
+ - ip: "{{ .Values.config.aaiServiceClusterIp }}"
+ hostnames:
+ - "aai.api.simpledemo.openecomp.org"
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ command:
+ - /bin/bash
+ - -c
+ - ./do-start.sh
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{- end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: REPLICAS
+ value: "{{ .Values.replicaCount }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
+ name: drools-secret
+ subPath: feature-healthcheck.conf
+ - mountPath: /tmp/policy-install/config/feature-pooling-dmaap.conf
+ name: drools-config
+ subPath: feature-pooling-dmaap.conf
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: drools-config
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/config/policy-management.conf
+ name: drools-config
+ subPath: policy-management.conf
+ - mountPath: /tmp/policy-install/config/drools-tweaks.sh
+ name: drools-config
+ subPath: drools-tweaks.sh
+ - mountPath: /tmp/policy-install/config/apps-install.sh
+ name: drools-config
+ subPath: apps-install.sh
+ - mountPath: /tmp/policy-install/config/drools-preinstall.sh
+ name: drools-config
+ subPath: drools-preinstall.sh
+ - mountPath: /usr/share/maven/conf/settings.xml
+ name: drools-settingsxml
+ subPath: settings.xml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /tmp/logback.xml
+ name: policy-logback
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/config/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ - image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.loggingImage }}"
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /usr/share/filebeat/data
+ name: policy-data-filebeat
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-filebeat-configmap
+ - name: policy-logs
+ emptyDir: {}
+ - name: policy-data-filebeat
+ emptyDir: {}
+ - name: policy-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: drools-settingsxml
+ configMap:
+ name: {{ include "common.fullname" . }}-settings-configmap
+ - name: drools-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: base.conf
+ path: base.conf
+ mode: 0755
+ - key: feature-pooling-dmaap.conf
+ path: feature-pooling-dmaap.conf
+ mode: 0755
+ - key: policy-management.conf
+ path: policy-management.conf
+ mode: 0755
+ - key: drools-tweaks.sh
+ path: drools-tweaks.sh
+ mode: 0755
+ - key: apps-install.sh
+ path: apps-install.sh
+ mode: 0755
+ - key: drools-preinstall.sh
+ path: drools-preinstall.sh
+ mode: 0755
+ - name: drools-secret
+ secret:
+ secretName: {{ include "common.fullname" . }}-secret
+ items:
+ - key: feature-healthcheck.conf
+ path: feature-healthcheck.conf
+ mode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuImage: ubuntu:16.04
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-drools:1.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ nexusPort: 8081
+ aaiServiceClusterIp: 10.43.255.254
+
+# default number of instances
+replicaCount: 4
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: drools
+ portName: drools
+ externalPort: 6969
+ nodePort: 17
+ externalPort2: 9696
+ nodePort2: 21
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Policy MariaDB Service
+name: mariadb
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#!/bin/bash -xv
+
+for db in support onap_sdk log migration operationshistory10 pooling
+do
+ mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "CREATE DATABASE IF NOT EXISTS ${db};"
+ mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "GRANT ALL PRIVILEGES ON \`${db}\`.* TO '${MYSQL_USER}'@'%' ;"
+done
+
+mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "FLUSH PRIVILEGES;"
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/db.sh").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ args:
+ - --lower-case-table-names=1
+ - --wait_timeout=28800
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-secret
+ key: db-root-password
+ - name: MYSQL_USER
+ value: policy_user
+ - name: MYSQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-secret
+ key: db-user-password
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /docker-entrypoint-initdb.d
+ name: mariadb-conf
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: mariadb-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ defaultMode: 0755
+ - name: mariadb-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-secret
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.mysqlRootPassword | b64enc | quote }}
+ db-user-password: {{ .Values.config.mysqlPassword | b64enc | quote }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: mariadb:10.2.14
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+ mysqlRootPassword: secret
+ mysqlUserName: policy_user
+ mysqlPassword: policy_user
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: mariadb/data
+
+service:
+ type: ClusterIP
+ name: policydb
+ portName: policydb
+ internalPort: 3306
+
+ingress:
+ enabled: false
+
+resources: {}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Policy PDP
+name: pdp
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+-->
+
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="policy" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="xacml-pdp-rest" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+ <!-- 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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+ %msg%n"</pattern> -->
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+ <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <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>
+ <logger name="com.att.eelf.error" level="info" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+ <logger name="com.att.eelf.debug" level="debug" additivity="false">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+ <root level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#! /bin/bash
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# pdp component installation configuration parameters
+
+# tomcat specific parameters
+
+TOMCAT_JMX_PORT=9991
+TOMCAT_SHUTDOWN_PORT=8087
+SSL_HTTP_CONNECTOR_PORT=8081
+SSL_AJP_CONNECTOR_PORT=8381
+SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
+
+TOMCAT_X_MS_MB=1024
+TOMCAT_X_MX_MB=1024
+
+# pdp properties
+
+UEB_CLUSTER=message-router
+
+REST_PAP_URL=http://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
+REST_PDP_ID=http://${{"{{"}}FQDN{{"}}"}}:{{.Values.service.externalPort}}/pdp/
+REST_PDP_CONFIG=/opt/app/policy/servers/pdp/bin/config
+REST_PDP_WEBAPPS=/opt/app/policy/servers/pdp/webapps
+REST_PDP_REGISTER=true
+REST_PDP_REGISTER_SLEEP=15
+REST_PDP_REGISTER_RETRIES=-1
+REST_PDP_MAXCONTENT=999999999
+
+# PDP related properties
+PDP_HTTP_USER_ID=testpdp
+PDP_HTTP_PASSWORD=alpha123
+PDP_PAP_PDP_HTTP_USER_ID=testpap
+PDP_PAP_PDP_HTTP_PASSWORD=alpha123
+
+node_type=pdp_xacml
+resource_name=pdp_1
+dependency_groups=brmsgw_1
+test_via_jmx=true
+
+#
+# Notification Properties
+# Notification type: websocket, ueb or dmaap... if left blank websocket is the default
+PDP_NOTIFICATION_TYPE=websocket
+PDP_UEB_CLUSTER=
+PDP_UEB_TOPIC=
+PDP_UEB_DELAY=
+PDP_UEB_API_KEY=
+PDP_UEB_API_SECRET=
+PDP_DMAAP_AAF_LOGIN=
+PDP_DMAAP_AAF_PASSWORD=
+
+#AAF Policy Name space
+#Required only, when we use AAF
+POLICY_AAF_NAMESPACE=
+POLICY_AAF_RESOURCE=
+
+# Indeterminate resolution
+DECISION_INDETERMINATE_RESPONSE=PERMIT
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# JVM specific parameters
+LOGPARSER_JMX_PORT=9997
+LOGPARSER_X_MS_MB=1024
+LOGPARSER_X_MX_MB=1024
+
+SERVER=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort}}/pdp/
+LOGPATH=/opt/app/policy/servers/pdp/logs/pdp-rest.log
+PARSERLOGPATH=IntegrityMonitor.log
+
+node_type=logparser
+# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
+resource_name=pdplp_1
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/xacml-pdp-rest/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "{{ include "common.servicename" . }}",
+ "version": "v1",
+ "url": "/pdp",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1"
+ },
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ sessionAffinity: None
+ clusterIP: None
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.pap.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - command:
+ - /bin/bash
+ - ./do-start.sh
+ - pdp
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{- end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: pe
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/config/pdp-tweaks.sh
+ name: pe-pdp
+ subPath: pdp-tweaks.sh
+ - mountPath: /tmp/policy-install/config/pdplp.conf
+ name: pe-pdp
+ subPath: pdplp.conf
+ - mountPath: /tmp/policy-install/config/pdp.conf
+ name: pe-pdp
+ subPath: pdp.conf
+ - mountPath: /tmp/policy-install/do-start.sh
+ name: pe-scripts
+ subPath: do-start.sh
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /tmp/logback.xml
+ name: policy-logback
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pdp/webapps/pdp/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ - image: {{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /usr/share/filebeat/data
+ name: policy-data-filebeat
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-filebeat-configmap
+ - name: policy-logs
+ emptyDir: {}
+ - name: policy-data-filebeat
+ emptyDir: {}
+ - name: policy-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: pe
+ configMap:
+ name: {{ .Release.Name }}-pe-configmap
+ defaultMode: 0755
+ - name: pe-scripts
+ configMap:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ defaultMode: 0777
+ - name: pe-pdp
+ configMap:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-pe:1.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ papPort: 9091
+
+# default number of instances
+replicaCount: 2
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: pdp
+ portName: pdp
+ internalPort: 8081
+ externalPort: 8081
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Policy Common
+name: policy-common
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
+POLICY_HOME=/opt/app/policy
+POLICY_LOGS=/var/log/onap
+KEYSTORE_PASSWD=Pol1cy_0nap
+
+JDBC_DRIVER=org.mariadb.jdbc.Driver
+JDBC_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/onap_sdk?connectTimeout=30000&socketTimeout=60000&log=true&sessionVariables=max_statement_time=30
+JDBC_LOG_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/log?connectTimeout=30000&socketTimeout=60000&log=true&sessionVariables=max_statement_time=30
+JDBC_USER=policy_user
+JDBC_PASSWORD=policy_user
+
+site_name=site_1
+fp_monitor_interval=30
+failed_counter_threshold=3
+test_trans_interval=20
+write_fpc_interval=5
+max_fpc_update_interval=60
+test_via_jmx=false
+jmx_fqdn=
+
+ENVIRONMENT=TEST
+
+#Micro Service Model Properties
+policy_msOnapName=
+policy_msPolicyName=
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#!/bin/bash
+
+# Script to configure and start the Policy components that are to run in the designated container,
+# It is intended to be used as the entrypoint in the Dockerfile, so the last statement of the
+# script just goes into a long sleep so that the script does not exit (which would cause the
+# container to be torn down).
+
+container=$1
+
+case $container in
+pap)
+ comps="base pap paplp console mysql elk"
+ ;;
+pdp)
+ comps="base pdp pdplp"
+ ;;
+brmsgw)
+ comps="base brmsgw"
+ ;;
+*)
+ echo "Usage: do-start.sh pap|pdp|brmsgw" >&2
+ exit 1
+esac
+
+
+# skip installation if build.info file is present (restarting an existing container)
+if [[ -f /opt/app/policy/etc/build.info ]]; then
+ echo "Found existing installation, will not reinstall"
+ . /opt/app/policy/etc/profile.d/env.sh
+
+else
+ if [[ -d config ]]; then
+ cp config/*.conf .
+ fi
+
+ for comp in $comps; do
+ echo "Installing component: $comp"
+ ./docker-install.sh --install $comp
+ done
+ for comp in $comps; do
+ echo "Configuring component: $comp"
+ ./docker-install.sh --configure $comp
+ done
+
+ . /opt/app/policy/etc/profile.d/env.sh
+
+ # install keystore
+ #changed to use http instead of http, so keystore no longer needed
+ #cp config/policy-keystore.jks $POLICY_HOME/etc/ssl/policy-keystore
+
+ if [[ -f config/$container-tweaks.sh ]] ; then
+ # file may not be executable; running it as an
+ # argument to bash avoids needing execute perms.
+ bash config/$container-tweaks.sh
+ fi
+
+ if [[ $container == pap ]]; then
+ # wait for DB up
+ # now that DB is up, invoke database upgrade
+ # (which does nothing if the db is already up-to-date)
+ dbuser=$(echo $(grep '^JDBC_USER=' base.conf | cut -f2 -d=))
+ dbpw=$(echo $(grep '^JDBC_PASSWORD=' base.conf | cut -f2 -d=))
+ db_upgrade_remote.sh $dbuser $dbpw {{.Values.global.mariadb.nameOverride}}
+ fi
+
+fi
+
+policy.sh start
+
+# on pap, wait for pap, pdp, brmsgw, nexus and drools up,
+# then push the initial default policies
+if [[ $container == pap ]]; then
+ # wait addional 1 minute for all processes to get fully initialized and synched up
+ sleep 60
+ bash -xv config/push-policies.sh
+fi
+
+sleep 1000d
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/scripts/do-start.sh").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+ mariadbPort: 3306
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: <onap-app>
+ externalPort: <8080>
+ #Example internal target port if required
+ #internalPort: <80>
+ nodePort: <replace with unused node port suffix eg. 23>
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- Base Package
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
-
-<!--
- <proxies>
- <proxy>
- <id>http-proxy</id>
- <active>true</active>
- <protocol>http</protocol>
- <host>fastweb.int.bell.ca</host>
- <port>80</port>
- <nonProxyHosts>localhost|127.0.0.1|*.svc.cluster.local|nexus</nonProxyHosts>
- </proxy>
- <proxy>
- <id>https-proxy</id>
- <active>true</active>
- <protocol>https</protocol>
- <host>fastweb.int.bell.ca</host>
- <port>80</port>
- <nonProxyHosts>localhost|127.0.0.1|*.svc.cluster.local|nexus</nonProxyHosts>
- </proxy>
- </proxies>
--->
- <profiles>
- <profile>
- <id>policy-profile</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
-
- <repositories>
- <repository>
- <id>policy-nexus-snapshots</id>
- <url>http://nexus:8081/nexus/content/repositories/snapshots/</url>
- <releases>
- <enabled>false</enabled>
- <updatePolicy>always</updatePolicy>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- <updatePolicy>always</updatePolicy>
- </snapshots>
- </repository>
-
- <repository>
- <id>policy-nexus-releases</id>
- <url>http://nexus:8081/nexus/content/repositories/releases/</url>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>always</updatePolicy>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- <updatePolicy>always</updatePolicy>
- </snapshots>
- </repository>
- </repositories>
-
- </profile>
- </profiles>
-
- <activeProfiles>
- <activeProfile>policy-profile</activeProfile>
- </activeProfiles>
-
- <servers>
- <server>
- <id>policy-nexus-snapshots</id>
- <username>admin</username>
- <password>admin123</password>
- </server>
- <server>
- <id>policy-nexus-releases</id>
- <username>admin</username>
- <password>admin123</password>
- </server>
- </servers>
-
-</settings>
+++ /dev/null
-<!--\r
- ============LICENSE_START=======================================================\r
- policy-management\r
- ================================================================================\r
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
- ================================================================================\r
- Licensed under the Apache License, Version 2.0 (the "License");\r
- you may not use this file except in compliance with the License.\r
- You may obtain a copy of the License at\r
-\r
- http://www.apache.org/licenses/LICENSE-2.0\r
-\r
- Unless required by applicable law or agreed to in writing, software\r
- distributed under the License is distributed on an "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- See the License for the specific language governing permissions and\r
- limitations under the License.\r
- ============LICENSE_END=========================================================\r
- -->\r
-\r
-<configuration scan="true" scanPeriod="30 seconds" debug="false">\r
-\r
- <property name="logDir" value="/var/log/onap" />\r
-\r
- <property name="errorLog" value="error" />\r
- <property name="debugLog" value="debug" />\r
- <property name="networkLog" value="network" />\r
-\r
- <property name="debugPattern" value="[%date|%level|%logger{0}|%thread] %msg%n" />\r
- <property name="errorPattern" value="${debugPattern}" />\r
- <property name="networkPattern" value="[%d|%t]%m%n" />\r
-\r
- <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDir}/${errorLog}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
- <fileNamePattern>${logDir}/${errorLog}.%i.log.zip</fileNamePattern>\r
- <minIndex>1</minIndex>\r
- <maxIndex>5</maxIndex>\r
- </rollingPolicy>\r
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
- <level>WARN</level>\r
- </filter>\r
- <triggeringPolicy\r
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
- <maxFileSize>15MB</maxFileSize>\r
- </triggeringPolicy>\r
- <encoder>\r
- <pattern>${errorPattern}</pattern>\r
- </encoder>\r
- </appender>\r
-\r
- <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">\r
- <appender-ref ref="ErrorOut" />\r
- </appender>\r
-\r
- <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDir}/${debugLog}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
- <fileNamePattern>${logDir}/${debugLog}.%i.log.zip</fileNamePattern>\r
- <minIndex>1</minIndex>\r
- <maxIndex>9</maxIndex>\r
- </rollingPolicy>\r
- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
- <maxFileSize>20MB</maxFileSize>\r
- </triggeringPolicy>\r
- <encoder>\r
- <pattern>${debugPattern}</pattern>\r
- </encoder>\r
- </appender>\r
-\r
- <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">\r
- <appender-ref ref="DebugOut" />\r
- </appender>\r
-\r
- <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDir}/${networkLog}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
- <fileNamePattern>${logDir}/${networkLog}.%i.log.zip</fileNamePattern>\r
- <minIndex>1</minIndex>\r
- <maxIndex>9</maxIndex>\r
- </rollingPolicy>\r
- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
- <maxFileSize>15MB</maxFileSize>\r
- </triggeringPolicy>\r
- <encoder>\r
- <pattern>${networkPattern}</pattern>\r
- </encoder>\r
- </appender>\r
-\r
- <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">\r
- <appender-ref ref="NetworkOut" />\r
- </appender>\r
-\r
- <logger name="network" level="INFO" additivity="false">\r
- <appender-ref ref="AsyncNetworkOut" />\r
- </logger>\r
-\r
- <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">\r
- <appender-ref ref="AsyncNetworkOut" />\r
- </logger>\r
-\r
- <root level="INFO">\r
- <appender-ref ref="AsyncDebugOut" />\r
- <appender-ref ref="AsyncErrorOut" />\r
- </root>\r
-\r
-</configuration>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
- ================================================================================\r
- eCOMP Portal SDK\r
- ================================================================================\r
- Copyright (C) 2017 AT&T Intellectual Property\r
- ================================================================================\r
- Licensed under the Apache License, Version 2.0 (the "License");\r
- you may not use this file except in compliance with the License.\r
- You may obtain a copy of the License at\r
- \r
- http://www.apache.org/licenses/LICENSE-2.0\r
- \r
- Unless required by applicable law or agreed to in writing, software\r
- distributed under the License is distributed on an "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- See the License for the specific language governing permissions and\r
- limitations under the License.\r
- ================================================================================\r
- -->\r
-<configuration debug="true" scan="true" scanPeriod="3 seconds">\r
- <!-- \r
- Logback files for the ECOMP SDK Application "ecomp_app"\r
- are created in directory ${catalina.base}/logs/ecomp_app;\r
- e.g., apache-tomcat-8.0.35/logs/ecomp_app/application.log \r
- -->\r
- <!--<jmxConfigurator /> -->\r
- <!-- specify the base path of the log directory -->\r
- <property name="logDir" value="/var/log/onap" />\r
- <!-- specify the component name -->\r
- <property name="componentName" value="policy" />\r
- <!-- specify the sub component name -->\r
- <property name="subComponentName" value="ep_sdk_app" />\r
- <!-- The directories where logs are written -->\r
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
- <!-- log file names -->\r
- <property name="generalLogName" value="application" />\r
- <property name="errorLogName" value="error" />\r
- <property name="metricsLogName" value="metrics" />\r
- <property name="auditLogName" value="audit" />\r
- <property name="debugLogName" value="debug" />\r
- <property name="queueSize" value="256" />\r
- <property name="maxFileSize" value="50MB" />\r
- <property name="maxHistory" value="30" />\r
- <property name="totalSizeCap" value="10GB" />\r
- <!--\r
- These loggers are not used in code (yet). \r
- <property name="securityLogName" value="security" />\r
- <property name="policyLogName" value="policy" />\r
- <property name="performanceLogName" value="performance" />\r
- <property name="serverLogName" value="server" />\r
- -->\r
- <!-- Example evaluator filter applied against console appender -->\r
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF Appenders -->\r
- <!-- ============================================================================ -->\r
- <!-- The EELFAppender is used to record events to the general application \r
- log -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">\r
- <file>${logDirectory}/${generalLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <!-- daily rollover -->\r
- <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- <filter class="org.openecomp.portalapp.util.CustomLoggingFilter" />\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">\r
- <queueSize>${queueSize}</queueSize>\r
- <!-- Class name is part of caller data -->\r
- <includeCallerData>true</includeCallerData>\r
- <appender-ref ref="EELF" />\r
- </appender>\r
- <!-- EELF Audit Appender. This appender is used to record audit engine \r
- related logging events. The audit logger and appender are specializations \r
- of the EELF application root logger and appender. This can be used to segregate \r
- Policy engine events from other components, or it can be eliminated to record \r
- these events as part of the application root log. -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">\r
- <file>${logDirectory}/${auditLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <!-- daily rollover -->\r
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFAudit" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">\r
- <file>${logDirectory}/${metricsLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <!-- daily rollover -->\r
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFMetrics" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">\r
- <file>${logDirectory}/${errorLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <!-- daily rollover -->\r
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
- <level>INFO</level>\r
- </filter>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFError" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">\r
- <file>${logDirectory}/${debugLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <!-- daily rollover -->\r
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFDebug" />\r
- <includeCallerData>true</includeCallerData>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF loggers -->\r
- <!-- ============================================================================ -->\r
- <logger additivity="false" level="info" name="com.att.eelf.audit">\r
- <appender-ref ref="asyncEELFAudit" />\r
- </logger>\r
- <logger additivity="false" level="info" name="com.att.eelf.metrics">\r
- <appender-ref ref="asyncEELFMetrics" />\r
- </logger>\r
- <logger additivity="false" level="info" name="com.att.eelf.error">\r
- <appender-ref ref="asyncEELFError" />\r
- </logger>\r
- <logger additivity="false" level="debug" name="com.att.eelf.debug">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </logger>\r
- <root level="INFO">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </root>\r
-</configuration>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+-->
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--
+ Logback files for the ECOMP SDK Application "ecomp_app"
+ are created in directory ${catalina.base}/logs/ecomp_app;
+ e.g., apache-tomcat-8.0.35/logs/ecomp_app/application.log
+ -->
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="policy" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="ep_sdk_app" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="generalLogName" value="application" />
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!--
+ These loggers are not used in code (yet).
+ <property name="securityLogName" value="security" />
+ <property name="policyLogName" value="policy" />
+ <property name="performanceLogName" value="performance" />
+ <property name="serverLogName" value="server" />
+ -->
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
+ <file>${logDirectory}/${generalLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ <filter class="org.openecomp.portalapp.util.CustomLoggingFilter" />
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
+ <queueSize>${queueSize}</queueSize>
+ <!-- Class name is part of caller data -->
+ <includeCallerData>true</includeCallerData>
+ <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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
+ <file>${logDirectory}/${auditLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFAudit" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
+ <file>${logDirectory}/${metricsLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
+ <file>${logDirectory}/${debugLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger additivity="false" level="info" name="com.att.eelf.audit">
+ <appender-ref ref="asyncEELFAudit" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.metrics">
+ <appender-ref ref="asyncEELFMetrics" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.error">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+ <logger additivity="false" level="debug" name="com.att.eelf.debug">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+ <root level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
+++ /dev/null
-filebeat.prospectors:
-#it is mandatory, in our case it's log
-- input_type: log
- #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
- paths:
- - /var/log/onap/*/*/*/*.log
- - /var/log/onap/*/*/*.log
- - /var/log/onap/*/*.log
- #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
- ignore_older: 48h
- # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
- clean_inactive: 96h
-
-
-# Name of the registry file. If a relative path is used, it is considered relative to the
-# data path. Else full qualified file name.
-#filebeat.registry_file: ${path.data}/registry
-
-
-output.logstash:
- #List of logstash server ip addresses with port number.
- #But, in our case, this will be the loadbalancer IP address.
- #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
- hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
- #If enable will do load balancing among availabe Logstash, automatically.
- loadbalance: true
-
- #The list of root certificates for server verifications.
- #If certificate_authorities is empty or not set, the trusted
- #certificate authorities of the host system are used.
- #ssl.certificate_authorities: $ssl.certificate_authorities
-
- #The path to the certificate for SSL client authentication. If the certificate is not specified,
- #client authentication is not available.
- #ssl.certificate: $ssl.certificate
-
- #The client certificate key used for client authentication.
- #ssl.key: $ssl.key
-
- #The passphrase used to decrypt an encrypted key stored in the configured key file
- #ssl.key_passphrase: $ssl.key_passphrase
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
- ============LICENSE_START=======================================================\r
- ECOMP Policy Engine\r
- ================================================================================\r
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
- ================================================================================\r
- Licensed under the Apache License, Version 2.0 (the "License");\r
- you may not use this file except in compliance with the License.\r
- You may obtain a copy of the License at\r
- \r
- http://www.apache.org/licenses/LICENSE-2.0\r
- \r
- Unless required by applicable law or agreed to in writing, software\r
- distributed under the License is distributed on an "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- See the License for the specific language governing permissions and\r
- limitations under the License.\r
- ============LICENSE_END=========================================================\r
- -->\r
-<configuration debug="true" scan="true" scanPeriod="3 seconds">\r
- <!--<jmxConfigurator /> -->\r
- <!-- specify the base path of the log directory --> \r
- <property name="logDir" value="/var/log/onap" />\r
- <!-- specify the component name -->\r
- <property name="componentName" value="policy" />\r
- <!-- specify the sub component name -->\r
- <property name="subComponentName" value="pypdpserver" />\r
- <!-- The directories where logs are written --> \r
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
- <!-- log file names -->\r
- <property name="errorLogName" value="error" />\r
- <property name="metricsLogName" value="metrics" />\r
- <property name="auditLogName" value="audit" />\r
- <property name="debugLogName" value="debug" />\r
- <property name="queueSize" value="256" />\r
- <property name="maxFileSize" value="50MB" />\r
- <property name="maxHistory" value="30" />\r
- <property name="totalSizeCap" value="10GB" />\r
- <!-- Example evaluator filter applied against console appender -->\r
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF Appenders -->\r
- <!-- ============================================================================ -->\r
- <!-- The EELFAppender is used to record events to the general application \r
- log -->\r
- <!-- EELF Audit Appender. This appender is used to record audit engine \r
- related logging events. The audit logger and appender are specializations \r
- of the EELF application root logger and appender. This can be used to segregate \r
- Policy engine events from other components, or it can be eliminated to record \r
- these events as part of the application root log. -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">\r
- <file>${logDirectory}/${auditLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFAudit" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">\r
- <file>${logDirectory}/${metricsLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - \r
- %msg%n"</pattern> -->\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFMetrics" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">\r
- <file>${logDirectory}/${errorLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
- <level>INFO</level>\r
- </filter>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFError" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">\r
- <file>${logDirectory}/${debugLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFDebug" />\r
- <includeCallerData>true</includeCallerData>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF loggers -->\r
- <!-- ============================================================================ -->\r
- <logger additivity="false" level="info" name="com.att.eelf.audit">\r
- <appender-ref ref="asyncEELFAudit" />\r
- </logger>\r
- <logger additivity="false" level="info" name="com.att.eelf.metrics">\r
- <appender-ref ref="asyncEELFMetrics" />\r
- </logger>\r
- <logger additivity="false" level="info" name="com.att.eelf.error">\r
- <appender-ref ref="asyncEELFError" />\r
- </logger>\r
- <logger additivity="false" level="debug" name="com.att.eelf.debug">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </logger>\r
- <root level="INFO">\r
- <appender-ref ref="asyncEELFDebug" />\r
- <appender-ref ref="asyncEELFError" />\r
- </root>\r
-</configuration>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
- ============LICENSE_START=======================================================\r
- ECOMP-PAP-REST\r
- ================================================================================\r
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
- ================================================================================\r
- Licensed under the Apache License, Version 2.0 (the "License");\r
- you may not use this file except in compliance with the License.\r
- You may obtain a copy of the License at\r
- \r
- http://www.apache.org/licenses/LICENSE-2.0\r
- \r
- Unless required by applicable law or agreed to in writing, software\r
- distributed under the License is distributed on an "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- See the License for the specific language governing permissions and\r
- limitations under the License.\r
- ============LICENSE_END=========================================================\r
- -->\r
-<configuration debug="true" scan="true" scanPeriod="3 seconds">\r
- <!--<jmxConfigurator /> -->\r
- <!-- specify the base path of the log directory -->\r
- <property name="logDir" value="/var/log/onap" />\r
- <!-- specify the component name -->\r
- <property name="componentName" value="policy" />\r
- <!-- specify the sub component name -->\r
- <property name="subComponentName" value="xacml-pap-rest" />\r
- <!-- The directories where logs are written -->\r
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
- <!-- log file names -->\r
- <property name="errorLogName" value="error" />\r
- <property name="metricsLogName" value="metrics" />\r
- <property name="auditLogName" value="audit" />\r
- <property name="debugLogName" value="debug" />\r
- <property name="queueSize" value="256" />\r
- <property name="maxFileSize" value="50MB" />\r
- <property name="maxHistory" value="30" />\r
- <property name="totalSizeCap" value="10GB" />\r
- <!-- Example evaluator filter applied against console appender -->\r
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF Appenders -->\r
- <!-- ============================================================================ -->\r
- <!-- The EELFAppender is used to record events to the general application \r
- log -->\r
- <!-- EELF Audit Appender. This appender is used to record audit engine \r
- related logging events. The audit logger and appender are specializations \r
- of the EELF application root logger and appender. This can be used to segregate \r
- Policy engine events from other components, or it can be eliminated to record \r
- these events as part of the application root log. -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">\r
- <file>${logDirectory}/${auditLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFAudit" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">\r
- <file>${logDirectory}/${metricsLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - \r
- %msg%n"</pattern> -->\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFMetrics" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">\r
- <file>${logDirectory}/${errorLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
- <level>INFO</level>\r
- </filter>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFError" />\r
- </appender>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">\r
- <file>${logDirectory}/${debugLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFDebug" />\r
- <includeCallerData>true</includeCallerData>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF loggers -->\r
- <!-- ============================================================================ -->\r
- <logger additivity="false" level="info" name="com.att.eelf.audit">\r
- <appender-ref ref="asyncEELFAudit" />\r
- </logger>\r
- <logger additivity="false" level="info" name="com.att.eelf.metrics">\r
- <appender-ref ref="asyncEELFMetrics" />\r
- </logger>\r
- <logger additivity="false" level="info" name="com.att.eelf.error">\r
- <appender-ref ref="asyncEELFError" />\r
- </logger>\r
- <logger additivity="false" level="debug" name="com.att.eelf.debug">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </logger>\r
- <root level="INFO">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </root>\r
-</configuration>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+-->
+
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="policy" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="xacml-pap-rest" />
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- log file names -->
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <property name="queueSize" value="256" />
+ <property name="maxFileSize" value="50MB" />
+ <property name="maxHistory" value="30" />
+ <property name="totalSizeCap" value="10GB" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+ <!-- 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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
+ <file>${logDirectory}/${auditLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFAudit" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
+ <file>${logDirectory}/${metricsLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+ %msg%n"</pattern> -->
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
+ <file>${logDirectory}/${debugLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger additivity="false" level="info" name="com.att.eelf.audit">
+ <appender-ref ref="asyncEELFAudit" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.metrics">
+ <appender-ref ref="asyncEELFMetrics" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.error">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+ <logger additivity="false" level="debug" name="com.att.eelf.debug">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+ <root level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
- ============LICENSE_START=======================================================\r
- ECOMP-PDP-REST\r
- ================================================================================\r
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
- ================================================================================\r
- Licensed under the Apache License, Version 2.0 (the "License");\r
- you may not use this file except in compliance with the License.\r
- You may obtain a copy of the License at\r
- \r
- http://www.apache.org/licenses/LICENSE-2.0\r
- \r
- Unless required by applicable law or agreed to in writing, software\r
- distributed under the License is distributed on an "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- See the License for the specific language governing permissions and\r
- limitations under the License.\r
- ============LICENSE_END=========================================================\r
- -->\r
-<configuration scan="true" scanPeriod="3 seconds" debug="true">\r
- <!--<jmxConfigurator /> -->\r
- <!-- specify the base path of the log directory --> \r
- <property name="logDir" value="/var/log/onap" />\r
- <!-- specify the component name -->\r
- <property name="componentName" value="policy" />\r
- <!-- specify the sub component name -->\r
- <property name="subComponentName" value="xacml-pdp-rest" />\r
- <!-- The directories where logs are written --> \r
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
- <!-- log file names -->\r
- <property name="errorLogName" value="error" />\r
- <property name="metricsLogName" value="metrics" />\r
- <property name="auditLogName" value="audit" />\r
- <property name="debugLogName" value="debug" />\r
- <property name="queueSize" value="256" />\r
- <property name="maxFileSize" value="50MB" />\r
- <property name="maxHistory" value="30" />\r
- <property name="totalSizeCap" value="10GB" />\r
- <!-- Example evaluator filter applied against console appender -->\r
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF Appenders -->\r
- <!-- ============================================================================ -->\r
- <!-- The EELFAppender is used to record events to the general application \r
- log -->\r
- <!-- EELF Audit Appender. This appender is used to record audit engine \r
- related logging events. The audit logger and appender are specializations \r
- of the EELF application root logger and appender. This can be used to segregate \r
- Policy engine events from other components, or it can be eliminated to record \r
- these events as part of the application root log. -->\r
- <appender name="EELFAudit" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDirectory}/${auditLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFAudit" />\r
- </appender>\r
- <appender name="EELFMetrics" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDirectory}/${metricsLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - \r
- %msg%n"</pattern> -->\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFMetrics" />\r
- </appender>\r
- <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDirectory}/${errorLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
- <level>INFO</level>\r
- </filter>\r
- </appender>\r
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFError" />\r
- </appender>\r
- <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
- <file>${logDirectory}/${debugLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="EELFDebug" />\r
- <includeCallerData>true</includeCallerData>\r
- </appender>\r
- <!-- ============================================================================ -->\r
- <!-- EELF loggers -->\r
- <!-- ============================================================================ -->\r
- <logger name="com.att.eelf.audit" level="info" additivity="false">\r
- <appender-ref ref="asyncEELFAudit" />\r
- </logger>\r
- <logger name="com.att.eelf.metrics" level="info" additivity="false">\r
- <appender-ref ref="asyncEELFMetrics" />\r
- </logger>\r
- <logger name="com.att.eelf.error" level="info" additivity="false">\r
- <appender-ref ref="asyncEELFError" />\r
- </logger>\r
- <logger name="com.att.eelf.debug" level="debug" additivity="false">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </logger>\r
- <root level="INFO">\r
- <appender-ref ref="asyncEELFDebug" />\r
- </root>\r
-</configuration>
\ No newline at end of file
+++ /dev/null
-###
-# ============LICENSE_START=======================================================
-# ONAP POLICY
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=========================================================
-###
-
-
-# SYSTEM software configuration
-
-POLICY_HOME=/opt/app/policy
-JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
-KEYSTORE_PASSWD=PolicyR0ck$
-
-# Telemetry credentials
-
-ENGINE_MANAGEMENT_PORT=9696
-ENGINE_MANAGEMENT_HOST=0.0.0.0
-ENGINE_MANAGEMENT_USER=@1b3rt
-ENGINE_MANAGEMENT_PASSWORD=31nst31n
-
-# nexus repository
-
-snapshotRepositoryID=policy-nexus-snapshots
-snapshotRepositoryUrl=http://nexus:8081/nexus/content/repositories/snapshots/
-releaseRepositoryID=policy-nexus-releases
-releaseRepositoryUrl=http://nexus:8081/nexus/content/repositories/releases/
-repositoryUsername=admin
-repositoryPassword=admin123
-
-# Relational (SQL) DB access
-
-SQL_HOST=mariadb.{{.Values.nsPrefix}}
-SQL_USER=policy_user
-SQL_PASSWORD=policy_user
-
-# PDP-D DMaaP configuration channel
-
-PDPD_CONFIGURATION_TOPIC=PDPD-CONFIGURATION
-PDPD_CONFIGURATION_SERVERS=dmaap.{{.Values.nsPrefix}}
-PDPD_CONFIGURATION_API_KEY=
-PDPD_CONFIGURATION_API_SECRET=
-PDPD_CONFIGURATION_CONSUMER_GROUP=
-PDPD_CONFIGURATION_CONSUMER_INSTANCE=
-PDPD_CONFIGURATION_PARTITION_KEY=
-
-# PAP
-
-PAP_HOST=pap.{{.Values.nsPrefix}}
-PAP_USERNAME=testpap
-PAP_PASSWORD=alpha123
-
-# PDP-X
-
-PDP_HOST=pdp.{{.Values.nsPrefix}}
-PDP_USERNAME=testpdp
-PDP_PASSWORD=alpha123
-PDP_CLIENT_USERNAME=python
-PDP_CLIENT_PASSWORD=test
-PDP_ENVIRONMENT=TEST
-
-# DCAE DMaaP
-
-DCAE_TOPIC=unauthenticated.DCAE_CL_OUTPUT
-DCAE_SERVERS=dmaap.{{.Values.nsPrefix}}
-
-# Open DMaaP
-
-DMAAP_SERVERS=dmaap.{{.Values.nsPrefix}}
-
-# AAI
-
-AAI_URL=https://aai.api.simpledemo.openecomp.org:8443
-AAI_USERNAME=POLICY
-AAI_PASSWORD=POLICY
-
-# MSO
-
-SO_URL=http://mso.{{.Values.nsPrefix}}:8080/ecomp/mso/infra
-SO_USERNAME=InfraPortalClient
-SO_PASSWORD=password1$
-
-# VFC
-
-VFC_URL=
-VFC_USERNAME=
-VFC_PASSWORD=
+++ /dev/null
-#! /bin/bash
-
-###
-# ============LICENSE_START=======================================================
-# ONAP
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=========================================================
-###
-
-${POLICY_HOME}/bin/features enable healthcheck
+++ /dev/null
-HEALTHCHECK_USER=healthcheck
-HEALTHCHECK_PASSWORD=zb!XztG34
+++ /dev/null
-CONTROLLER_ARTIFACT_ID=policy-management
-CONTROLLER_NAME=policy-management-controller
-CONTROLLER_PORT=9696
-RULES_ARTIFACT=not-used:not-used:1.0.0-SNAPSHOT
-UEB_TOPIC=policyengine-develop
+++ /dev/null
-JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
-POLICY_HOME=/opt/app/policy
-KEYSTORE_PASSWD=PolicyR0ck$
-
-JDBC_DRIVER=org.mariadb.jdbc.Driver
-JDBC_URL=jdbc:mariadb://mariadb.{{.Values.nsPrefix}}:3306/onap_sdk?failOverReadOnly=false&autoReconnect=true
-JDBC_LOG_URL=jdbc:mariadb://mariadb.{{.Values.nsPrefix}}:3306/log?failOverReadOnly=false&autoReconnect=true
-JDBC_USER=policy_user
-JDBC_PASSWORD=policy_user
-
-site_name=site_1
-fp_monitor_interval=30
-failed_counter_threshold=3
-test_trans_interval=20
-write_fpc_interval=5
-max_fpc_update_interval=60
-test_via_jmx=false
-jmx_fqdn=
-
-ENVIRONMENT=TEST
-
-#Micro Service Model Properties
-policy_msOnapName=
-policy_msPolicyName=
+++ /dev/null
-#! /bin/bash
-
-PROPS_BUILD="${POLICY_HOME}/etc/build.info"
-
-PROPS_RUNTIME="${POLICY_HOME}/servers/brmsgw/config.properties"
-PROPS_INSTALL="${POLICY_HOME}/install/servers/brmsgw/config.properties"
-
-
-if [ ! -f "${PROPS_BUILD}" ]; then
- echo "error: version information does not exist: ${PROPS_BUILD}"
- exit 1
-fi
-
-source "${POLICY_HOME}/etc/build.info"
-
-if [ -z "${version}" ]; then
- echo "error: no version information present"
- exit 1
-fi
-
-for CONFIG in ${PROPS_RUNTIME} ${PROPS_INSTALL}; do
- if [ ! -f "${CONFIG}" ]; then
- echo "warning: configuration does not exist: ${CONFIG}"
- else
- sed -i -e "s/brms.dependency.version=.*/brms.dependency.version=${version}/g" "${CONFIG}"
- fi
-done
-
-DEPS_JSON_RUNTIME="${POLICY_HOME}/servers/brmsgw/dependency.json"
-DEPS_JSON_INSTALL="${POLICY_HOME}/install/servers/brmsgw/dependency.json"
-
-for DEP in ${DEPS_JSON_RUNTIME} ${DEPS_JSON_INSTALL}; do
- if [ ! -f "${DEP}" ]; then
- echo "warning: configuration does not exist: ${DEP}"
- else
- sed -i -e "s/\"version\":.*-SNAPSHOT\"/\"version\": \"${version}\"/g" "${DEP}"
- fi
-done
+++ /dev/null
-# BRMSpep component installation configuration parameters
-BRMSGW_JMX_PORT=9989
-
-COMPONENT_X_MX_MB=1024
-COMPONENT_X_MS_MB=1024
-
-REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-REST_PDP_ID=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
-
-PDP_HTTP_USER_ID=testpdp
-PDP_HTTP_PASSWORD=alpha123
-PDP_PAP_PDP_HTTP_USER_ID=testpap
-PDP_PAP_PDP_HTTP_PASSWORD=alpha123
-
-M2_HOME=/usr/share/maven
-snapshotRepositoryID=policy-nexus-snapshots
-snapshotRepositoryName=Snapshots
-snapshotRepositoryURL=http://nexus.{{.Values.nsPrefix}}:8081/nexus/content/repositories/snapshots
-releaseRepositoryID=policy-nexus-releases
-releaseRepositoryName=Releases
-releaseRepositoryURL=http://nexus.{{.Values.nsPrefix}}:8081/nexus/content/repositories/releases
-repositoryUsername=admin
-repositoryPassword=admin123
-UEB_URL=dmaap.{{.Values.nsPrefix}}
-UEB_TOPIC=PDPD-CONFIGURATION
-UEB_API_KEY=
-UEB_API_SECRET=
-
-groupID=org.onap.policy-engine
-artifactID=drlPDPGroup
-AMSTERDAM_GROUP_ID=org.onap.policy-engine.drools.amsterdam
-AMSTERDAM_ARTIFACT_ID=policy-amsterdam-rules
-
-# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
-resource_name=brmsgw_1
-node_type=brms_gateway
-
-#Environment should be Set either DEV, TEST or PROD
-ENVIRONMENT=TEST
-
-#Notification Properties... type can be either websocket, ueb, or dmaap
-BRMS_NOTIFICATION_TYPE=websocket
-BRMS_UEB_URL=dmaap.{{.Values.nsPrefix}}
-BRMS_UEB_TOPIC=PDPD-CONFIGURATION
-BRMS_UEB_DELAY=
-BRMS_CLIENT_ID=python
-BRMS_CLIENT_KEY=dGVzdA==
-BRMS_UEB_API_KEY=
-BRMS_UEB_API_SECRET=
-
-#Dependency.json file version
-BRMS_DEPENDENCY_VERSION=1.2.0
-
+++ /dev/null
-# configs component installation configuration parameters
-
-# tomcat specific parameters
-
-TOMCAT_JMX_PORT=9993
-TOMCAT_SHUTDOWN_PORT=8090
-SSL_HTTP_CONNECTOR_PORT=8443
-SSL_HTTP_CONNECTOR_REDIRECT_PORT=8443
-SSL_AJP_CONNECTOR_PORT=8383
-SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
-
-TOMCAT_X_MS_MB=2048
-TOMCAT_X_MX_MB=2048
-
-# ------------------ console properties ---------------------------
-
-#
-# Authorization Policy
-
-ROOT_POLICIES=admin
-ADMIN_FILE=Policy-Admin.xml
-
-
-# Set your domain here:
-
-REST_ADMIN_DOMAIN=com
-
-#
-# Location where the GIT repository is located
-#
-REST_ADMIN_REPOSITORY=repository
-
-#
-# Location where all the user workspaces are located.
-#
-REST_ADMIN_WORKSPACE=/opt/app/policy/servers/console/bin/workspace
-
-#
-# These can be set so the Admin Console knows who is logged on. Ideally, you can run the console in a J2EE
-# container and setup authentication as you please. Setting HttpSession attribute values will override these
-# values set in the properties files.
-#
-# ((HttpServletRequest) request).getSession().setAttribute("xacml.rest.admin.user.name", "Homer");
-#
-# The default policy: Policy-Admin.xml is extremely simple.
-#
-# You can test authorization within the Admin Console by changing the user id.
-# There are 3 supported user ids:
-# guest - Read only access
-# editor - Read/Write access
-# admin - Read/Write/Admin access
-#
-# An empty or null value for xacml.rest.admin.user.id results in no access to the application at all.
-#
-# This is for development/demonstration purposes only. A production environment should provide authentication which is
-# outside the scope of this application. This application can be used to develop a XACML policy for user authorization
-# within this application.
-#
-
-REST_ADMIN_USER_NAME=Administrator
-REST_ADMIN_USER_ID=super-admin
-
-#
-#
-# Property to declare the max time frame for logs.
-#
-LOG_TIMEFRAME=30
-
-# Property to declare the number of visible rows for users in MicroService Policy
-COLUMN_COUNT=3
-
-# Dashboard refresh rate in miliseconds
-REFRESH_RATE=40000
-
-#
-# URL location for the PAP servlet.
-#
-
-
-REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-
-#
-# Config/Action Properties location.
-#
-
-REST_CONFIG_HOME=/opt/app/policy/servers/pap/webapps/Config/
-REST_ACTION_HOME=/opt/app/policy/servers/pap/webapps/Action/
-REST_CONFIG_URL=http://pap.{{.Values.nsPrefix}}:9091/
-REST_CONFIG_WEBAPPS=/opt/app/policy/servers/pap/webapps/
-
-# PAP account information
-CONSOLE_PAP_HTTP_USER_ID=testpap
-CONSOLE_PAP_HTTP_PASSWORD=alpha123
-
-
-node_type=pap_admin
-resource_name=console_1
-
-# The (optional) period of time in seconds between executions of the integrity audit.
-# Value < 0 : Audit does not run (default value if property is not present = -1)
-# Value = 0 : Audit runs continuously
-# Value > 0 : The period of time in seconds between execution of the audit on a particular node
-integrity_audit_period_seconds=-1
-
-#Automatic Policy Distribution
-automatic_push=false
-
-#Diff of policies for Firewall feature
-FW_GETURL=
-FW_AUTHOURL=
-FW_PROXY=
-FW_PORT=
-
-#SMTP Server Details for Java Mail
-onap_smtp_host=
-onap_smtp_port=25
-onap_smtp_userName=
-onap_smtp_password=
-onap_smtp_emailExtension=
-onap_application_name=
-
-#-----------------------ONAP-PORTAL-Properties----------------------
-
-ONAP_REDIRECT_URL=http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm
-ONAP_REST_URL=http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi
-ONAP_UEB_URL_LIST=
-ONAP_PORTAL_INBOX_NAME=
-ONAP_UEB_APP_KEY=
-ONAP_UEB_APP_SECRET=
-ONAP_UEB_APP_MAILBOX_NAME=
-APP_DISPLAY_NAME=ONAP Policy
-ONAP_SHARED_CONTEXT_REST_URL=http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/context
+++ /dev/null
-# elasticsearch
-
-ELK_JMX_PORT=9995
\ No newline at end of file
+++ /dev/null
-# mysql scripts component installation configuration parameters
-
-# Path to mysql bin
-MYSQL_BIN=/usr/local/mysql/bin
-
+++ /dev/null
-#! /bin/bash
+++ /dev/null
-# pap component installation configuration parameters
-
-# tomcat specific parameters
-
-TOMCAT_JMX_PORT=9990
-TOMCAT_SHUTDOWN_PORT=9405
-SSL_HTTP_CONNECTOR_PORT=9091
-SSL_AJP_CONNECTOR_PORT=8380
-SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
-
-TOMCAT_X_MS_MB=1024
-TOMCAT_X_MX_MB=1024
-
-# pap properties
-
-PAP_PDPS=/opt/app/policy/servers/pap/bin/pdps
-PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-
-PAP_INITIATE_PDP=true
-PAP_HEARTBEAT_INTERVAL=10000
-PAP_HEARTBEAT_TIMEOUT=10000
-
-REST_ADMIN_DOMAIN=com
-REST_ADMIN_REPOSITORY=repository
-REST_ADMIN_WORKSPACE=workspace
-
-# PDP related properties
-
-PAP_PDP_URL=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
-PAP_PDP_HTTP_USER_ID=testpdp
-PAP_PDP_HTTP_PASSWORD=alpha123
-
-PAP_HTTP_USER_ID=testpap
-PAP_HTTP_PASSWORD=alpha123
-
-#new values added 10-21-2015
-PROP_PAP_TRANS_WAIT=500000
-PROP_PAP_TRANS_TIMEOUT=5000
-PROP_PAP_AUDIT_TIMEOUT=300000
-PROP_PAP_RUN_AUDIT_FLAG=true
-PROP_PAP_AUDIT_FLAG=true
-
-PROP_PAP_INCOMINGNOTIFICATION_TRIES=4
-
-
-node_type=pap
-resource_name=pap_1
-dependency_groups=paplp_1
-test_via_jmx=true
-
-# The (optional) period of time in seconds between executions of the integrity audit.
-# Value < 0 : Audit does not run (default value if property is not present = -1)
-# Value = 0 : Audit runs continuously
-# Value > 0 : The period of time in seconds between execution of the audit on a particular node
-integrity_audit_period_seconds=-1
+++ /dev/null
-# JVM specific parameters
-LOGPARSER_JMX_PORT=9996
-LOGPARSER_X_MS_MB=1024
-LOGPARSER_X_MX_MB=1024
-
-SERVER=http://pap.{{.Values.nsPrefix}}:9091/pap/
-LOGPATH=/opt/app/policy/servers/pap/logs/pap-rest.log
-PARSERLOGPATH=IntegrityMonitor.log
-
-node_type=logparser
-# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
-resource_name=paplp_1
+++ /dev/null
-#! /bin/bash
-
+++ /dev/null
-# pdp component installation configuration parameters
-
-# tomcat specific parameters
-
-TOMCAT_JMX_PORT=9991
-TOMCAT_SHUTDOWN_PORT=8087
-SSL_HTTP_CONNECTOR_PORT=8081
-SSL_AJP_CONNECTOR_PORT=8381
-SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
-
-TOMCAT_X_MS_MB=1024
-TOMCAT_X_MX_MB=1024
-
-# pdp properties
-
-UEB_CLUSTER=dmaap.{{.Values.nsPrefix}}
-
-REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-REST_PDP_ID=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
-REST_PDP_CONFIG=/opt/app/policy/servers/pdp/bin/config
-REST_PDP_WEBAPPS=/opt/app/policy/servers/pdp/webapps
-REST_PDP_REGISTER=true
-REST_PDP_REGISTER_SLEEP=15
-REST_PDP_REGISTER_RETRIES=-1
-REST_PDP_MAXCONTENT=999999999
-
-# PDP related properties
-PDP_HTTP_USER_ID=testpdp
-PDP_HTTP_PASSWORD=alpha123
-PDP_PAP_PDP_HTTP_USER_ID=testpap
-PDP_PAP_PDP_HTTP_PASSWORD=alpha123
-
-node_type=pdp_xacml
-resource_name=pdp_1
-dependency_groups=pdplp_1;brmsgw_1
-test_via_jmx=true
-
-#
-# Notification Properties
-# Notification type: websocket, ueb or dmaap... if left blank websocket is the default
-PDP_NOTIFICATION_TYPE=websocket
-PDP_UEB_CLUSTER=
-PDP_UEB_TOPIC=
-PDP_UEB_DELAY=
-PDP_UEB_API_KEY=
-PDP_UEB_API_SECRET=
-PDP_DMAAP_AAF_LOGIN=
-PDP_DMAAP_AAF_PASSWORD=
-
-#AAF Policy Name space
-#Required only, when we use AAF
-POLICY_AAF_NAMESPACE=
-POLICY_AAF_RESOURCE=
-
-# Indeterminate resolution
-DECISION_INDETERMINATE_RESPONSE=PERMIT
+++ /dev/null
-# JVM specific parameters
-LOGPARSER_JMX_PORT=9997
-LOGPARSER_X_MS_MB=1024
-LOGPARSER_X_MX_MB=1024
-
-SERVER=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
-LOGPATH=/opt/app/policy/servers/pdp/logs/pdp-rest.log
-PARSERLOGPATH=IntegrityMonitor.log
-
-node_type=logparser
-# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
-resource_name=pdplp_1
+++ /dev/null
-#! /bin/bash
-
-# forked from https://gerrit.onap.org/r/gitweb?p=policy/docker.git;a=blob;f=config/pe/push-policies.sh;h=555ab357e6b4f54237bf07ef5e6777d782564bc0;hb=refs/heads/amsterdam and adapted for OOM
-
-#########################################Upload BRMS Param Template##########################################
-
-echo "Upload BRMS Param Template"
-
-sleep 2
-
-wget -O cl-amsterdam-template.drl https://git.onap.org/policy/drools-applications/plain/controlloop/templates/archetype-cl-amsterdam/src/main/resources/archetype-resources/src/main/resources/__closedLoopControlName__.drl
-
-sleep 2
-
-curl -v --silent -X POST --header 'Content-Type: multipart/form-data' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -F "file=@cl-amsterdam-template.drl" -F "importParametersJson={\"serviceName\":\"ClosedLoopControlName\",\"serviceType\":\"BRMSPARAM\"}" 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/policyEngineImport'
-
-echo "PRELOAD_POLICIES is $PRELOAD_POLICIES"
-
-if [ "$PRELOAD_POLICIES" == "false" ]; then
- exit 0
-fi
-
-#########################################Create BRMS Param policies##########################################
-
-echo "Create BRMSParam Operational Policies"
-
-sleep 2
-
-echo "Create BRMSParamvFirewall Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "policyConfigType": "BRMS_PARAM",
- "policyName": "com.BRMSParamvFirewall",
- "policyDescription": "BRMS Param vFirewall policy",
- "policyScope": "com",
- "attributes": {
- "MATCHING": {
- "controller" : "amsterdam"
- },
- "RULE": {
- "templateName": "ClosedLoopControlName",
- "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a",
- "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+Eace933104d443b496b8.nodes.heat.vpg%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
- }
- }
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-sleep 2
-
-echo "Create BRMSParamvDNS Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "policyConfigType": "BRMS_PARAM",
- "policyName": "com.BRMSParamvDNS",
- "policyDescription": "BRMS Param vDNS policy",
- "policyScope": "com",
- "attributes": {
- "MATCHING": {
- "controller" : "amsterdam"
- },
- "RULE": {
- "templateName": "ClosedLoopControlName",
- "closedLoopControlName": "ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3",
- "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3%0D%0A++trigger_policy%3A+unique-policy-id-1-scale-up%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-scale-up%0D%0A++++name%3A+Create+a+new+VF+Module%0D%0A++++description%3A%0D%0A++++actor%3A+SO%0D%0A++++recipe%3A+VF+Module+Create%0D%0A++++target%3A%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
- }
- }
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-sleep 2
-
-echo "Create BRMSParamVOLTE Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "policyConfigType": "BRMS_PARAM",
- "policyName": "com.BRMSParamVOLTE",
- "policyDescription": "BRMS Param VOLTE policy",
- "policyScope": "com",
- "attributes": {
- "MATCHING": {
- "controller" : "amsterdam"
- },
- "RULE": {
- "templateName": "ClosedLoopControlName",
- "closedLoopControlName": "ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b",
- "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+VFC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
- }
- }
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-sleep 2
-
-echo "Create BRMSParamvCPE Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "policyConfigType": "BRMS_PARAM",
- "policyName": "com.BRMSParamvCPE",
- "policyDescription": "BRMS Param vCPE policy",
- "policyScope": "com",
- "attributes": {
- "MATCHING": {
- "controller" : "amsterdam"
- },
- "RULE": {
- "templateName": "ClosedLoopControlName",
- "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
- "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+true%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
- }
- }
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-#########################################Create Micro Service Config policies##########################################
-
-echo "Create MicroService Config Policies"
-
-sleep 2
-
-echo "Create MicroServicevFirewall Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevFirewall\", \"description\": \"MicroService vFirewall Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"vFirewallBroadcastPackets\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 300, \"direction\": \"LESS_OR_EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ONSET\" }, { \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 700, \"direction\": \"GREATER_OR_EQUAL\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" } ] }] } } }",
- "policyConfigType": "MicroService",
- "policyName": "com.MicroServicevFirewall",
- "onapName": "DCAE"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-
-sleep 2
-
-echo "Create MicroServicevDNS Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevDNS\", \"description\": \"MicroService vDNS Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"vLoadBalancer\", \"controlLoopSchemaType\": \"VM\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 300, \"direction\": \"GREATER_OR_EQUAL\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
- "policyConfigType": "MicroService",
- "policyName": "com.MicroServicevDNS",
- "onapName": "DCAE"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-
-sleep 2
-
-echo "Create MicroServicevCPE Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevCPE\", \"description\": \"MicroService vCPE Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"Measurement_vGMUX\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ABATED\" }, { \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"GREATER\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
- "policyConfigType": "MicroService",
- "policyName": "com.MicroServicevCPE",
- "onapName": "DCAE"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-
-#########################################Creating Decision Guard policy#########################################
-
-sleep 2
-
-echo "Creating Decision Guard policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "policyClass": "Decision",
- "policyName": "com.AllPermitGuard",
- "policyDescription": "Testing all Permit YAML Guard Policy",
- "ecompName": "PDPD",
- "ruleProvider": "GUARD_YAML",
- "attributes": {
- "MATCHING": {
- "actor": ".*",
- "recipe": ".*",
- "targets": ".*",
- "clname": ".*",
- "limit": "10",
- "timeWindow": "1",
- "timeUnits": "minute",
- "guardActiveStart": "00:00:01-05:00",
- "guardActiveEnd": "00:00:00-05:00"
- }
- }
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
-
-#########################################Push Decision policy#########################################
-
-sleep 2
-
-echo "Push Decision policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.AllPermitGuard",
- "policyType": "DECISION"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-#########################################Pushing BRMS Param policies##########################################
-
-echo "Pushing BRMSParam Operational policies"
-
-sleep 2
-
-echo "pushPolicy : PUT : com.BRMSParamvFirewall"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.BRMSParamvFirewall",
- "policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-sleep 2
-
-echo "pushPolicy : PUT : com.BRMSParamvDNS"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.BRMSParamvDNS",
- "policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-sleep 2
-
-echo "pushPolicy : PUT : com.BRMSParamVOLTE"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.BRMSParamVOLTE",
- "policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-sleep 2
-
-echo "pushPolicy : PUT : com.BRMSParamvCPE"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.BRMSParamvCPE",
- "policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-#########################################Pushing MicroService Config policies##########################################
-
-echo "Pushing MicroService Config policies"
-
-sleep 2
-
-echo "pushPolicy : PUT : com.MicroServicevFirewall"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.MicroServicevFirewall",
- "policyType": "MicroService"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-sleep 10
-
-echo "pushPolicy : PUT : com.MicroServicevDNS"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.MicroServicevDNS",
- "policyType": "MicroService"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
-
-sleep 10
-
-echo "pushPolicy : PUT : com.MicroServicevCPE"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.MicroServicevCPE",
- "policyType": "MicroService"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# configs component installation configuration parameters
+
+# tomcat specific parameters
+
+TOMCAT_JMX_PORT=9993
+TOMCAT_SHUTDOWN_PORT=8090
+SSL_HTTP_CONNECTOR_PORT=8443
+SSL_HTTP_CONNECTOR_REDIRECT_PORT=8443
+SSL_AJP_CONNECTOR_PORT=8383
+SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
+
+TOMCAT_X_MS_MB=2048
+TOMCAT_X_MX_MB=2048
+
+# ------------------ console properties ---------------------------
+
+#
+# Authorization Policy
+
+ROOT_POLICIES=admin
+ADMIN_FILE=Policy-Admin.xml
+
+
+# Set your domain here:
+
+REST_ADMIN_DOMAIN=com
+
+#
+# Location where the GIT repository is located
+#
+REST_ADMIN_REPOSITORY=repository
+
+#
+# Location where all the user workspaces are located.
+#
+REST_ADMIN_WORKSPACE=/opt/app/policy/servers/console/bin/workspace
+
+#
+# These can be set so the Admin Console knows who is logged on. Ideally, you can run the console in a J2EE
+# container and setup authentication as you please. Setting HttpSession attribute values will override these
+# values set in the properties files.
+#
+# ((HttpServletRequest) request).getSession().setAttribute("xacml.rest.admin.user.name", "Homer");
+#
+# The default policy: Policy-Admin.xml is extremely simple.
+#
+# You can test authorization within the Admin Console by changing the user id.
+# There are 3 supported user ids:
+# guest - Read only access
+# editor - Read/Write access
+# admin - Read/Write/Admin access
+#
+# An empty or null value for xacml.rest.admin.user.id results in no access to the application at all.
+#
+# This is for development/demonstration purposes only. A production environment should provide authentication which is
+# outside the scope of this application. This application can be used to develop a XACML policy for user authorization
+# within this application.
+#
+
+REST_ADMIN_USER_NAME=Administrator
+REST_ADMIN_USER_ID=super-admin
+
+#
+#
+# Property to declare the max time frame for logs.
+#
+LOG_TIMEFRAME=30
+
+# Property to declare the number of visible rows for users in MicroService Policy
+COLUMN_COUNT=3
+
+# Dashboard refresh rate in miliseconds
+REFRESH_RATE=40000
+
+#
+# URL location for the PAP servlet.
+#
+
+
+REST_PAP_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/pap/
+
+#
+# Config/Action Properties location.
+#
+
+REST_CONFIG_HOME=/opt/app/policy/servers/pap/webapps/Config/
+REST_ACTION_HOME=/opt/app/policy/servers/pap/webapps/Action/
+REST_CONFIG_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/
+REST_CONFIG_WEBAPPS=/opt/app/policy/servers/pap/webapps/
+
+# PAP account information
+CONSOLE_PAP_HTTP_USER_ID=testpap
+CONSOLE_PAP_HTTP_PASSWORD=alpha123
+
+
+node_type=pap_admin
+resource_name=console_1
+
+# The (optional) period of time in seconds between executions of the integrity audit.
+# Value < 0 : Audit does not run (default value if property is not present = -1)
+# Value = 0 : Audit runs continuously
+# Value > 0 : The period of time in seconds between execution of the audit on a particular node
+integrity_audit_period_seconds=-1
+
+#Automatic Policy Distribution
+automatic_push=false
+
+#Diff of policies for Firewall feature
+FW_GETURL=
+FW_AUTHOURL=
+FW_PROXY=
+FW_PORT=
+
+#SMTP Server Details for Java Mail
+onap_smtp_host=
+onap_smtp_port=25
+onap_smtp_userName=
+onap_smtp_password=
+onap_smtp_emailExtension=
+onap_application_name=
+
+#-----------------------ONAP-PORTAL-Properties----------------------
+
+ONAP_REDIRECT_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/login.htm
+ONAP_REST_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/auxapi
+ONAP_UEB_URL_LIST=
+ONAP_PORTAL_INBOX_NAME=
+ONAP_UEB_APP_KEY=
+ONAP_UEB_APP_SECRET=
+ONAP_UEB_APP_MAILBOX_NAME=
+APP_DISPLAY_NAME=ONAP Policy
+ONAP_SHARED_CONTEXT_REST_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/context
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# elasticsearch
+
+ELK_JMX_PORT=9995
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# mysql scripts component installation configuration parameters
+
+# Path to mysql bin
+MYSQL_BIN=/usr/local/mysql/bin
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#! /bin/bash
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# pap component installation configuration parameters
+
+# tomcat specific parameters
+
+TOMCAT_JMX_PORT=9990
+TOMCAT_SHUTDOWN_PORT=9405
+SSL_HTTP_CONNECTOR_PORT=9091
+SSL_AJP_CONNECTOR_PORT=8380
+SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
+
+TOMCAT_X_MS_MB=1024
+TOMCAT_X_MX_MB=1024
+
+# pap properties
+
+PAP_PDPS=/opt/app/policy/servers/pap/bin/pdps
+PAP_URL=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
+
+PAP_INITIATE_PDP=true
+PAP_HEARTBEAT_INTERVAL=10000
+PAP_HEARTBEAT_TIMEOUT=10000
+
+REST_ADMIN_DOMAIN=com
+REST_ADMIN_REPOSITORY=repository
+REST_ADMIN_WORKSPACE=workspace
+
+# PDP related properties
+PAP_PDP_URL=http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-0.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-1.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-3.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-4.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/
+PAP_PDP_HTTP_USER_ID=testpdp
+PAP_PDP_HTTP_PASSWORD=alpha123
+
+PAP_HTTP_USER_ID=testpap
+PAP_HTTP_PASSWORD=alpha123
+
+#new values added 10-21-2015
+PROP_PAP_TRANS_WAIT=500000
+PROP_PAP_TRANS_TIMEOUT=5000
+PROP_PAP_AUDIT_TIMEOUT=300000
+PROP_PAP_RUN_AUDIT_FLAG=true
+PROP_PAP_AUDIT_FLAG=true
+
+PROP_PAP_INCOMINGNOTIFICATION_TRIES=4
+
+
+node_type=pap
+resource_name=pap_1
+dependency_groups=paplp_1
+test_via_jmx=true
+
+# The (optional) period of time in seconds between executions of the integrity audit.
+# Value < 0 : Audit does not run (default value if property is not present = -1)
+# Value = 0 : Audit runs continuously
+# Value > 0 : The period of time in seconds between execution of the audit on a particular node
+integrity_audit_period_seconds=-1
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+# JVM specific parameters
+LOGPARSER_JMX_PORT=9996
+LOGPARSER_X_MS_MB=1024
+LOGPARSER_X_MX_MB=1024
+
+SERVER=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
+LOGPATH=/opt/app/policy/servers/pap/logs/pap-rest.log
+PARSERLOGPATH=IntegrityMonitor.log
+
+node_type=logparser
+# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
+resource_name=paplp_1
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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.
+
+#! /bin/bash
+
+# forked from https://gerrit.onap.org/r/gitweb?p=policy/docker.git;a=blob;f=config/pe/push-policies.sh;h=555ab357e6b4f54237bf07ef5e6777d782564bc0;hb=refs/heads/amsterdam and adapted for OOM
+
+#########################################Upload BRMS Param Template##########################################
+
+echo "Upload BRMS Param Template"
+
+sleep 2
+
+wget -O cl-amsterdam-template.drl https://git.onap.org/policy/drools-applications/plain/controlloop/templates/archetype-cl-amsterdam/src/main/resources/archetype-resources/src/main/resources/__closedLoopControlName__.drl
+
+sleep 2
+
+curl -v --silent -X POST --header 'Content-Type: multipart/form-data' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -F "file=@cl-amsterdam-template.drl" -F "importParametersJson={\"serviceName\":\"ClosedLoopControlName\",\"serviceType\":\"BRMSPARAM\"}" 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/policyEngineImport'
+
+echo "PRELOAD_POLICIES is $PRELOAD_POLICIES"
+
+if [ "$PRELOAD_POLICIES" == "false" ]; then
+ exit 0
+fi
+
+#########################################Create BRMS Param policies##########################################
+
+echo "Create BRMSParam Operational Policies"
+
+sleep 2
+
+echo "Create BRMSParamvFirewall Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "policyConfigType": "BRMS_PARAM",
+ "policyName": "com.BRMSParamvFirewall",
+ "policyDescription": "BRMS Param vFirewall policy",
+ "policyScope": "com",
+ "attributes": {
+ "MATCHING": {
+ "controller" : "amsterdam"
+ },
+ "RULE": {
+ "templateName": "ClosedLoopControlName",
+ "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a",
+ "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+Eace933104d443b496b8.nodes.heat.vpg%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+ }
+ }
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+sleep 2
+
+echo "Create BRMSParamvDNS Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "policyConfigType": "BRMS_PARAM",
+ "policyName": "com.BRMSParamvDNS",
+ "policyDescription": "BRMS Param vDNS policy",
+ "policyScope": "com",
+ "attributes": {
+ "MATCHING": {
+ "controller" : "amsterdam"
+ },
+ "RULE": {
+ "templateName": "ClosedLoopControlName",
+ "closedLoopControlName": "ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3",
+ "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3%0D%0A++trigger_policy%3A+unique-policy-id-1-scale-up%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-scale-up%0D%0A++++name%3A+Create+a+new+VF+Module%0D%0A++++description%3A%0D%0A++++actor%3A+SO%0D%0A++++recipe%3A+VF+Module+Create%0D%0A++++target%3A%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+ }
+ }
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+sleep 2
+
+echo "Create BRMSParamVOLTE Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "policyConfigType": "BRMS_PARAM",
+ "policyName": "com.BRMSParamVOLTE",
+ "policyDescription": "BRMS Param VOLTE policy",
+ "policyScope": "com",
+ "attributes": {
+ "MATCHING": {
+ "controller" : "amsterdam"
+ },
+ "RULE": {
+ "templateName": "ClosedLoopControlName",
+ "closedLoopControlName": "ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b",
+ "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+VFC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+ }
+ }
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+sleep 2
+
+echo "Create BRMSParamvCPE Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "policyConfigType": "BRMS_PARAM",
+ "policyName": "com.BRMSParamvCPE",
+ "policyDescription": "BRMS Param vCPE policy",
+ "policyScope": "com",
+ "attributes": {
+ "MATCHING": {
+ "controller" : "amsterdam"
+ },
+ "RULE": {
+ "templateName": "ClosedLoopControlName",
+ "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+ "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+true%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+ }
+ }
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+#########################################Create Micro Service Config policies##########################################
+
+echo "Create MicroService Config Policies"
+
+sleep 2
+
+echo "Create MicroServicevFirewall Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevFirewall\", \"description\": \"MicroService vFirewall Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"vFirewallBroadcastPackets\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 300, \"direction\": \"LESS_OR_EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ONSET\" }, { \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 700, \"direction\": \"GREATER_OR_EQUAL\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" } ] }] } } }",
+ "policyConfigType": "MicroService",
+ "policyName": "com.MicroServicevFirewall",
+ "onapName": "DCAE"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+
+sleep 2
+
+echo "Create MicroServicevDNS Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevDNS\", \"description\": \"MicroService vDNS Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"vLoadBalancer\", \"controlLoopSchemaType\": \"VM\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 300, \"direction\": \"GREATER_OR_EQUAL\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
+ "policyConfigType": "MicroService",
+ "policyName": "com.MicroServicevDNS",
+ "onapName": "DCAE"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+
+sleep 2
+
+echo "Create MicroServicevCPE Policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevCPE\", \"description\": \"MicroService vCPE Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"Measurement_vGMUX\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ABATED\" }, { \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"GREATER\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
+ "policyConfigType": "MicroService",
+ "policyName": "com.MicroServicevCPE",
+ "onapName": "DCAE"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+
+#########################################Creating Decision Guard policy#########################################
+
+sleep 2
+
+echo "Creating Decision Guard policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "policyClass": "Decision",
+ "policyName": "com.AllPermitGuard",
+ "policyDescription": "Testing all Permit YAML Guard Policy",
+ "ecompName": "PDPD",
+ "ruleProvider": "GUARD_YAML",
+ "attributes": {
+ "MATCHING": {
+ "actor": ".*",
+ "recipe": ".*",
+ "targets": ".*",
+ "clname": ".*",
+ "limit": "10",
+ "timeWindow": "1",
+ "timeUnits": "minute",
+ "guardActiveStart": "00:00:01-05:00",
+ "guardActiveEnd": "00:00:00-05:00"
+ }
+ }
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+#########################################Push Decision policy#########################################
+
+sleep 2
+
+echo "Push Decision policy"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.AllPermitGuard",
+ "policyType": "DECISION"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+#########################################Pushing BRMS Param policies##########################################
+
+echo "Pushing BRMSParam Operational policies"
+
+sleep 2
+
+echo "pushPolicy : PUT : com.BRMSParamvFirewall"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.BRMSParamvFirewall",
+ "policyType": "BRMS_Param"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+sleep 2
+
+echo "pushPolicy : PUT : com.BRMSParamvDNS"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.BRMSParamvDNS",
+ "policyType": "BRMS_Param"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+sleep 2
+
+echo "pushPolicy : PUT : com.BRMSParamVOLTE"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.BRMSParamVOLTE",
+ "policyType": "BRMS_Param"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+sleep 2
+
+echo "pushPolicy : PUT : com.BRMSParamvCPE"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.BRMSParamvCPE",
+ "policyType": "BRMS_Param"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+#########################################Pushing MicroService Config policies##########################################
+
+echo "Pushing MicroService Config policies"
+
+sleep 2
+
+echo "pushPolicy : PUT : com.MicroServicevFirewall"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.MicroServicevFirewall",
+ "policyType": "MicroService"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+sleep 10
+
+echo "pushPolicy : PUT : com.MicroServicevDNS"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.MicroServicevDNS",
+ "policyType": "MicroService"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+
+sleep 10
+
+echo "pushPolicy : PUT : com.MicroServicevCPE"
+curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+ "pdpGroup": "default",
+ "policyName": "com.MicroServicevCPE",
+ "policyType": "MicroService"
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+++ /dev/null
-#!/bin/bash
-
-if [ "$#" -ne 4 ]; then
- echo "Usage: $(basename $0) <k8s-host> <policy-pdp-node-port> <policy-drools-node-port> <resource-id>"
- exit 1
-fi
-
-K8S_HOST=$1
-POLICY_PDP_PORT=$2
-POLICY_DROOLS_PORT=$3
-RESOURCE_ID=$4
-
-echo
-echo
-echo "Removing the vFW Policy from PDP.."
-echo
-echo
-
-curl -v -X DELETE --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyComponent" : "PDP",
- "policyName": "com.BRMSParamvFirewall",
- "policyType": "BRMS_Param"
-}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/deletePolicy
-
-sleep 20
-
-echo
-
-echo
-echo "Updating vFW Operational Policy .."
-echo
-
-curl -v -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "policyConfigType": "BRMS_PARAM",
- "policyName": "com.BRMSParamvFirewall",
- "policyDescription": "BRMS Param vFirewall policy",
- "policyScope": "com",
- "attributes": {
- "MATCHING": {
- "controller": "amsterdam"
- },
- "RULE": {
- "templateName": "ClosedLoopControlName",
- "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a",
- "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+'${RESOURCE_ID}'%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
- }
- }
-}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/updatePolicy
-
-sleep 5
-
-echo
-echo
-echo "Pushing the vFW Policy .."
-echo
-echo
-
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
- "pdpGroup": "default",
- "policyName": "com.BRMSParamvFirewall",
- "policyType": "BRMS_Param"
-}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/pushPolicy
-
-sleep 20
-
-echo
-echo
-echo "Restarting PDP-D .."
-echo
-echo
-
-POD=$(kubectl --namespace onap-policy get pods | sed 's/ .*//'| grep drools)
-kubectl --namespace onap-policy exec -it ${POD} -- bash -c "source /opt/app/policy/etc/profile.d/env.sh && policy stop && sleep 5 && policy start"
-
-sleep 20
-
-echo
-echo
-echo "PDP-D amsterdam maven coordinates .."
-echo
-echo
-
-curl -vvv --silent --user @1b3rt:31nst31n -X GET http://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools | python -m json.tool
-
-
-echo
-echo
-echo "PDP-D control loop updated .."
-echo
-echo
-
-curl -v --silent --user @1b3rt:31nst31n -X GET http://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools/facts/closedloop-amsterdam/org.onap.policy.controlloop.Params | python -m json.tool
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyMariadb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: mariadb
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mariadb
-spec:
- ports:
- - name: 3306-port
- port: 3306
- selector:
- app: mariadb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disablePolicyNexus }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: nexus
- name: nexus
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: nexus-port
- port: 8081
- selector:
- app: nexus
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disablePolicyDrools }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: drools
- name: drools
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: "drools-port"
- port: 6969
- nodePort: {{ .Values.nodePortPrefix }}17
- - name: "drools-port2"
- port: 9696
- nodePort: {{ .Values.nodePortPrefix }}21
- selector:
- app: drools
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePolicyPap }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: pap
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: pap
-spec:
- ports:
- - name: 8443-port
- port: 8443
- nodePort: {{ .Values.nodePortPrefix }}19
- - name: 9091-port
- port: 9091
- nodePort: {{ .Values.nodePortPrefix }}18
- selector:
- app: pap
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePolicyPdp }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: pdp
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: pdp
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "policy-pdp",
- "version": "v1",
- "url": "/pdp",
- "protocol": "REST",
- "port": "8081",
- "visualRange":"1"
- },
- {
- "serviceName": "policy-pdp-deprecated",
- "version": "v1",
- "url": "/pdp",
- "protocol": "REST",
- "port": "8081",
- "visualRange":"1",
- "path":"/pdp"
- }
- ]'
-spec:
- ports:
- - name: 8081-port
- port: 8081
- nodePort: {{ .Values.nodePortPrefix }}20
- selector:
- app: pdp
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePolicyBrmsgw }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: brmsgw
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: brmsgw
-spec:
- ports:
- - name: 9989-port
- port: 9989
- nodePort: {{ .Values.nodePortPrefix }}16
- selector:
- app: brmsgw
- type: NodePort
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/xacml-pap-rest/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-sdk-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/ep_sdk_app/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
+
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyBrmsgw }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-brmsgw
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.brmsgwReplicas }}
- selector:
- matchLabels:
- app: brmsgw
- template:
- metadata:
- labels:
- app: brmsgw
- name: policy-brmsgw
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - pap
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: brmsgw-readiness
- containers:
- - command:
- - /bin/bash
- - ./do-start.sh
- - brmsgw
- image: "{{ .Values.image.policyPe }}:{{ .Values.image.policyPeVersion}}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: brmsgw
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config
- name: pe
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: pe
- configMap:
- name: policy-dep-pe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyDrools }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-drools
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.droolsReplicas }}
- selector:
- matchLabels:
- app: drools
- template:
- metadata:
- labels:
- app: drools
- name: policy-drools
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mariadb
- - --container-name
- - nexus
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: drools-readiness
- hostAliases:
- - ip: "{{ .Values.aaiServiceClusterIp }}"
- hostnames:
- - "aai.api.simpledemo.openecomp.org"
- containers:
- - command:
- - /bin/bash
- - -c
- - ./do-start.sh
- image: "{{ .Values.image.policyDrools }}:{{ .Values.image.policyDroolsVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: drools
- ports:
- - containerPort: 6969
- readinessProbe:
- tcpSocket:
- port: 6969
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config/policy-keystore
- name: drools-secret
- subPath: policy-keystore
- - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
- name: drools-secret
- subPath: feature-healthcheck.conf
- - mountPath: /tmp/policy-install/config/base.conf
- name: drools-config
- subPath: base.conf
- - mountPath: /tmp/policy-install/config/policy-management.conf
- name: drools-config
- subPath: policy-management.conf
- - mountPath: /tmp/policy-install/config/drools-tweaks.sh
- name: drools-config
- subPath: drools-tweaks.sh
- - mountPath: /usr/share/maven/conf/settings.xml
- name: drools-settingsxml
- subPath: settings.xml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /tmp/logback.xml
- name: policy-logback
- subPath: logback.xml
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/config/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /usr/share/filebeat/data
- name: policy-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: policy-filebeat-configmap
- - name: policy-logs
- emptyDir: {}
- - name: policy-data-filebeat
- emptyDir: {}
- - name: policy-logback
- configMap:
- name: policy-drools-log-configmap
- - name: drools-settingsxml
- configMap:
- name: policy-dep-drools-settings-configmap
- - name: drools-config
- configMap:
- name: policy-dep-drools-configmap
- items:
- - key: base.conf
- path: base.conf
- mode: 0755
- - key: policy-management.conf
- path: policy-management.conf
- mode: 0755
- - key: drools-tweaks.sh
- path: drools-tweaks.sh
- mode: 0755
- - name: drools-secret
- secret:
- secretName: policy-dep-drools-secret
- items:
- - key: policy-keystore
- path: policy-keystore
- mode: 0644
- - key: feature-healthcheck.conf
- path: feature-healthcheck.conf
- mode: 0644
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyMariadb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.mariadbReplicas }}
- selector:
- matchLabels:
- app: mariadb
- template:
- metadata:
- labels:
- app: mariadb
- name: policy-mariadb
- spec:
- hostname: mariadb
- containers:
- - image: "{{ .Values.image.policyDb }}:{{ .Values.image.policyDbVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: mariadb
- ports:
- - containerPort: 3306
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyNexus }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-nexus
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nexusReplicas }}
- selector:
- matchLabels:
- app: nexus
- template:
- metadata:
- labels:
- app: nexus
- name: policy-nexus
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: nexus-readiness
- containers:
- - image: "{{ .Values.image.policyNexus }}:{{ .Values.image.policyNexusVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: nexus
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyPap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-pap
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.papReplicas }}
- selector:
- matchLabels:
- app: pap
- template:
- metadata:
- labels:
- app: pap
- name: policy-pap
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pap-readiness
- - command: ["/bin/bash", "-c", "echo $POD_IP > /config/ip_addr.txt"]
- env:
- - name: POD_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- volumeMounts:
- - mountPath: /config/
- name: pe
- image: {{ .Values.image.ubuntu }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: generate-ip-addr-txt
- containers:
- - command:
- - /bin/bash
- - ./do-start.sh
- - pap
- image: "{{ .Values.image.policyPe }}:{{ .Values.image.policyPeVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pap
- env:
- - name: PRELOAD_POLICIES
- value: "true"
- ports:
- - containerPort: 8443
- - containerPort: 9091
- readinessProbe:
- tcpSocket:
- port: 9091
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config/
- name: pe
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /tmp/policy-install/logback.xml
- name: policy-sdk-logback
- subPath: logback.xml
- - mountPath: /tmp/logback.xml
- name: policy-logback
- subPath: logback.xml
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pap/webapps/pap/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; export SRC=/tmp/policy-install/logback.xml; export DST=/opt/app/policy/servers/console/webapps/onap/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /usr/share/filebeat/data
- name: policy-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: policy-filebeat-configmap
- - name: policy-logs
- emptyDir: {}
- - name: policy-data-filebeat
- emptyDir: {}
- - name: policy-logback
- configMap:
- name: policy-pap-log-configmap
- - name: policy-sdk-logback
- configMap:
- name: policy-sdk-log-configmap
- - name: pe
- configMap:
- name: policy-dep-pe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyPdp }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-pdp
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.pdpReplicas }}
- selector:
- matchLabels:
- app: pdp
- template:
- metadata:
- labels:
- app: pdp
- name: policy-pdp
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - pap
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pdp-readiness
- containers:
- - command:
- - /bin/bash
- - ./do-start.sh
- - pdp
- image: "{{ .Values.image.policyPe }}:{{ .Values.image.policyPeVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pdp
- ports:
- - containerPort: 8081
- readinessProbe:
- tcpSocket:
- port: 8081
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config
- name: pe
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /tmp/logback.xml
- name: policy-logback
- subPath: logback.xml
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pdp/webapps/pdp/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /usr/share/filebeat/data
- name: policy-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: policy-filebeat-configmap
- - name: policy-logs
- emptyDir: {}
- - name: policy-data-filebeat
- emptyDir: {}
- - name: policy-logback
- configMap:
- name: policy-pdp-log-configmap
- - name: pe
- configMap:
- name: policy-dep-pe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - command:
+ - /bin/bash
+ - ./do-start.sh
+ - pap
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: PRELOAD_POLICIES
+ value: "{{ .Values.config.preloadPolicies }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/push-policies.sh
+ name: pe-pap
+ subPath: push-policies.sh
+ - mountPath: /tmp/policy-install/config/pap-tweaks.sh
+ name: pe-pap
+ subPath: pap-tweaks.sh
+ - mountPath: /tmp/policy-install/config/paplp.conf
+ name: pe-pap
+ subPath: paplp.conf
+ - mountPath: /tmp/policy-install/config/pap.conf
+ name: pe-pap
+ subPath: pap.conf
+ - mountPath: /tmp/policy-install/config/mysql.conf
+ name: pe-pap
+ subPath: mysql.conf
+ - mountPath: /tmp/policy-install/config/elk.conf
+ name: pe-pap
+ subPath: elk.conf
+ - mountPath: /tmp/policy-install/config/console.conf
+ name: pe-pap
+ subPath: console.conf
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: pe
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/do-start.sh
+ name: pe-scripts
+ subPath: do-start.sh
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /tmp/policy-install/logback.xml
+ name: policy-sdk-logback
+ subPath: logback.xml
+ - mountPath: /tmp/logback.xml
+ name: policy-logback
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pap/webapps/pap/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; export SRC=/tmp/policy-install/logback.xml; export DST=/opt/app/policy/servers/console/webapps/onap/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ - image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.global.loggingImage | default .Values.loggingImage }}"
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /usr/share/filebeat/data
+ name: policy-data-filebeat
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-filebeat-configmap
+ - name: policy-logs
+ emptyDir: {}
+ - name: policy-data-filebeat
+ emptyDir: {}
+ - name: policy-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: policy-sdk-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-sdk-log-configmap
+ - name: pe
+ configMap:
+ name: {{ .Release.Name }}-pe-configmap
+ defaultMode: 0755
+ - name: pe-scripts
+ configMap:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ defaultMode: 0777
+ - name: pe-pap
+ configMap:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyDrools }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-dep-drools-settings-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/drools/settings.xml").AsConfig . | indent 2 }}
-#{{ end }}
----
-#{{ if not .Values.disablePolicyPdp }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-dep-pe-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/opt/policy/config/pe/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-dep-drools-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/opt/policy/config/drools/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyDrools }}
-apiVersion: v1
-kind: Secret
-metadata:
- name: policy-dep-drools-secret
- namespace: {{ .Values.nsPrefix }}
-type: Opaque
-data:
-{{ (.Files.Glob "resources/config/opt/policy/config/drools/keys/*").AsSecrets | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePolicyPap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-pap-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/xacml-pap-rest/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-sdk-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/ep_sdk_app/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
-#{{ if not .Values.disablePolicyPdp }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-pdp-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/xacml-pdp-rest/*").AsConfig . | indent 2 }}
-#{{ end }}
-#{{ if not .Values.disablePolicyDrools }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-drools-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/drools/*").AsConfig . | indent 2 }}
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuImage: ubuntu:16.04
+ mariadb:
+ nameOverride: policydb
+ pdp:
+ nameOverride: pdp
+ pap:
+ nameOverride: pap
+ drools:
+ nameOverride: drools
+ brmwgw:
+ nameOverride: brmsgw
+ nexus:
+ nameOverride: nexus
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-pe:1.2.0
pullPolicy: Always
-nodePortPrefix: 302
-
-# POLICY hotfix - Note this must be temporary
-# See https://jira.onap.org/browse/POLICY-510
-aaiServiceClusterIp: 10.43.255.254
-brmsgwReplicas: 1
-droolsReplicas: 1
-mariadbReplicas: 1
-nexusReplicas: 1
-papReplicas: 1
-pdpReplicas: 1
-image:
- readiness: oomk8s/readiness-check
- readinessVersion: 1.1.0
- policyPe: nexus3.onap.org:10001/onap/policy/policy-pe
- policyPeVersion: v1.1.1
- policyDrools: nexus3.onap.org:10001/onap/policy/policy-drools
- policyDroolsVersion: v1.1.1
- policyDb: nexus3.onap.org:10001/onap/policy/policy-db
- policyDbVersion: v1.1.1
- policyNexus: nexus3.onap.org:10001/onap/policy/policy-nexus
- policyNexusVersion: v1.1.1
- ubuntu: ubuntu:16.04
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
+subChartsOnly:
+ enabled: true
+
+nameOverride: pap
+
+pdp:
+ nameOverride: pdp
+mariadb:
+ nameOverride: policydb
+drools:
+ nameOverride: drools
+brmwgw:
+ nameOverride: brmsgw
+nexus:
+ nameOverride: nexus
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
config:
- logstashServiceName: log-ls
- logstashPort: 5044
+ preloadPolicies: false
+ pdpPort: 8081
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: pap
+ portName: pap
+ externalPort: 8443
+ nodePort: 19
+ externalPort2: 9091
+ nodePort2: 18
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# docker folder
docker/
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Web Portal
name: portal
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Portal application
+name: portal-app
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# domain settings
+#domain_class_location =
+
+# validator settings
+#default_error_message = Default error message
+
+login_url_no_ret_val = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/login.htm
+
+user_attribute_name = user
+
+# User Session settings
+roles_attribute_name = roles
+role_functions_attribute_name = role_functions
+
+# menu settings
+menu_query_name = menuData
+application_menu_set_name = APP
+application_menu_attribute_name = applicationMenuData
+business_direct_menu_set_name = BD
+business_direct_menu_attribute_name = businessDirectMenuData
+
+# ECOMP settings
+ecomp_app_id = 1
+# Role settings
+sys_admin_role_id = 1
+account_admin_role_id = 999
+restricted_app_role_id = 900
+
+# Home Page index html
+home_page = /index.html
+
+authentication_mechanism =DBAUTH
+
+login.error.hrid.empty = Login failed, please contact system administrator.
+login.error.hrid.not-found = User not found, please contact system administrator.
+login.error.user.inactive = Account is disabled, please contact system administrator.
+
+#
+# Number of seconds to poll health (database operational, etc.)
+#
+health_poll_interval_seconds = 5
+#
+# If a component is down a log entry will be written that triggers an alert. This parameter specifies how often this alert should be triggered
+# if the component remains down. For example a value of 30, would translate to 30 * 60 seconds = 1800 seconds, or every 30 minutes
+#
+health_fail_alert_every_x_intervals = 30
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ============LICENSE_START==========================================
+ ONAP Portal
+ ===================================================================
+ Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ ===================================================================
+
+ Unless otherwise specified, all software contained herein is licensed
+ under the Apache License, Version 2.0 (the “License”);
+ you may not use this software 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.
+
+ Unless otherwise specified, all documentation contained herein is licensed
+ under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
+ you may not use this documentation except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://creativecommons.org/licenses/by/4.0/
+
+ Unless required by applicable law or agreed to in writing, documentation
+ 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============================================
+
+ ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ -->
+
+<!DOCTYPE xml>
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!-- Log-back files for the ECOMP Portal are created in directory
+ ${catalina.base}/logs/${componentName}; e.g., apache-tomcat-8.0.35/logs/onapportal/application.log -->
+ <!--<jmxConfigurator /> -->
+
+ <!-- specify the component name -->
+ <property name="componentName" value="onapportal"></property>
+
+ <!-- specify the base path of the log directory -->
+ <property name="logDirPrefix" value="${catalina.base}/logs"></property>
+
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDirPrefix}/${componentName}" />
+ <!-- Can easily relocate debug logs by modifying this path. -->
+ <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />
+
+ <!-- log file names -->
+ <property name="generalLogName" value="application" />
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <!-- These loggers are not used in code (yet). <property name="securityLogName"
+ value="security" /> <property name="policyLogName" value="policy" /> <property
+ name="performanceLogName" value="performance" /> <property name="serverLogName"
+ value="server" /> -->
+
+ <!-- ServerFQDN=Server, -->
+ <property name="auditLoggerPattern"
+ value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
+
+ <property name="metricsLoggerPattern"
+ value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
+
+ <property name="errorLoggerPattern"
+ value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
+
+ <property name="defaultLoggerPattern"
+ value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />
+
+ <!-- use %class so library logging calls yield their class name -->
+ <property name="applicationLoggerPattern"
+ value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />
+
+ <!--
+ <property name="defaultPattern"
+ value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
+ <property name="debugLoggerPattern"
+ value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
+ -->
+ <!-- <property name="debugLoggerPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n"
+ /> -->
+ <!-- Example evaluator filter applied against console appender -->
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${applicationLoggerPattern}</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">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${generalLogName}.log.%d{yyyy-MM-dd}.zip
+ </fileNamePattern>
+ <maxHistory>30</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${applicationLoggerPattern}</pattern>
+ </encoder>
+ <filter class="org.openecomp.portalapp.portal.utils.CustomLoggingFilter" />
+ </appender>
+
+ <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <!-- Class name is part of caller data -->
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="EELF" />
+ </appender>
+
+ <!-- EELF Security Appender. This appender is used to record security events
+ to the security log file. Security events are separate from other loggers
+ in EELF so that security log records can be captured and managed in a secure
+ way separate from the other logs. This appender is set to never discard any
+ events. -->
+ <!-- <appender name="EELFSecurity" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${securityLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip </fileNamePattern>
+ <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>
+ </appender> <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize> <discardingThreshold>0</discardingThreshold> <appender-ref
+ ref="EELFSecurity" /> </appender> -->
+
+ <!-- EELF Performance Appender. This appender is used to record performance
+ records. -->
+ <!-- <appender name="EELFPerformance" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${performanceLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip </fileNamePattern>
+ <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy> <encoder> <outputPatternAsHeader>true</outputPatternAsHeader>
+ <pattern>${defaultPattern}</pattern> </encoder> </appender> <appender name="asyncEELFPerformance"
+ class="ch.qos.logback.classic.AsyncAppender"> <queueSize>256</queueSize>
+ <appender-ref ref="EELFPerformance" /> </appender> -->
+
+ <!-- EELF Server Appender. This appender is used to record Server related
+ logging events. The Server logger and appender are specializations of the
+ EELF application root logger and appender. This can be used to segregate
+ Server events from other components, or it can be eliminated to record these
+ events as part of the application root log. -->
+ <!-- <appender name="EELFServer" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${serverLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip </fileNamePattern>
+ <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>
+ </appender> <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize> <appender-ref ref="EELFServer" /> </appender> -->
+
+ <!-- EELF Policy Appender. This appender is used to record Policy engine
+ related logging events. The Policy 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="EELFPolicy" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${policyLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip </fileNamePattern>
+ <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>
+ </appender> <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize> <appender-ref ref="EELFPolicy" /> </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">
+ <!-- daily roll over -->
+ <fileNamePattern>${logDirectory}/${auditLogName}.log.%d{yyyy-MM-dd}.zip
+ </fileNamePattern>
+ <maxHistory>30</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${auditLoggerPattern}</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">
+ <!-- daily roll over -->
+ <fileNamePattern>${logDirectory}/${metricsLogName}.log.%d{yyyy-MM-dd}.zip
+ </fileNamePattern>
+ <maxHistory>30</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${metricsLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+
+
+ <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+
+ <appender name="EELFError"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily roll over -->
+ <fileNamePattern>${logDirectory}/${errorLogName}.log.%d{yyyy-MM-dd}.zip
+ </fileNamePattern>
+ <maxHistory>30</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${errorLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFError" />
+ </appender>
+
+ <appender name="EELFDebug"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${debugLogDirectory}/${debugLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily roll over -->
+ <fileNamePattern>${logDirectory}/${debugLogName}.log.%d{yyyy-MM-dd}.zip
+ </fileNamePattern>
+ <maxHistory>30</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${defaultLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+
+
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger name="com.att.eelf" level="info" additivity="false">
+ <appender-ref ref="asyncEELF" />
+ </logger>
+
+ <!-- <logger name="com.att.eelf.security" level="info" additivity="false">
+ <appender-ref ref="asyncEELFSecurity" /> </logger> <logger name="com.att.eelf.perf"
+ level="info" additivity="false"> <appender-ref ref="asyncEELFPerformance"
+ /> </logger> <logger name="com.att.eelf.server" level="info" additivity="false">
+ <appender-ref ref="asyncEELFServer" /> </logger> <logger name="com.att.eelf.policy"
+ level="info" additivity="false"> <appender-ref ref="asyncEELFPolicy" /> </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>
+
+ <logger name="com.att.eelf.error" level="info" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+
+ <logger name="com.att.eelf.debug" level="debug" additivity="false">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+
+ <root level="INFO">
+ <appender-ref ref="asyncEELF" />
+ </root>
+
+</configuration>
--- /dev/null
+music.version = v2
+music.keyspace = keyspaces
+music.session.keyspace = portal
+music.tables = tables
+music.session.attr.tables = spring_session_attributes
+music.session.meta.tables = spring_session
+music.consistency.info = type
+music.consistency.info.value = eventual
+music.cache = false
+music.session.max.inactive.interval.seconds = 1800
+music.serialize.compress = true
+
+#By default it's eventual
+music.atomic.get = false
+music.atomic.put = true
+cassandra.host={{.Values.cassandra.service.name}}
+zookeeper.host={{.Values.zookeeper.service.name}}
+cassandra.user={{.Values.cassandra.config.cassandraUsername}}
+cassandra.password={{.Values.cassandra.config.cassandraPassword}}
--- /dev/null
+authentication_server_url = http://{{.Values.global.portalHostName}}:8383/openid-connect-server-webapp/
+ecomp_openid_connect_client = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/openid_connect_login
+ecomp_redirect_uri = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/welcome.htm
--- /dev/null
+# Not used by portal
+portal.api.impl.class = org.onap.portalsdk.core.onboarding.client.OnBoardingApiServiceImpl.not.used.by.portal
+portal.api.prefix = /api
+max.idle.time = 5
+user.attribute.name = user_attribute
+
+# for single sign on
+ecomp_redirect_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/login.htm
+
+# URL of the ECOMP Portal REST API
+ecomp_rest_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/auxapi
+
+ueb_listeners_enable = true
+
+ueb_app_key = 7GkVcrO6sIDb3ngW
+ueb_app_secret = uCYgKjWKK5IxPGNNZzYSSWo9
+ueb_app_mailbox_name = ECOMP-PORTAL-INBOX
+
+ueb_url_list = message-router
+ecomp_portal_inbox_name = ECOMP-PORTAL-INBOX
+
+# Consumer group name for UEB topic.
+# Use the special tag to generate a unique one for each sdk-app server.
+ueb_app_consumer_group_name = {UUID}
+
+role_access_centralized = remote
+
+ext_req_connection_timeout = 15000
+ext_req_read_timeout = 20000
--- /dev/null
+#mysql
+db.driver = org.mariadb.jdbc.Driver
+db.connectionURL = jdbc:mariadb:failover://portal-db:3306/portal
+db.userName =root
+db.password =Aa123456
+db.hib.dialect = org.hibernate.dialect.MySQLDialect
+db.min_pool_size = 5
+db.max_pool_size = 10
+hb.dialect = org.hibernate.dialect.MySQLDialect
+hb.show_sql = false
+hb.db_reconnect = true
+hb.idle_connection_test_period = 3600
+
+app_display_name = Portal
+files_path = /tmp
+context_root = ONAPPORTAL
+# menu settings
+menu_query_name = menuData
+menu_properties_file_location = /WEB-INF/fusion/menu/
+application_menu_set_name = APP
+application_menu_attribute_name = applicationMenuData
+application_menu_properties_name = menu.properties
+business_direct_menu_set_name = BD
+business_direct_menu_properties_name = bd.menu.properties
+business_direct_menu_attribute_name = businessDirectMenuData
+
+application_user_id = 30000
+post_default_role_id = 1
+
+#Enable Fusion Mobile capabilities for the application
+mobile_enable = false
+
+cache_config_file_path = /WEB-INF/conf/cache.ccf
+cache_switch = 1
+cache_load_on_startup = false
+
+user_name = fullName
+decryption_key = AGLDdG4D04BKm2IxIWEr8o==
+
+
+#Cron Schedules
+cron_site_name = one
+log_cron = 0 * * * * ? *
+sessiontimeout_feed_cron = 0 0/5 * * * ? *
+
+#Front end URL
+frontend_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/applicationsHome
+
+
+# An Unqiue 128-bit value defined to indentify a specific version of
+# ECOMP Portal deployed on a specific virtual machine.
+# This value must be generated and updated at the time of
+# the deployment.
+# Online Unique UUID generator - https://www.uuidgenerator.net/
+instance_uuid = 90bc9497-10e6-49fe-916b-dcdfaa972383
+
+elastic_search_url = http://
+contact_us_link = http://
+user_guide_link = http://
+
+# Contact Us page properties
+ush_ticket_url = http://
+feedback_email_address = portal@lists.onap.org
+portal_info_url = https://
+
+#Online user bar refresh interval, in seconds
+online_user_update_rate = 30
+
+#Online user bar refresh total duration, in seconds
+online_user_update_duration = 300
+
+#authenticate user server
+authenticate_user_server=http://{{.Values.global.portalHostName}}:8383/openid-connect-server-webapp/allUsers
+
+#window width threshold to collapse left/right menu when page onload
+window_width_threshold_left_menu = 1400
+window_width_threshold_right_menu = 1350
+
+# User notification refresh interval and duration, in seconds
+notification_update_rate = 90
+notification_update_duration = 900
+
+#Microservices Related Properties for Portal
+microservices.widget.protocol = http
+microservices.widget.hostname = portal-widget
+microservices.widget.username = widget_user
+microservices.widget.password = M+KcrCMVrR1rAxtiFE49n1uXC3FCkNBqFgeYsubEC/U=
+#This property won't be needed after consul is functional on VMs -
+microservices.widget.local.port = 8082
+microservices.m-learn.local.port = 8083
+#HALO API enable flag
+external_access_enable = false
+
+#delete auditlog from number of days ago
+auditlog_del_day_from = 365
+
+#External system notification URL
+external_system_notification_url= https://jira.onap.org/browse/
+
+# External Access System Basic Auth Credentials & Rest endpoint(These credentials doesn't work as these are place holders for now)
+ext_central_access_user_name = m00468@portal.onap.org
+ext_central_access_password = ByC0BEX2v5+4HBv2GA4S+Mi2iML+GrGNJ5Gxo/V/iWM=
+ext_central_access_url = https://aaftest.test.onap.org:8095/proxy/authz/
+ext_central_access_user_domain = @csp.onap.org
+
+# External Central Auth system access
+remote_centralized_system_access = false
+
+#cookie domain
+cookie_domain = onap.org
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-onapportal
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPPORTAL/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-portal-db-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /start-apache-tomcat.sh
+ - -i
+ - ""
+ - -n
+ - ""
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/fusion/conf/fusion.properties"
+ subPath: fusion.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/openid-connect.properties"
+ subPath: openid-connect.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/conf/system.properties"
+ subPath: system.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/portal.properties"
+ subPath: portal.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/music.properties"
+ subPath: music.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/logback.xml"
+ subPath: logback.xml
+ - name: portal-tomcat-logs
+ mountPath: "{{ .Values.global.env.tomcatDir }}/logs"
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - name: portal-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-onapportal
+ configMap:
+ name: {{ include "common.fullname" . }}-onapportal
+ defaultMode: 0755
+ - name: filebeat-conf
+ configMap:
+ name: portal-filebeat
+ - name: var-log-onap
+ emptyDir: {}
+ - name: portal-data-filebeat
+ emptyDir: {}
+ - name: portal-tomcat-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "portal",
+ "version": "v2",
+ "url": "/",
+ "protocol": "REST"
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{- if or (eq .Values.service.type "NodePort") (eq .Values.service.type "LoadBalancer") }}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName }}3
+ {{- end }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/portal-app:v2.2.0
+pullPolicy: Always
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: LoadBalancer
+ name: portal-app
+ portName: portal-app
+ externalPort: 8989
+ internalPort: 8080
+ nodePort: 15
+ externalPort2: 8006
+ internalPort2: 8005
+ nodePort2: 13
+ externalPort3: 8010
+ internalPort3: 8009
+ nodePort3: 14
+
+mariadb:
+ service:
+ name: portal-db
+widget:
+ service:
+ name: portal-widget
+cassandra:
+ service:
+ name: portal-cassandra
+ config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+zookeeper:
+ service:
+ name: portal-zookeeper
+messageRouter:
+ service:
+ name: message-router
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: Portal cassandra
+name: portal-cassandra
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+CREATE KEYSPACE IF NOT EXISTS portal
+ WITH REPLICATION = {
+ 'class' : 'SimpleStrategy',
+ 'replication_factor': 1
+ }
+ AND DURABLE_WRITES = true;
+
+
+CREATE TABLE portal.spring_session (
+ primary_id text PRIMARY KEY,
+ creation_time text,
+ expiry_time text,
+ last_access_time text,
+ max_inactive_interval text,
+ principal_name text,
+ session_id text,
+ vector_ts text
+) WITH bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '10'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
+
+
+CREATE TABLE portal.spring_session_attributes (
+ primary_id text,
+ attribute_name text,
+ attribute_bytes blob,
+ vector_ts text,
+ PRIMARY KEY (primary_id, attribute_name)
+) WITH CLUSTERING ORDER BY (attribute_name ASC)
+ AND bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '1'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
--- /dev/null
+CREATE KEYSPACE IF NOT EXISTS portalsdk
+ WITH REPLICATION = {
+ 'class' : 'SimpleStrategy',
+ 'replication_factor': 1
+ }
+ AND DURABLE_WRITES = true;
+
+
+CREATE TABLE portalsdk.spring_session (
+ primary_id text PRIMARY KEY,
+ creation_time text,
+ expiry_time text,
+ last_access_time text,
+ max_inactive_interval text,
+ principal_name text,
+ session_id text,
+ vector_ts text
+) WITH bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '10'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
+
+
+CREATE TABLE portalsdk.spring_session_attributes (
+ primary_id text,
+ attribute_name text,
+ attribute_bytes blob,
+ vector_ts text,
+ PRIMARY KEY (primary_id, attribute_name)
+) WITH CLUSTERING ORDER BY (attribute_name ASC)
+ AND bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '1'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-docker-entry-initd
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ - containerPort: {{ .Values.service.internalPort4 }}
+ - containerPort: {{ .Values.service.internalPort5 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CASSUSER
+ value: "{{ .Values.config.cassandraUsername }}"
+ - name: CASSPASS
+ value: "{{ .Values.config.cassandraPassword }}"
+ - name: JVM_OPTS
+ value: "{{ .Values.config.cassandraJvmOpts }}"
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: cassandra-docker-entrypoint-initdb
+ mountPath: /docker-entrypoint-initdb.d/zzz_portal.cql
+ subPath: portal.cql
+ - name: cassandra-docker-entrypoint-initdb
+ mountPath: /docker-entrypoint-initdb.d/zzz_portalsdk.cql
+ subPath: portalsdk.cql
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/data
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: cassandra-docker-entrypoint-initdb
+ configMap:
+ name: {{ include "common.fullname" . }}-docker-entry-initd
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ {{- if .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
+ name: {{ .Values.service.portName }}5
+
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ name: {{ .Values.service.portName }}5
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+ persistence: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/music/cassandra_music:3.0.0
+pullPolicy: Always
+
+# application configuration
+config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+ cassandraJvmOpts: -Xmx2536m -Xms2536m
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: portal/cassandra/data
+
+service:
+ type: ClusterIP
+ name: portal-cassandra
+ portName: portal-cassandra
+ externalPort: 9160
+ internalPort: 9160
+ externalPort2: 7000
+ internalPort2: 7000
+ externalPort3: 7001
+ internalPort3: 7001
+ externalPort4: 7199
+ internalPort4: 7199
+ externalPort5: 9042
+ internalPort5: 9042
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: MariaDB Service
+name: portal-mariadb
+version: 2.0.0
--- /dev/null
+USE portal;
+/*
+Any updates required by OOM to the portaldb are made here.
+1. split up SDC-FE and SDC-BE. Originally both FE and BE point to the same IP
+while the OOM K8s version has these service split up.
+*/
+-- app_url is the FE, app_rest_endpoint is the BE
+--portal-sdk => TODO: doesn't open a node port yet
+update fn_app set app_url = 'http://{{.Values.config.portalSdkHostName}}:{{.Values.config.portalSdkPort}}/ONAPPORTALSDK/welcome.htm', app_rest_endpoint = 'http://portal-sdk:8990/ONAPPORTALSDK/api/v2' where app_name = 'xDemo App';
+--dmaap-bc => the dmaap-bc doesn't open a node port..
+update fn_app set app_url = 'http://{{.Values.config.dmaapBcHostName}}:{{.Values.config.dmaapBcPort}}/ECOMPDBCAPP/dbc#/dmaap', app_rest_endpoint = 'http://dmaap-bc:8989/ECOMPDBCAPP/api/v2' where app_name = 'DMaaP Bus Ctrl';
+--sdc-be => 8443:30204, 8080:30205
+--sdc-fe => 8181:30206, 9443:30207
+update fn_app set app_url = 'http://{{.Values.config.sdcFeHostName}}:{{.Values.config.sdcFePort}}/sdc1/portal', app_rest_endpoint = 'http://sdc-be:8080/api/v2' where app_name = 'SDC';
+--pap => 8443:30219
+update fn_app set app_url = 'http://{{.Values.config.papHostName}}:{{.Values.config.papPort}}/onap/policy', app_rest_endpoint = 'http://pap:8443/onap/api/v2' where app_name = 'Policy';
+--vid => 8080:30200
+update fn_app set app_url = 'http://{{.Values.config.vidHostName}}:{{.Values.config.vidPort}}/vid/welcome.htm', app_rest_endpoint = 'http://vid:8080/vid/api/v2' where app_name = 'Virtual Infrastructure Deployment';
+--sparky => TODO: sparky doesn't open a node port yet
+update fn_app set app_url = 'http://{{.Values.config.aaiSparkyHostName}}:{{.Values.config.aaiSparkyPort}}/services/aai/webapp/index.html#/viewInspect', app_rest_endpoint = 'http://aai-sparky-be.{{.Release.Namespace}}:9517/api/v2' where app_name = 'A&AI UI';
+--cli => 8080:30260
+update fn_app set app_url = 'http://{{.Values.config.cliHostName}}:{{.Values.config.cliPort}}/', app_type = 1 where app_name = 'CLI';
+--msb-discovery => 10081:30281 this is clearly incorrect
+update fn_app set app_url = 'http://{{.Values.config.msbDiscoveryHostName}}:{{.Values.config.msbDiscoveryPort}}/iui/microservices/default.html' where app_name = 'MSB';
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-mariadb
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/mariadb/*").AsConfig . | indent 2 }}
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_HOST
+ value: "{{ include "common.servicename" . }}"
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ volumeMounts:
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ {{- if .Values.persistence.enabled }}
+ - name: mariadb-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ include "common.name" . }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.mariadbInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DB_HOST
+ value: "{{ include "common.servicename" . }}"
+ - name: DB_USER
+ value: {{ .Values.config.mariadbUser }}
+ - name: DB_PASS
+ valueFrom:
+ secretKeyRef: {name: {{ include "common.fullname" . }}, key: db-root-password}
+ - name: SQL_SRC_DIR
+ value: {{ .Values.config.sqlSourceDirectory }}
+ - name: {{ include "common.name" . }}-oom-update-job
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.mariadbInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DB_HOST
+ value: "{{ include "common.servicename" . }}"
+ - name: DB_USER
+ value: {{ .Values.config.mariadbUser }}
+ - name: DB_PORT
+ value: "{{ .Values.service.internalPort }}"
+ - name: DB_PASS
+ valueFrom:
+ secretKeyRef: {name: {{ include "common.fullname" . }}, key: db-root-password}
+ command:
+ - /bin/sh
+ - -x
+ - -c
+ - "mysql -vv --user=$DB_USER --password=$DB_PASS --host=$DB_HOST --port=$DB_PORT < /tmp/oom_updates.sql"
+ volumeMounts:
+ - name: portal-mariadb-sql
+ mountPath: /tmp/oom_updates.sql
+ subPath: oom_updates.sql
+ volumes:
+ - name: portal-mariadb-sql
+ configMap:
+ name: {{ include "common.fullname" . }}-mariadb
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+ persistence: {}
+ readinessRepository: oomk8s
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/portal-db:v2.2.0
+pullPolicy: Always
+
+readinessImage: readiness-check:2.0.0
+mariadbInitImage: "mariadb-client-init:2.0.0"
+
+# application configuration
+config:
+ mariadbUser: root
+ mariadbRootPassword: Aa123456
+ #The directory where sql files are found in the projects gerrit repo.
+ sqlSourceDirectory: portal/deliveries
+ # sdc frontend assignment for port 8181
+ sdcFePort: "30206"
+ # application's front end hostname. Must be resolvable on the client side environment
+ sdcFeHostName: "sdc.api.fe.simpledemo.onap.org"
+ # policy pap ui assignment for port 8443
+ papPort: "30219"
+ # application's front end hostname. Must be resolvable on the client side environment
+ papHostName: "policy.api.simpledemo.onap.org"
+ # vid ui assignment for port 8080
+ vidPort: "30200"
+ # application's front end hostname. Must be resolvable on the client side environment
+ vidHostName: "vid.api.simpledemo.onap.org"
+ # aai sparky ui assignment for port 8080
+ aaiSparkyPort: "" # TODO: populate with
+ # application's front end hostname. Must be resolvable on the client side environment
+ aaiSparkyHostName: "aai.api.sparky.simpledemo.onap.org"
+ # cli ui assignment for port 8080
+ cliPort: "30260"
+ # application's front end hostname. Must be resolvable on the client side environment
+ cliHostName: "cli.api.simpledemo.onap.org"
+ # portal sdk (demo app) ui assignment for port 8990
+ portalSdkPort: "" # TODO: populate with port
+ # application's front end hostname. Must be resolvable on the client side environment
+ portalSdkHostName: "portal-sdk.simpledemo.onap.org"
+ # dmaap bus controller ui assignment for port ?
+ dmaapBcPort: "" # TODO: populate with
+ # application's front end hostname. Must be resolvable on the client side environment
+ dmaapBcHostName: "dmaap-bc.simpledemo.onap.org"
+ # msb discovery ui assignment for port ?
+ msbDiscoveryPort: "30281"
+ # application's front end hostname. Must be resolvable on the client side environment
+ msbDiscoveryHostName: "msb.api.discovery.simpledemo.onap.org"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 300
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 300
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: portal/mariadb/data
+
+service:
+ type: ClusterIP
+ name: portal-db
+ portName: portal-db
+ externalPort: 3306
+ internalPort: 3306
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: Portal software development kit
+name: portal-sdk
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# login settings
+login_method_backdoor = backdoor
+login_method_attribute_name = login_method
+
+# These properties will be removed after SingleSignOnController is cleaned
+authentication_mechanism = BOTH
+login_method_csp = csp
+login_method_web_junction = web_junction
+
+#login message
+login.error.hrid.empty = Login failed, please contact system administrator.
+login.error.hrid.not-found = User not found, please contact system administrator.
+login.error.user.inactive = Account is disabled, please contact system administrator.
+
+# User Session settings
+user_attribute_name = user
+roles_attribute_name = roles
+role_function_list = role_function_list
+role_functions_attribute_name = role_functions
+
+# Import-user LDAP settings
+post_initial_context_factory = com.sun.jndi.ldap.LdapCtxFactory
+post_provider_url = ldap://ldap.mycompany.com:389
+post_security_principal = ou=people,o=mycompany,c=us
+post_max_result_size = 499
+
+# menu settings
+menu_query_name = menuData
+application_menu_set_name = APP
+application_menu_attribute_name = applicationMenuData
+business_direct_menu_set_name = BD
+business_direct_menu_attribute_name = businessDirectMenuData
+
+# Role settings
+sys_admin_role_id = 1
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ============LICENSE_START==========================================
+ ONAP Portal SDK
+ ===================================================================
+ Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ ===================================================================
+
+ Unless otherwise specified, all software contained herein is licensed
+ under the Apache License, Version 2.0 (the “License”);
+ you may not use this software 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.
+
+ Unless otherwise specified, all documentation contained herein is licensed
+ under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
+ you may not use this documentation except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://creativecommons.org/licenses/by/4.0/
+
+ Unless required by applicable law or agreed to in writing, documentation
+ 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============================================
+
+ ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ -->
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!--
+ Logback files for the ONAP Portal SDK Application
+ are created in directory ${catalina.base}/logs/${componentName}
+ e.g., apache-tomcat-8.0.35/logs/onapsdk/application.log
+ -->
+ <!--<jmxConfigurator /> -->
+ <!-- specify the component name -->
+ <property name="componentName" value="onapsdk"></property>
+ <!-- specify the base path of the log directory -->
+ <property name="logDirPrefix" value="${catalina.base}/logs"></property>
+ <!-- The directories where logs are written -->
+ <property name="logDirectory" value="${logDirPrefix}/${componentName}" />
+ <!-- Can easily relocate debug logs by modifying this path. -->
+ <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />
+ <!-- log file names -->
+ <property name="generalLogName" value="application" />
+ <property name="errorLogName" value="error" />
+ <property name="metricsLogName" value="metrics" />
+ <property name="auditLogName" value="audit" />
+ <property name="debugLogName" value="debug" />
+ <!--
+ These loggers are not used in code (yet).
+ <property name="securityLogName" value="security" /><property name="policyLogName" value="policy" /><property name="performanceLogName" value="performance" /><property name="serverLogName" value="server" />
+ -->
+ <!-- 1610 Logging Fields Format Revisions -->
+ <property name="auditLoggerPattern" value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
+ <property name="metricsLoggerPattern" value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
+ <property name="errorLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
+ <property name="defaultLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />
+ <!-- use %class so library logging calls yield their class name -->
+ <property name="applicationLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${defaultLoggerPattern}</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">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
+ <!-- keep 30 days' worth of history capped at 3GB total size -->
+ <maxHistory>30</maxHistory>
+ <totalSizeCap>3GB</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${applicationLoggerPattern}</pattern>
+ </encoder>
+ <filter class="org.onap.portalapp.util.CustomLoggingFilter" />
+ </appender>
+ <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <!-- Class name is part of caller data -->
+ <includeCallerData>true</includeCallerData>
+ <appender-ref ref="EELF" />
+ </appender>
+ <!-- EELF Security Appender. This appender is used to record security events
+ to the security log file. Security events are separate from other loggers
+ in EELF so that security log records can be captured and managed in a secure
+ way separate from the other logs. This appender is set to never discard any
+ events. -->
+ <!--
+ <appender name="EELFSecurity" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${logDirectory}/${securityLogName}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"><fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
+ </fileNamePattern><minIndex>1</minIndex><maxIndex>9</maxIndex></rollingPolicy><triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"><maxFileSize>5MB</maxFileSize></triggeringPolicy><encoder><pattern>${defaultPattern}</pattern></encoder></appender><appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender"><queueSize>256</queueSize><discardingThreshold>0</discardingThreshold><appender-ref ref="EELFSecurity" /></appender>
+ -->
+ <!-- EELF Performance Appender. This appender is used to record performance
+ records. -->
+ <!--
+ <appender name="EELFPerformance" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${logDirectory}/${performanceLogName}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"><fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
+ </fileNamePattern><minIndex>1</minIndex><maxIndex>9</maxIndex></rollingPolicy><triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"><maxFileSize>5MB</maxFileSize></triggeringPolicy><encoder><outputPatternAsHeader>true</outputPatternAsHeader><pattern>${defaultPattern}</pattern></encoder></appender><appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender"><queueSize>256</queueSize><appender-ref ref="EELFPerformance" /></appender>
+ -->
+ <!-- EELF Server Appender. This appender is used to record Server related
+ logging events. The Server logger and appender are specializations of the
+ EELF application root logger and appender. This can be used to segregate Server
+ events from other components, or it can be eliminated to record these events
+ as part of the application root log. -->
+ <!--
+ <appender name="EELFServer" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${logDirectory}/${serverLogName}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"><fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
+ </fileNamePattern><minIndex>1</minIndex><maxIndex>9</maxIndex></rollingPolicy><triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"><maxFileSize>5MB</maxFileSize></triggeringPolicy><encoder><pattern>${defaultPattern}</pattern></encoder></appender><appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender"><queueSize>256</queueSize><appender-ref ref="EELFServer" /></appender>
+ -->
+ <!-- EELF Policy Appender. This appender is used to record Policy engine
+ related logging events. The Policy 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="EELFPolicy" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${logDirectory}/${policyLogName}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"><fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
+ </fileNamePattern><minIndex>1</minIndex><maxIndex>9</maxIndex></rollingPolicy><triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"><maxFileSize>5MB</maxFileSize></triggeringPolicy><encoder><pattern>${defaultPattern}</pattern></encoder></appender><appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender"><queueSize>256</queueSize><appender-ref ref="EELFPolicy" /></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">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
+ <!-- keep 30 days' worth of history capped at 3GB total size -->
+ <maxHistory>30</maxHistory>
+ <totalSizeCap>3GB</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${auditLoggerPattern}</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">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
+ <!-- keep 30 days' worth of history capped at 3GB total size -->
+ <maxHistory>30</maxHistory>
+ <totalSizeCap>3GB</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${metricsLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFMetrics"/>
+ </appender>
+ <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
+ <!-- keep 30 days' worth of history capped at 3GB total size -->
+ <maxHistory>30</maxHistory>
+ <totalSizeCap>3GB</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${errorLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFError"/>
+ </appender>
+ <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${debugLogDirectory}/${debugLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
+ <!-- keep 30 days' worth of history capped at 3GB total size -->
+ <maxHistory>30</maxHistory>
+ <totalSizeCap>3GB</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${defaultLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFDebug" />
+ </appender>
+ <logger name="org.onap.eelf" level="info" additivity="false">
+ <appender-ref ref="asyncEELF" />
+ </logger>
+ <logger name="org.onap.eelf.audit" level="info" additivity="false">
+ <appender-ref ref="asyncEELFAudit" />
+ </logger>
+ <logger name="org.onap.eelf.debug" level="debug" additivity="false">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+ <logger name="org.onap.eelf.error" level="info" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+ <logger name="org.onap.eelf.metrics" level="info" additivity="false">
+ <appender-ref ref="asyncEELFMetrics" />
+ </logger>
+ <root level="DEBUG">
+ <appender-ref ref="asyncEELF" />
+ </root>
+</configuration>
\ No newline at end of file
--- /dev/null
+music.version = v2
+music.keyspace = keyspaces
+music.session.keyspace = portalsdk
+music.tables = tables
+music.session.attr.tables = spring_session_attributes
+music.session.meta.tables = spring_session
+music.consistency.info = type
+music.consistency.info.value = eventual
+music.cache = false
+music.session.max.inactive.interval.seconds = 1800
+music.serialize.compress = true
+
+#By default it's eventual
+music.atomic.get = false
+music.atomic.put = true
+
+cassandra.host={{.Values.cassandra.service.name}}
+zookeeper.host={{.Values.zookeeper.service.name}}
+cassandra.user={{.Values.cassandra.config.cassandraUsername}}
+cassandra.password={{.Values.cassandra.config.cassandraPassword}}
--- /dev/null
+# Properties read by ECOMP Framework library, ecompFW.jar
+
+##########################################################################
+# The following properties should NOT be changed by partner applications.
+##########################################################################
+
+portal.api.prefix = /api
+max.idle.time = 5
+user.attribute.name = user_attribute
+
+#Use REST API instead of UEB to fetch the functional menu data
+use_rest_for_functional_menu=true
+
+##########################################################################
+# The following properties MUST be changed by partner applications.
+##########################################################################
+
+# Name of java class that implements the OnBoardingApiService interface.
+# epsdk 1.3 uses org.onap prefix
+portal.api.impl.class = org.onap.portalapp.service.OnBoardingApiServiceImpl
+
+# CSP Global Log On for single sign on
+ecomp_redirect_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/login.htm
+
+# URL of the ECOMP Portal REST API
+
+ecomp_rest_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/auxapi
+
+# Applications do not need to run a UEB listener in 1610.
+ueb_listeners_enable = false
+
+# UEB Configuration
+ueb_url_list = message-router
+# ECOMP Portal listens on this UEB topic
+ecomp_portal_inbox_name = ECOMP-PORTAL-INBOX
+# Replace these 3 default values with the ones for your specific App,
+# as shown on the on-boarding page on the ECOMP Portal web application.
+ueb_app_key = jQd4a9zVNi4ePyBp
+ueb_app_secret = P0HpqEBhKJvxjRYdw2sCTUll
+ueb_app_mailbox_name = ECOMP-PORTAL-OUTBOX-APP1
+# Consumer group name for UEB topic.
+# Use the special tag '{UUID}' to generate a unique one for each sdk-app server.
+ueb_app_consumer_group_name = {UUID}
+
+decryption_key = AGLDdG4D04BKm2IxIWEr8o==
--- /dev/null
+# Properties read by ECOMP Core library, ecompSDK-core.jar
+
+##########################################################################
+# The following properties should NOT be changed by partner applications.
+##########################################################################
+
+application_user_id = 30000
+post_default_role_id = 16
+clustered = true
+
+#Enable Fusion Mobile capabilities for the application
+mobile_enable = false
+
+# Cache config file is needed on the classpath
+cache_config_file_path = /WEB-INF/classes/cache.ccf
+cache_switch = 199
+cache_load_on_startup = false
+
+user_name = fullName
+decryption_key = AGLDdG4D04BKm2IxIWEr8o==
+
+##########################################################################
+# The following properties MAY require changes by partner applications.
+##########################################################################
+
+db.driver = org.mariadb.jdbc.Driver
+db.connectionURL = jdbc:mariadb://portal-db:3306/ecomp_sdk
+db.userName = root
+db.password = Aa123456
+db.min_pool_size = 5
+db.max_pool_size = 10
+hb.dialect = org.hibernate.dialect.MySQLDialect
+# SQL statements are logged to stdout
+hb.show_sql = true
+hb.idle_connection_test_period = 3600
+
+app_display_name = Demo App
+files_path = /tmp
+
+#element map files
+element_map_file_path = /tmp
+element_map_icon_path = app/fusionapp/icons/
+
+#Cron Schedules
+log_cron = 0 0/1 * * * ?;
+mylogins_feed_cron = 0 0/60 * * * ?;
+#sessiontimeout_feed_cron = 0 * * * * ? *
+my_login_feed_output_dir = /tmp/MyLogins
+
+# Link shown in Help menu
+contact_us_link = https://todo_contact_us_link.com
+
+# An Unique 128-bit value defined to identify a specific version
+# of an application deployed on a specific virtual machine.
+# This value must be generated and updated by the application
+# which is using the ECOMP SDK at the time of its deployment.
+# Online Unique UUID generator - https://www.uuidgenerator.net/
+instance_uuid=8da691c9-987d-43ed-a358-00ac2f35685d
+
+# R Cloud feature - configure this property to enable notebook feature - for more details on RCloud please visit https://rcloud.social/index.html
+guard_notebook_url=
+
+#authenticate user server
+#TODO: what is this URL supposed to be pointing to? Nothing in portal opens 8383
+authenticate_user_server=http://{{.Values.global.portalHostName}}:8383/openid-connect-server-webapp/allUsers
+
+#cookie domain
+cookie_domain = onap.org
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-onapportalsdk
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPPORTALSDK/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "portal-db"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /start-apache-tomcat.sh
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/fusion/conf/fusion.properties"
+ subPath: fusion.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/conf/system.properties"
+ subPath: system.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/classes/portal.properties"
+ subPath: portal.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/classes/music.properties"
+ subPath: music.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/classes/logback.xml"
+ subPath: logback.xml
+ - name: portal-tomcat-logs
+ mountPath: "{{ .Values.global.env.tomcatDir }}/logs"
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - name: portal-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-onapportalsdk
+ configMap:
+ name: {{ include "common.fullname" . }}-onapportalsdk
+ defaultMode: 0755
+ - name: filebeat-conf
+ configMap:
+ name: portal-filebeat
+ - name: var-log-onap
+ emptyDir: {}
+ - name: portal-data-filebeat
+ emptyDir: {}
+ - name: portal-tomcat-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/portal-sdk:v2.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: portal-sdk
+ portName: portal-sdk
+ externalPort: 8990
+ internalPort: 8080
+
+mariadb:
+ service:
+ name: portal-db
+widget:
+ service:
+ name: portal-widget
+cassandra:
+ service:
+ name: portal-cassandra
+ config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+zookeeper:
+ service:
+ name: portal-zookeeper
+messageRouter:
+ service:
+ name: message-router
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: Portal widgets micro service application
+name: portal-widget
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+## General App Properties
+server.contextPath=/widget
+server.port=8082
+spring.http.multipart.max-file-size=128MB
+spring.http.multipart.max-request-size=128MB
+microservice.widget.location=/tmp
+
+## App DB Properties
+spring.datasource.url=jdbc:mysql://portal-db:3306/portal
+spring.datasource.username=root
+spring.datasource.password=Aa123456
+spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
+spring.database.driver.classname=org.mariadb.jdbc.Driver
+spring.jpa.show-sql=false
+spring.jpa.properties.hibernate.format_sql=false
+
+## Basic Authentication Properties
+security.user.name=widget_user
+security.user.password=ENC(IjywcRnI9+nuVEh9+OFFiRWAjBT1n718)
+
+initialization.default.widgets=true
+initialization.widgetData.url=http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/commonWidgets
+
+## Account Basic Authentication Properties
+account.user.name=portal
+account.user.password=6APqvG4AU2rfLgCvMdySwQ==
+
+## Certificate Properties
+#server.ssl.key-store=classpath:widget-keystore.p12
+#server.ssl.key-store-password=ENC(DiIYnAMab4u7rEW2yKhF9zBL00uU55q8)
+#server.ssl.keyStoreType=PKCS12
+#server.ssl.keyAlias=widget-microservice
+
--- /dev/null
+jasypt:
+ encryptor:
+ password: EncryptionKey
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-onapwidgetms
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPWIDGETMS/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "portal-db"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /start-wms.sh
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: properties-onapwidgetms
+ mountPath: "/application.properties"
+ subPath: application.properties
+ - name: properties-onapwidgetms
+ mountPath: "/application.yml"
+ subPath: application.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-onapwidgetms
+ configMap:
+ name: {{ include "common.fullname" . }}-onapwidgetms
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuInit: ubuntu-init:1.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/portal-wms:v2.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+mariadb:
+ service:
+ name: portal-db
+
+service:
+ type: ClusterIP
+ name: portal-widget
+ portName: portal-widget
+ externalPort: 8082
+ internalPort: 8082
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: Zookeeper for ONAP Portal
+name: portal-zookeeper
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+ persistence: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: zookeeper:3.4
+pullPolicy: Always
+
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: portal-zookeeper
+ portName: portal-zk
+ externalPort: 2181
+ internalPort: 2181
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
-FROM ubuntu:16.04
+FROM boxfuse/flyway:5.0.7-alpine
+ARG branch=master
ENV no_proxy "localhost,127.0.0.1,.cluster.local,$KUBERNETES_SERVICE_HOST"
# Setup Corporate proxy
ENV https_proxy ${HTTP_PROXY}
ENV http_proxy ${HTTPS_PROXY}
-RUN apt-get update
-RUN apt-get install -y mariadb-client-10.0
+RUN apk add --update \
+ mariadb-client=10.1.28-r1 \
+ git \
+ && rm -rf /var/cache/apk/*
-VOLUME /portal-mysql
+ENV so_branch=$branch
+#ENV policy_branch: $branch
+ENV portal_branch=$branch
+#ENV sdnc_branch: $branch
+#ENV vid_branch: $branch
+#ENV clamp_branch: $branch
+
+#ENV appc_repo: http://gerrit.onap.org/r/appc/deployment.git
+ENV so_repo=http://gerrit.onap.org/r/so/docker-config.git
+#ENV policy_repo: http://gerrit.onap.org/r/policy/docker.git
+ENV portal_repo=http://gerrit.onap.org/r/portal.git
+#ENV sdnc_repo: http://gerrit.onap.org/r/sdnc/oam.git
+#ENV vid_repo: http://gerrit.onap.org/r/vid.git
+#ENV clamp_repo: http://gerrit.onap.org/r/clamp.git
+
+RUN mkdir -p /onap-sources
+WORKDIR /onap-sources
+
+RUN git clone -b $branch $portal_repo && cd portal && git checkout HEAD
+RUN git clone -b $branch $so_repo && cd docker-config && git checkout HEAD
+
+VOLUME /onap-sources
+
+COPY db_migrate.sh /root
+
+RUN chmod a+x /root/db_migrate.sh
+ENTRYPOINT /root/db_migrate.sh
--- /dev/null
+#!/bin/sh -x
+SQL_DEST_DIR=${SQL_DEST_DIR:-/tmp/sql}
+DB_PORT=${DB_PORT:-3306}
+
+[[ -z "$SQL_SRC_DIR" ]] && { echo "Error: SQL_SRC_DIR must be provided as an environment variable"; exit 1; }
+[[ -z "$DB_USER" ]] && { echo "Error: DB_USER must be provided as an environment variable"; exit 1; }
+[[ -z "$DB_PASS" ]] && { echo "Error: DB_PASS must be provided as an environment variable"; exit 1; }
+[[ -z "$DB_HOST" ]] && { echo "Error: DB_HOST must be provided as an environment variable"; exit 1; }
+
+mkdir -p $SQL_DEST_DIR
+
+#Find all sql files and copy them to the destination directory
+find "/onap-sources/$SQL_SRC_DIR" -type f -iname "*.sql" | awk -v dest="$SQL_DEST_DIR" '{n=split($1,a,"/"); system(sprintf( "cp %s %s", $1, dest"/"a[n])) }'
+
+
+#Not needed right now?
+#--database=$DB_NAME
+
+#--force to deal with duplicate records in absense of "insert ignore"
+##ERROR 1062 (23000) at line 382: Duplicate entry '2' for key 'PRIMARY'
+
+cd $SQL_DEST_DIR
+cat *.sql | mysql -vv --user=$DB_USER --password=$DB_PASS --host=$DB_HOST --port=$DB_PORT --force
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
#List of logstash server ip addresses with port number.
#But, in our case, this will be the loadbalancer IP address.
#For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
- hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ hosts: ["{{.Values.config.logstashServiceName}}:{{.Values.config.logstashPort}}"]
#If enable will do load balancing among availabe Logstash, automatically.
loadbalance: true
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START==========================================
- ONAP Portal
- ===================================================================
- Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- ===================================================================
-
- Unless otherwise specified, all software contained herein is licensed
- under the Apache License, Version 2.0 (the “License”);
- you may not use this software 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.
-
- Unless otherwise specified, all documentation contained herein is licensed
- under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
- you may not use this documentation except in compliance with the License.
- You may obtain a copy of the License at
-
- https://creativecommons.org/licenses/by/4.0/
-
- Unless required by applicable law or agreed to in writing, documentation
- 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============================================
-
- ECOMP is a trademark and service mark of AT&T Intellectual Property.
- -->
-
-<!DOCTYPE xml>
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!-- Log-back files for the ECOMP Portal are created in directory
- ${catalina.base}/logs/${componentName}; e.g., apache-tomcat-8.0.35/logs/onapportal/application.log -->
- <!--<jmxConfigurator /> -->
-
- <!-- specify the component name -->
- <property name="componentName" value="onapportal"></property>
-
- <!-- specify the base path of the log directory -->
- <property name="logDirPrefix" value="${catalina.base}/logs"></property>
-
- <!-- The directories where logs are written -->
- <property name="logDirectory" value="${logDirPrefix}/${componentName}" />
- <!-- Can easily relocate debug logs by modifying this path. -->
- <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />
-
- <!-- log file names -->
- <property name="generalLogName" value="application" />
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
- <!-- These loggers are not used in code (yet). <property name="securityLogName"
- value="security" /> <property name="policyLogName" value="policy" /> <property
- name="performanceLogName" value="performance" /> <property name="serverLogName"
- value="server" /> -->
-
- <!-- ServerFQDN=Server, -->
- <property name="auditLoggerPattern"
- value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-
- <property name="metricsLoggerPattern"
- value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-
- <property name="errorLoggerPattern"
- value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
-
- <property name="defaultLoggerPattern"
- value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />
-
- <!-- use %class so library logging calls yield their class name -->
- <property name="applicationLoggerPattern"
- value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />
-
- <!--
- <property name="defaultPattern"
- value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
- <property name="debugLoggerPattern"
- value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
- -->
- <!-- <property name="debugLoggerPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n"
- /> -->
- <!-- Example evaluator filter applied against console appender -->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${applicationLoggerPattern}</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">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${generalLogName}.log.%d{yyyy-MM-dd}.zip
- </fileNamePattern>
- <maxHistory>30</maxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>${applicationLoggerPattern}</pattern>
- </encoder>
- <filter class="org.openecomp.portalapp.portal.utils.CustomLoggingFilter" />
- </appender>
-
- <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <!-- Class name is part of caller data -->
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="EELF" />
- </appender>
-
- <!-- EELF Security Appender. This appender is used to record security events
- to the security log file. Security events are separate from other loggers
- in EELF so that security log records can be captured and managed in a secure
- way separate from the other logs. This appender is set to never discard any
- events. -->
- <!-- <appender name="EELFSecurity" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${securityLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip </fileNamePattern>
- <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>
- </appender> <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize> <discardingThreshold>0</discardingThreshold> <appender-ref
- ref="EELFSecurity" /> </appender> -->
-
- <!-- EELF Performance Appender. This appender is used to record performance
- records. -->
- <!-- <appender name="EELFPerformance" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${performanceLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip </fileNamePattern>
- <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy> <encoder> <outputPatternAsHeader>true</outputPatternAsHeader>
- <pattern>${defaultPattern}</pattern> </encoder> </appender> <appender name="asyncEELFPerformance"
- class="ch.qos.logback.classic.AsyncAppender"> <queueSize>256</queueSize>
- <appender-ref ref="EELFPerformance" /> </appender> -->
-
- <!-- EELF Server Appender. This appender is used to record Server related
- logging events. The Server logger and appender are specializations of the
- EELF application root logger and appender. This can be used to segregate
- Server events from other components, or it can be eliminated to record these
- events as part of the application root log. -->
- <!-- <appender name="EELFServer" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${serverLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip </fileNamePattern>
- <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>
- </appender> <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize> <appender-ref ref="EELFServer" /> </appender> -->
-
- <!-- EELF Policy Appender. This appender is used to record Policy engine
- related logging events. The Policy 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="EELFPolicy" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${policyLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip </fileNamePattern>
- <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>
- </appender> <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize> <appender-ref ref="EELFPolicy" /> </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">
- <!-- daily roll over -->
- <fileNamePattern>${logDirectory}/${auditLogName}.log.%d{yyyy-MM-dd}.zip
- </fileNamePattern>
- <maxHistory>30</maxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>${auditLoggerPattern}</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">
- <!-- daily roll over -->
- <fileNamePattern>${logDirectory}/${metricsLogName}.log.%d{yyyy-MM-dd}.zip
- </fileNamePattern>
- <maxHistory>30</maxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>${metricsLoggerPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily roll over -->
- <fileNamePattern>${logDirectory}/${errorLogName}.log.%d{yyyy-MM-dd}.zip
- </fileNamePattern>
- <maxHistory>30</maxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>${errorLoggerPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError" />
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily roll over -->
- <fileNamePattern>${logDirectory}/${debugLogName}.log.%d{yyyy-MM-dd}.zip
- </fileNamePattern>
- <maxHistory>30</maxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>${defaultLoggerPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
-
-
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger name="com.att.eelf" level="info" additivity="false">
- <appender-ref ref="asyncEELF" />
- </logger>
-
- <!-- <logger name="com.att.eelf.security" level="info" additivity="false">
- <appender-ref ref="asyncEELFSecurity" /> </logger> <logger name="com.att.eelf.perf"
- level="info" additivity="false"> <appender-ref ref="asyncEELFPerformance"
- /> </logger> <logger name="com.att.eelf.server" level="info" additivity="false">
- <appender-ref ref="asyncEELFServer" /> </logger> <logger name="com.att.eelf.policy"
- level="info" additivity="false"> <appender-ref ref="asyncEELFPolicy" /> </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>
-
- <logger name="com.att.eelf.error" level="info" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
-
- <logger name="com.att.eelf.debug" level="debug" additivity="false">
- <appender-ref ref="asyncEELFDebug" />
- </logger>
-
- <root level="INFO">
- <appender-ref ref="asyncEELF" />
- </root>
-
-</configuration>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START==========================================
- ONAP Portal SDK
- ===================================================================
- Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- ===================================================================
-
- Unless otherwise specified, all software contained herein is licensed
- under the Apache License, Version 2.0 (the “License”);
- you may not use this software 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.
-
- Unless otherwise specified, all documentation contained herein is licensed
- under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
- you may not use this documentation except in compliance with the License.
- You may obtain a copy of the License at
-
- https://creativecommons.org/licenses/by/4.0/
-
- Unless required by applicable law or agreed to in writing, documentation
- 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============================================
-
- ECOMP is a trademark and service mark of AT&T Intellectual Property.
- -->
-
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!--
- Logback files for the ONAP Portal SDK Application
- are created in directory ${catalina.base}/logs/${componentName}
- e.g., apache-tomcat-8.0.35/logs/epsdk_app/application.log
- -->
- <!--<jmxConfigurator /> -->
-
- <!-- specify the component name -->
- <property name="componentName" value="epsdk_app"></property>
-
- <!-- specify the base path of the log directory -->
- <property name="logDirPrefix" value="${catalina.base}/logs"></property>
-
- <!-- The directories where logs are written -->
- <property name="logDirectory" value="${logDirPrefix}/${componentName}" />
- <!-- Can easily relocate debug logs by modifying this path. -->
- <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />
-
- <!-- log file names -->
- <property name="generalLogName" value="application" />
- <property name="errorLogName" value="error" />
- <property name="metricsLogName" value="metrics" />
- <property name="auditLogName" value="audit" />
- <property name="debugLogName" value="debug" />
- <!--
- These loggers are not used in code (yet).
- <property name="securityLogName" value="security" />
- <property name="policyLogName" value="policy" />
- <property name="performanceLogName" value="performance" />
- <property name="serverLogName" value="server" />
- -->
-
- <!-- 1610 Logging Fields Format Revisions -->
- <property name="auditLoggerPattern"
- value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-
- <property name="metricsLoggerPattern"
- value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-
- <property name="errorLoggerPattern"
- value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
-
- <property name="defaultLoggerPattern"
- value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />
-
- <!-- use %class so library logging calls yield their class name -->
- <property name="applicationLoggerPattern"
- value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />
-
- <!-- Example evaluator filter applied against console appender -->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${defaultLoggerPattern}</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">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-
- <!-- keep 30 days' worth of history capped at 3GB total size -->
- <maxHistory>30</maxHistory>
- <totalSizeCap>3GB</totalSizeCap>
-
- </rollingPolicy>
- <encoder>
- <pattern>${applicationLoggerPattern}</pattern>
- </encoder>
- <filter class="org.onap.portalapp.util.CustomLoggingFilter" />
- </appender>
-
- <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <!-- Class name is part of caller data -->
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="EELF" />
- </appender>
-
- <!-- EELF Security Appender. This appender is used to record security events
- to the security log file. Security events are separate from other loggers
- in EELF so that security log records can be captured and managed in a secure
- way separate from the other logs. This appender is set to never discard any
- events. -->
- <!--
- <appender name="EELFSecurity"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${securityLogName}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${defaultPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="EELFSecurity" />
- </appender>
- -->
-
- <!-- EELF Performance Appender. This appender is used to record performance
- records. -->
- <!--
- <appender name="EELFPerformance"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${performanceLogName}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <outputPatternAsHeader>true</outputPatternAsHeader>
- <pattern>${defaultPattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFPerformance" />
- </appender>
- -->
-
- <!-- EELF Server Appender. This appender is used to record Server related
- logging events. The Server logger and appender are specializations of the
- EELF application root logger and appender. This can be used to segregate Server
- events from other components, or it can be eliminated to record these events
- as part of the application root log. -->
- <!--
- <appender name="EELFServer"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${serverLogName}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${defaultPattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFServer" />
- </appender>
- -->
-
- <!-- EELF Policy Appender. This appender is used to record Policy engine
- related logging events. The Policy 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="EELFPolicy"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${policyLogName}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${defaultPattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFPolicy" />
- </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">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-
- <!-- keep 30 days' worth of history capped at 3GB total size -->
- <maxHistory>30</maxHistory>
- <totalSizeCap>3GB</totalSizeCap>
-
- </rollingPolicy>
- <encoder>
- <pattern>${auditLoggerPattern}</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">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-
- <!-- keep 30 days' worth of history capped at 3GB total size -->
- <maxHistory>30</maxHistory>
- <totalSizeCap>3GB</totalSizeCap>
-
- </rollingPolicy>
- <encoder>
- <pattern>${metricsLoggerPattern}</pattern>
- </encoder>
- </appender>
-
-
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFMetrics"/>
- </appender>
-
- <appender name="EELFError"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-
- <!-- keep 30 days' worth of history capped at 3GB total size -->
- <maxHistory>30</maxHistory>
- <totalSizeCap>3GB</totalSizeCap>
-
- </rollingPolicy>
- <encoder>
- <pattern>${errorLoggerPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFError"/>
- </appender>
-
- <appender name="EELFDebug"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${debugLogDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-
- <!-- keep 30 days' worth of history capped at 3GB total size -->
- <maxHistory>30</maxHistory>
- <totalSizeCap>3GB</totalSizeCap>
-
- </rollingPolicy>
- <encoder>
- <pattern>${defaultLoggerPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>256</queueSize>
- <appender-ref ref="EELFDebug" />
- </appender>
-
-
-
-
- <logger name="org.onap.eelf" level="info" additivity="false">
- <appender-ref ref="asyncEELF" />
- </logger>
-
- <logger name="org.onap.eelf.audit" level="info" additivity="false">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
-
- <logger name="org.onap.eelf.debug" level="debug" additivity="false">
- <appender-ref ref="asyncEELFDebug" />
- </logger>
-
- <logger name="org.onap.eelf.error" level="info" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
-
- <logger name="org.onap.eelf.metrics" level="info" additivity="false">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
-
- <root level="DEBUG">
- <appender-ref ref="asyncEELF" />
- </root>
-
-</configuration>
+++ /dev/null
-USE portal;
-/*
-Any updates required by OOM to the portaldb are made here.
-1. split up SDC-FE and SDC-BE. Originally both FE and BE point to the same IP
-while the OOM K8s version has these service split up.
-*/
-UPDATE fn_app SET app_rest_endpoint = 'http://sdc.api.be.simpledemo.onap.org:8080/api/v2' where app_name = 'SDC';
-UPDATE fn_app SET app_url = 'http://cli.api.simpledemo.onap.org:8080', app_type = 1 where app_name='CLI';
+++ /dev/null
-# domain settings
-#domain_class_location =
-
-# validator settings
-#default_error_message = Default error message
-
-login_url_no_ret_val = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
-
-user_attribute_name = user
-
-# User Session settings
-roles_attribute_name = roles
-role_functions_attribute_name = role_functions
-
-# menu settings
-menu_query_name = menuData
-application_menu_set_name = APP
-application_menu_attribute_name = applicationMenuData
-business_direct_menu_set_name = BD
-business_direct_menu_attribute_name = businessDirectMenuData
-
-# ECOMP settings
-ecomp_app_id = 1
-# Role settings
-sys_admin_role_id = 1
-account_admin_role_id = 999
-restricted_app_role_id = 900
-
-# Home Page index html
-home_page = /index.html
-
-authentication_mechanism =DBAUTH
-
-login.error.hrid.empty = Login failed, please contact system administrator.
-login.error.hrid.not-found = User not found, please contact system administrator.
-login.error.user.inactive = Account is disabled, please contact system administrator.
-
-#
-# Number of seconds to poll health (database operational, etc.)
-#
-health_poll_interval_seconds = 5
-#
-# If a component is down a log entry will be written that triggers an alert. This parameter specifies how often this alert should be triggered
-# if the component remains down. For example a value of 30, would translate to 30 * 60 seconds = 1800 seconds, or every 30 minutes
-#
-health_fail_alert_every_x_intervals = 30
+++ /dev/null
-authentication_server_url = http://portal.api.simpledemo.onap.org:8383/openid-connect-server-webapp/
-ecomp_openid_connect_client = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/openid_connect_login
-ecomp_redirect_uri = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/welcome.htm
+++ /dev/null
-# Not used by portal
-portal.api.impl.class = org.onap.portalsdk.core.onboarding.client.OnBoardingApiServiceImpl.not.used.by.portal
-portal.api.prefix = /api
-max.idle.time = 5
-user.attribute.name = user_attribute
-
-# for single sign on
-ecomp_redirect_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
-
-# URL of the ECOMP Portal REST API
-ecomp_rest_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi
-
-ueb_listeners_enable = true
-
-ueb_app_key = 7GkVcrO6sIDb3ngW
-ueb_app_secret = uCYgKjWKK5IxPGNNZzYSSWo9
-ueb_app_mailbox_name = ECOMP-PORTAL-INBOX
-
-ueb_url_list = dmaap.{{.Values.nsPrefix}}
-ecomp_portal_inbox_name = ECOMP-PORTAL-INBOX
-
-# Consumer group name for UEB topic.
-# Use the special tag to generate a unique one for each sdk-app server.
-ueb_app_consumer_group_name = {UUID}
+++ /dev/null
-#mysql
-db.driver = org.mariadb.jdbc.Driver
-db.connectionURL = jdbc:mariadb:failover://portaldb.{{.Values.nsPrefix}}:3306/portal
-db.userName =root
-db.password =Aa123456
-db.hib.dialect = org.hibernate.dialect.MySQLDialect
-db.min_pool_size = 5
-db.max_pool_size = 10
-hb.dialect = org.hibernate.dialect.MySQLDialect
-hb.show_sql = false
-hb.db_reconnect = true
-hb.idle_connection_test_period = 3600
-
-app_display_name = Portal
-files_path = /tmp
-context_root = ECOMPPORTAL
-# menu settings
-menu_query_name = menuData
-menu_properties_file_location = /WEB-INF/fusion/menu/
-application_menu_set_name = APP
-application_menu_attribute_name = applicationMenuData
-application_menu_properties_name = menu.properties
-business_direct_menu_set_name = BD
-business_direct_menu_properties_name = bd.menu.properties
-business_direct_menu_attribute_name = businessDirectMenuData
-
-application_user_id = 30000
-post_default_role_id = 1
-
-#Enable Fusion Mobile capabilities for the application
-mobile_enable = false
-
-cache_config_file_path = /WEB-INF/conf/cache.ccf
-cache_switch = 1
-cache_load_on_startup = false
-
-user_name = fullName
-decryption_key = AGLDdG4D04BKm2IxIWEr8o==
-
-
-#Cron Schedules
-cron_site_name = one
-log_cron = 0 * * * * ? *
-sessiontimeout_feed_cron = 0 0/5 * * * ? *
-
-#Front end URL
-frontend_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/applicationsHome
-
-#cookie domain
-cookie_domain = onap.org
-
-# An Unqiue 128-bit value defined to indentify a specific version of
-# ECOMP Portal deployed on a specific virtual machine.
-# This value must be generated and updated at the time of
-# the deployment.
-# Online Unique UUID generator - https://www.uuidgenerator.net/
-instance_uuid = 90bc9497-10e6-49fe-916b-dcdfaa972383
-
-elastic_search_url = http://
-contact_us_link = http://
-user_guide_link = http://
-
-# Contact Us page properties
-ush_ticket_url = http://
-feedback_email_address = portal@lists.onap.org
-portal_info_url = https://
-
-#Online user bar refresh interval, in seconds
-online_user_update_rate = 30
-
-#Online user bar refresh total duration, in seconds
-online_user_update_duration = 300
-
-#authenticate user server
-authenticate_user_server=http://portal.api.simpledemo.onap.org:8383/openid-connect-server-webapp/allUsers
-
-#window width threshold to collapse left/right menu when page onload
-window_width_threshold_left_menu = 1400
-window_width_threshold_right_menu = 1350
-
-# User notification refresh interval and duration, in seconds
-notification_update_rate = 90
-notification_update_duration = 900
-
-#Microservices Related Properties for Portal
-microservices.widget.protocol = http
-microservices.widget.hostname = portalwidgets.{{.Values.nsPrefix}}
-microservices.widget.username = widget_user
-microservices.widget.password = KpuqIB08YHg+btG+pjX+sA==
-#This property won't be needed after consul is functional on VMs -
-microservices.widget.local.port = 8082
-microservices.m-learn.local.port = 8083
-#HALO API enable flag
-external_access_enable = false
-
-#delete auditlog from number of days ago
-auditlog_del_day_from = 365
-
-#External system notification URL
-external_system_notification_url= https://jira.onap.org/browse/
+++ /dev/null
-# login settings
-login_method_backdoor = backdoor
-login_method_attribute_name = login_method
-
-# These properties will be removed after SingleSignOnController is cleaned
-authentication_mechanism = BOTH
-login_method_csp = csp
-login_method_web_junction = web_junction
-
-#login message
-login.error.hrid.empty = Login failed, please contact system administrator.
-login.error.hrid.not-found = User not found, please contact system administrator.
-login.error.user.inactive = Account is disabled, please contact system administrator.
-
-# User Session settings
-user_attribute_name = user
-roles_attribute_name = roles
-role_function_list = role_function_list
-role_functions_attribute_name = role_functions
-
-# Import-user LDAP settings
-post_initial_context_factory = com.sun.jndi.ldap.LdapCtxFactory
-post_provider_url = ldap://ldap.mycompany.com:389
-post_security_principal = ou=people,o=mycompany,c=us
-post_max_result_size = 499
-
-# menu settings
-menu_query_name = menuData
-application_menu_set_name = APP
-application_menu_attribute_name = applicationMenuData
-business_direct_menu_set_name = BD
-business_direct_menu_attribute_name = businessDirectMenuData
-
-# Role settings
-sys_admin_role_id = 1
+++ /dev/null
-# Properties read by ECOMP Framework library, ecompFW.jar
-
-##########################################################################
-# The following properties should NOT be changed by partner applications.
-##########################################################################
-
-portal.api.prefix = /api
-max.idle.time = 5
-user.attribute.name = user_attribute
-
-#Use REST API instead of UEB to fetch the functional menu data
-use_rest_for_functional_menu=true
-
-##########################################################################
-# The following properties MUST be changed by partner applications.
-##########################################################################
-
-# Name of java class that implements the OnBoardingApiService interface.
-# epsdk 1.3 uses org.onap prefix
-portal.api.impl.class = org.onap.portalapp.service.OnBoardingApiServiceImpl
-
-# CSP Global Log On for single sign on
-ecomp_redirect_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
-
-# URL of the ECOMP Portal REST API
-
-ecomp_rest_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi
-
-# Applications do not need to run a UEB listener in 1610.
-ueb_listeners_enable = false
-
-# UEB Configuration
-ueb_url_list = dmaap.{{.Values.nsPrefix}}
-# ECOMP Portal listens on this UEB topic
-ecomp_portal_inbox_name = ECOMP-PORTAL-INBOX
-# Replace these 3 default values with the ones for your specific App,
-# as shown on the on-boarding page on the ECOMP Portal web application.
-ueb_app_key = jQd4a9zVNi4ePyBp
-ueb_app_secret = P0HpqEBhKJvxjRYdw2sCTUll
-ueb_app_mailbox_name = ECOMP-PORTAL-OUTBOX-APP1
-# Consumer group name for UEB topic.
-# Use the special tag '{UUID}' to generate a unique one for each sdk-app server.
-ueb_app_consumer_group_name = {UUID}
-
-decryption_key = AGLDdG4D04BKm2IxIWEr8o==
+++ /dev/null
-# Properties read by ECOMP Core library, ecompSDK-core.jar
-
-##########################################################################
-# The following properties should NOT be changed by partner applications.
-##########################################################################
-
-application_user_id = 30000
-post_default_role_id = 16
-clustered = true
-
-#Enable Fusion Mobile capabilities for the application
-mobile_enable = false
-
-# Cache config file is needed on the classpath
-cache_config_file_path = /WEB-INF/classes/cache.ccf
-cache_switch = 199
-cache_load_on_startup = false
-
-user_name = fullName
-decryption_key = AGLDdG4D04BKm2IxIWEr8o==
-
-##########################################################################
-# The following properties MAY require changes by partner applications.
-##########################################################################
-
-db.driver = org.mariadb.jdbc.Driver
-db.connectionURL = jdbc:mariadb://portaldb.{{.Values.nsPrefix}}:3306/ecomp_sdk
-db.userName = root
-db.password = Aa123456
-db.min_pool_size = 5
-db.max_pool_size = 10
-hb.dialect = org.hibernate.dialect.MySQLDialect
-# SQL statements are logged to stdout
-hb.show_sql = true
-hb.idle_connection_test_period = 3600
-
-app_display_name = Demo App
-files_path = /tmp
-
-#element map files
-element_map_file_path = /tmp
-element_map_icon_path = app/fusionapp/icons/
-
-#Cron Schedules
-log_cron = 0 0/1 * * * ?;
-mylogins_feed_cron = 0 0/60 * * * ?;
-#sessiontimeout_feed_cron = 0 * * * * ? *
-my_login_feed_output_dir = /tmp/MyLogins
-
-# Link shown in Help menu
-contact_us_link = https://todo_contact_us_link.com
-
-# An Unique 128-bit value defined to identify a specific version
-# of an application deployed on a specific virtual machine.
-# This value must be generated and updated by the application
-# which is using the ECOMP SDK at the time of its deployment.
-# Online Unique UUID generator - https://www.uuidgenerator.net/
-instance_uuid=8da691c9-987d-43ed-a358-00ac2f35685d
-
-# R Cloud feature - configure this property to enable notebook feature - for more details on RCloud please visit https://rcloud.social/index.html
-guard_notebook_url=
-
-#authenticate user server
-authenticate_user_server=http://portalapps.{{.Values.nsPrefix}}:8383/openid-connect-server-webapp/allUsers
+++ /dev/null
-## General App Properties
-server.contextPath=/widget
-server.port=8082
-spring.http.multipart.max-file-size=128MB
-spring.http.multipart.max-request-size=128MB
-microservice.widget.location=/tmp
-
-## App DB Properties
-spring.datasource.url=jdbc:mysql://portaldb.{{.Values.nsPrefix}}:3306/portal
-spring.datasource.username=root
-spring.datasource.password=Aa123456
-spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
-spring.database.driver.classname=org.mariadb.jdbc.Driver
-spring.jpa.show-sql=false
-spring.jpa.properties.hibernate.format_sql=false
-
-## Basic Authentication Properties
-security.user.name=widget_user
-security.user.password=ENC(IjywcRnI9+nuVEh9+OFFiRWAjBT1n718)
-
-initialization.default.widgets=true
-initialization.widgetData.url=http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/commonWidgets
-
-## Account Basic Authentication Properties
-account.user.name=portal
-account.user.password=6APqvG4AU2rfLgCvMdySwQ==
-
-## Certificate Properties
-#server.ssl.key-store=classpath:widget-keystore.p12
-#server.ssl.key-store-password=ENC(DiIYnAMab4u7rEW2yKhF9zBL00uU55q8)
-#server.ssl.keyStoreType=PKCS12
-#server.ssl.keyAlias=widget-microservice
-
-## Jasypt Properties
-jasypt.encryptor.password=EncryptionKey
+++ /dev/null
-#!/bin/sh
-
-_SRC_HOST=$1
-_DST_HOST=$2
-_IP=`getent hosts ${_SRC_HOST}|cut -d' ' -f1`
-if [ -z ${_IP} ]; then
- echo "Cannot retreive IP for host mapping ${_SRC_HOST} -> ${_DST_HOST}"
- exit 1
-fi
-_REGEX=".*[[:blank:]]${_DST_HOST}$"
-if grep -c -e "${_REGEX}" /etc/hosts > /dev/null 2>&1 ; then
- cp /etc/hosts /tmp/hosts
- sed -i "s/${_REGEX}/${_IP} ${_DST_HOST}/g" /tmp/hosts
- cp /tmp/hosts /etc/hosts
-else
- echo "${_IP} ${_DST_HOST}" >> /etc/hosts
-fi
+++ /dev/null
-[General]
-StartWithLastProfile=1
-
-[Profile0]
-Name=default
-IsRelative=1
-Path=onap.default
-Default=1
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalPortaldb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: portaldb
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: portaldb
-spec:
- ports:
- - name: portaldb
- port: 3306
- selector:
- app: portaldb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disablePortalPortalapps }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: portalapps
- name: portalapps
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "portal",
- "version": "v2",
- "url": "/",
- "protocol": "REST"
- "port": "8989",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: portal-1
- nodePort: {{ .Values.nodePortPrefix }}13
- port: 8006
- targetPort: 8005
- - name: portal-2
- nodePort: {{ .Values.nodePortPrefix }}14
- port: 8010
- targetPort: 8009
- - name: portal-3
- nodePort: {{ .Values.nodePortPrefix }}15
- port: 8989
- targetPort: 8080
- selector:
- app: portalapps
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePortalVncPortal }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: portal-vnc
- name: portal-vnc
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: tcp-1
- port: 6080
- targetPort: 80
- nodePort: {{ .Values.nodePortPrefix }}11
- - name: tcp-2
- port: 5900
- targetPort: 5900
- nodePort: {{ .Values.nodePortPrefix }}12
- selector:
- app: portal-vnc
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePortalPortalwidgets }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: portalwidgets
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: portalwidgets
-spec:
- ports:
- - name: portalwidgets
- port: 8082
- selector:
- app: portalwidgets
- clusterIP: None
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: portal-filebeat
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
+
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalPortalapps }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onap-portal-sdk-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onap-portal-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal-fe/webapps/etc/ONAPPORTAL/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-mariadb-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/oom_updates.sql").AsConfig . | indent 2 }}
-#{{ end }}
----
-#{{ if not .Values.disablePortalPortalwidgets }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onapwidgetms-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal-fe/webapps/etc/ONAPWIDGETMS/application.properties").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalPortalapps }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: portal-apps
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalAppsReplicas }}
- selector:
- matchLabels:
- app: portalapps
- template:
- metadata:
- labels:
- app: portalapps
- name: portal-apps
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - portaldb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portalapps-readiness
- - command: ["/bin/bash", "-c", "if [ ! -e /portal_root/boot.txt ]; then mysql -u root -pAa123456 -h portaldb < /portal-mysql/oom_updates.sql; fi"]
- volumeMounts:
- - mountPath: /portal-mysql/oom_updates.sql
- name: portal-mariadb-onboarding-sql
- subPath: oom_updates.sql
- - mountPath: /portal_root/
- name: portal-root
- image: {{ .Values.image.mariadbClient }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: provision-portaldb-users
- - command: ["/bin/bash", "-c", "mkdir -p /ubuntu-init/ && chmod -R 777 /ubuntu-init/"]
- volumeMounts:
- - name: portal-logs
- mountPath: /ubuntu-init/
- image: {{ .Values.image.ubuntuInit }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portal-app-logs-init
- containers:
- - image: {{ .Values.image.portalapps }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "echo yes > /portal_root/boot.txt"]
- name: portalapps
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/fusion/conf/fusion.properties"
- name: onap-portal-properties
- subPath: fusion.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/openid-connect.properties"
- name: onap-portal-properties
- subPath: openid-connect.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/conf/system.properties"
- name: onap-portal-properties
- subPath: system.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/portal.properties"
- name: onap-portal-properties
- subPath: portal.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/logback.xml"
- name: portal-logback
- subPath: logback.xml
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/conf/system.properties"
- name: portal-sdkapp-properties
- subPath: system.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/classes/portal.properties"
- name: portal-sdkapp-properties
- subPath: portal.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/fusion/conf/fusion.properties"
- name: portal-sdkapp-properties
- subPath: fusion.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/classes/logback.xml"
- name: sdkapp-logback
- subPath: logback.xml
- - mountPath: /portal_root/
- name: portal-root
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/logs"
- name: portal-logs
- - mountPath: /var/log/onap
- name: portal-logs2
- ports:
- - containerPort: 8005
- - containerPort: 8009
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: portal-logs2
- - mountPath: /usr/share/filebeat/data
- name: portal-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: portal-filebeat-configmap
- - name: portal-logs2
- emptyDir: {}
- - name: portal-data-filebeat
- emptyDir: {}
- - name: onap-portal-properties
- configMap:
- defaultMode: 0755
- name: portal-onap-portal-configmap
- - name: portal-sdkapp-properties
- configMap:
- defaultMode: 0755
- name: portal-onap-portal-sdk-configmap
- - name: portal-logback
- configMap:
- name: portal-onapportal-log-configmap
- - name: sdkapp-logback
- configMap:
- name: portal-onapportalsdk-log-configmap
- - name: portal-mariadb-onboarding-sql
- configMap:
- name: portal-mariadb-configmap
- - name: portal-root
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/portal
- - name: portal-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/portal/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalPortalapps }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onapportal-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/portal/onapportal/logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onapportalsdk-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/portal/onapportalsdk/logback.xml").AsConfig . | indent 2 }}
-#{{ end }}
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalPortaldb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: portal-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalDbReplicas }}
- selector:
- matchLabels:
- app: portaldb
- template:
- metadata:
- labels:
- app: portaldb
- name: portal-db
- spec:
- containers:
- - image: {{ .Values.image.portaldb}}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "portaldb"
- env:
- - name: MYSQL_HOST
- value: "portaldb.{{ .Values.nsPrefix }}"
- - name: MYSQL_ROOT_PASSWORD
- value: Aa123456
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/lib/mysql
- name: portal-mariadb-data
- ports:
- - containerPort: 3306
- name: portaldb
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: portal-mariadb-data
- persistentVolumeClaim:
- claimName: portal-db
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-*/}}
-
-#{{ if not .Values.disablePortalPortaldb }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-portal"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-portal"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/portal/mariadb/data
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: portal-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-portal"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalVncPortal }}
-kind: ConfigMap
-metadata:
- name: portal-vnc-profiles-ini
- namespace: "{{ .Values.nsPrefix }}"
-data:
-{{ (.Files.Glob "resources/vnc/init_profile/profiles.ini").AsConfig | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-vnc-update-hosts
- namespace: "{{ .Values.nsPrefix }}"
-data:
-{{ (.Files.Glob "resources/scripts/update_hosts.sh").AsConfig | indent 2 }}
----
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: portal-vnc
- name: portal-vnc
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vncPortalReplicas }}
- selector:
- matchLabels:
- app: portal-vnc
- template:
- metadata:
- labels:
- app: portal-vnc
- name: portal-vnc
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - portalapps
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portal-vnc-readiness
-{{- if empty .Values.disablePolicyPap | not }}
- - command:
- - /root/ready.py
- args:
- - --container-name
- - pap
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnc-pap-readiness
-{{- end }}
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-fe
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnc-sdc-readiness
- - command:
- - /root/ready.py
- args:
- - --container-name
- - vid-server
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnc-vid-readiness
- containers:
- - image: {{ .Values.image.ubuntuDesktop }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "mkdir -p /root/.mozilla/firefox/onap.default; cp /root/.init_profile/profiles.ini /root/.mozilla/firefox/; echo 'user_pref(\"browser.tabs.remote.autostart.2\", false);' > /root/.mozilla/firefox/onap.default/prefs.js; (while true; do /tmp/update_hosts.sh sdc-be.{{ .Values.nsPrefix }} sdc.api.be.simpledemo.onap.org; /tmp/update_hosts.sh portalapps.{{ .Values.nsPrefix }} portal.api.simpledemo.onap.org; /tmp/update_hosts.sh pap.{{ .Values.nsPrefix }} policy.api.simpledemo.onap.org; /tmp/update_hosts.sh sdc-fe.{{ .Values.nsPrefix }} sdc.api.simpledemo.onap.org; /tmp/update_hosts.sh vid-server.{{ .Values.nsPrefix }} vid.api.simpledemo.onap.org; /tmp/update_hosts.sh sparky-be.{{ .Values.nsPrefix }} aai.api.simpledemo.onap.org; /tmp/update_hosts.sh cli.{{ .Values.nsPrefix }} cli.api.simpledemo.onap.org; sleep 10; done) > update_hosts.log 2>&1 &"]
- env:
- - name: VNC_PASSWORD
- value: password
- name: portal-vnc
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /root/.init_profile/profiles.ini
- name: vnc-profiles-ini
- subPath: profiles.ini
- - mountPath: /tmp/update_hosts.sh
- name: vnc-update-hosts
- subPath: update_hosts.sh
- securityContext:
- privileged: true
- securityContext: {}
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: vnc-profiles-ini
- configMap:
- name: portal-vnc-profiles-ini
- - name: vnc-update-hosts
- configMap:
- name: portal-vnc-update-hosts
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disablePortalPortalwidgets }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: portal-widgets
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalWidgetsReplicas }}
- selector:
- matchLabels:
- app: portalwidgets
- template:
- metadata:
- labels:
- app: portalwidgets
- name: portal-widgets
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - portaldb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portalapps-readiness
- containers:
- - image: {{ .Values.image.portalwms }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portalwidgets
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /application.properties
- name: portalwidgets-application-properties
- subPath: application.properties
- ports:
- - containerPort: 8082
- readinessProbe:
- tcpSocket:
- port: 8082
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: portalwidgets-application-properties
- configMap:
- name: portal-onapwidgetms-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-portalAppsReplicas: 1
-portalDbReplicas: 1
-vncPortalReplicas: 1
-portalWidgetsReplicas: 1
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- portalapps: nexus3.onap.org:10001/onap/portal-apps:v1.3.0
- portaldb: nexus3.onap.org:10001/onap/portal-db:v1.3.0
- mariadbClient: oomk8s/mariadb-client-init:1.0.0
- portalwms: nexus3.onap.org:10001/onap/portal-wms:v1.3.0
- ubuntuDesktop: dorowu/ubuntu-desktop-lxde-vnc
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
- ubuntuInit: oomk8s/ubuntu-init:1.0.0
-onapPortal:
- webappsDir: "/opt/apache-tomcat-8.0.37/webapps"
+global:
+ env:
+ tomcatDir: "/opt/apache-tomcat-8.0.37"
+ # portal frontend port
+ portalPort: "8989"
+ # application's front end hostname. Must be resolvable on the client side environment
+ portalHostName: "portal.api.simpledemo.onap.org"
+
config:
logstashServiceName: log-ls
logstashPort: 5044
+
+portal-mariadb:
+ nameOverride: portal-db
+
+mariadb:
+ service:
+ name: portal-db
+widget:
+ service:
+ name: portal-widget
+cassandra:
+ service:
+ name: portal-cassandra
+ config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+zookeeper:
+ service:
+ name: portal-zookeeper
+
+messageRouter:
+ service:
+ name: message-router
\ No newline at end of file
- hbase
command:
- /root/ready.py
- image: oomk8s/readiness-check:1.1.0
+ image: oomk8s/readiness-check:2.0.0
imagePullPolicy: Always
name: healthy
env:
echo " demo.sh <namespace> appc <module_name>"
echo " - provide APPC with vFW module mount point for closed loop"
echo " "
- echo " demo.sh <namespace> init_robot"
+ echo " demo.sh <namespace> init_robot [ <etc_hosts_prefix> ]"
echo " - Initialize robot after all ONAP VMs have started"
echo " "
echo " demo.sh <namespace> instantiateVFW"
}
# Set the defaults
-if [ $# -le 1 ];then
+
+echo "Number of parameters:"
+echo $#
+
+if [ $# -lt 2 ];then
usage
exit
fi
while [ $# -gt 0 ]
do
key="$1"
+ echo "KEY:"
+ echo $key
case $key in
init_robot)
fi
VARIABLES="$VARIABLES -v WEB_PASSWORD:$WEB_PASSWORD"
shift
+ if [ $# -eq 2 ];then
+ VARIABLES="$VARIABLES -v HOSTS_PREFIX:$1"
+ fi
+ shift
;;
init)
TAG="InitDemo"
TAG="PreloadDemo"
shift
if [ $# -ne 2 ];then
- echo "Usage: demo.sh preload <vnf_name> <module_name>"
+ echo "Usage: demo.sh <namespace> preload <vnf_name> <module_name>"
exit
fi
VARIABLES="$VARIABLES -v VNF_NAME:$1"
shift
;;
appc)
- TAG="APPCMountPointDemo"
- shift
- if [ $# -ne 1 ];then
- echo "Usage: demo.sh appc <module_name>"
- exit
- fi
- VARIABLES="$VARIABLES -v MODULE_NAME:$1"
- shift
- ;;
+ TAG="APPCMountPointDemo"
+ shift
+ if [ $# -ne 1 ];then
+ echo "Usage: demo.sh <namespace> appc <module_name>"
+ exit
+ fi
+ VARIABLES="$VARIABLES -v MODULE_NAME:$1"
+ shift
+ ;;
instantiateVFW)
TAG="instantiateVFW"
VARIABLES="$VARIABLES -v GLOBAL_BUILD_NUMBER:$$"
TAG="deleteVNF"
shift
if [ $# -ne 1 ];then
- echo "Usage: demo.sh deleteVNF <module_name from instantiateVFW>"
+ echo "Usage: demo.sh <namespace> deleteVNF <module_name from instantiateVFW>"
exit
fi
VARFILE=$1.py
echo "Cache file ${VARFILE} is not found"
exit
fi
- shift
+ shift
;;
heatbridge)
TAG="heatbridge"
shift
if [ $# -ne 3 ];then
- echo "Usage: demo.sh heatbridge <stack_name> <service_instance_id> <service>"
+ echo "Usage: demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service>"
exit
fi
VARIABLES="$VARIABLES -v HB_STACK:$1"
# Note: Do not run multiple concurrent ete.sh as the --display is not parameterized and tests will collide
#
if [ "$1" == "" ] || [ "$2" == "" ]; then
- echo "Usage: ete.sh [namespace] [ health | ete | closedloop | instantiate | distribute ]"
+ echo "Usage: ete-k8s.sh [namespace] [ health | ete | closedloop | instantiate | distribute ]"
exit
fi
+
export NAMESPACE="$1"
+
+POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
+
+
export TAGS="-i $2"
export ETEHOME=/var/opt/OpenECOMP_ETE
-export OUTPUT_FOLDER=ETE_$$
+export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec ${POD} -- bash -c "ls -1q /share/logs/ | wc -l")
+export OUTPUT_FOLDER=ETE_$(printf %04d $GLOBAL_BUILD_NUMBER)_$2
+
+#export OUTPUT_FOLDER=ETE_$$
VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
VARIABLES="-v GLOBAL_BUILD_NUMBER:$$"
-POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} ${TAGS} --display 88
+
-robot:robot
+{{ .Values.config.lightHttpdUsername }}:{{ .Values.config.lightHttpdPassword }}
GLOBAL_PRELOAD_PARAMETERS = {
-# heat template parameter values common to all heat template continaing these parameters
+ # heat template parameter values common to all heat template continaing these parameters
"defaults" : {
- 'key_name' : 'vfw_key${uuid}',
- "pub_key" : "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqqnA9BAiMLtjOPSYBfhzLu4CiBolWoskDg4KVwhTJVTTeB6CqrQNcadlGXxOHhCYuNCKkUmIVF4WTOisVOJ75Z1c4OMoZLL85xVPKSIeH63kgVugwgPYQu55NbbWX+rsbUha3LnElDhNviMM3iTPbD5nnhKixNERAJMTLKXvZZZGqxW94bREknYPQTT2qrk3YRqwldncopp6Nkgv3AnSJz2gc9tjxnWF0poTQnQm/3D6hiJICrzKfAV0EaPN0KdtYjPhKrYoy6Qb/tKOVaaqsvwfKBJGrT9LfcA7D7M/yj292RT1XN63hI84WC383LsaPJ6eWdDTE6zUP1eGTWCoOw== rsa-key-20161026",
- "repo_url_blob" : "https://nexus.onap.org/content/repositories/raw",
- "repo_url_artifacts" : "https://nexus.onap.org/content/groups/staging",
- "demo_artifacts_version" : "{{ .Values.demoArtifactsVersion }}",
- "onap_private_net_id" : "{{ .Values.openStackPrivateNetId }}",
- "onap_private_subnet_id" : "{{ .Values.openStackPrivateSubnetId }}",
- "onap_private_net_cidr" : "{{ .Values.openStackPrivateNetCidr }}",
- "dcae_collector_ip" : "10.0.4.102",
- "dcae_collector_port" : "8080",
- "public_net_id" : "{{ .Values.openStackPublicNetId }}",
- "cloud_env" : "${cloud_env}",
- "install_script_version" : "${install_script_version}",
-###
-# vims_preload same for every instantiation
-###
- "bono_image_name" : "${vm_image_name}",
- "sprout_image_name" : "${vm_image_name}",
- "homer_image_name" : "${vm_image_name}",
- "homestead_image_name" : "${vm_image_name}",
- "ralf_image_name" : "${vm_image_name}",
- "ellis_image_name" : "${vm_image_name}",
- "dns_image_name" : "${vm_image_name}",
- "bono_flavor_name" : "${vm_flavor_name}",
- "sprout_flavor_name" : "${vm_flavor_name}",
- "homer_flavor_name" : "${vm_flavor_name}",
- "homestead_flavor_name" : "${vm_flavor_name}",
- "ralf_flavor_name" : "${vm_flavor_name}",
- "ellis_flavor_name" : "${vm_flavor_name}",
- "dns_flavor_name" : "${vm_flavor_name}",
- "repo_url" : "http://repo.cw-ngv.com/stable",
- "zone" : "me.cw-ngv.com",
- "dn_range_start" : "2425550000",
- "dn_range_length" : "10000",
- "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw==",
-###
-# vlb_preload same for every instantiation
-###
- "vlb_image_name" : "${vm_image_name}",
- "vlb_flavor_name" : "${vm_flavor_name}",
-###
-# vlb_preload same for every instantiation
-###
- "vfw_image_name" : "${vm_image_name}",
- "vfw_flavor_name" : "${vm_flavor_name}",
-###
- },
+ 'key_name' : 'vfw_key${uuid}',
+ "pub_key" : "{{ .Values.vnfPubKey }}",
+ "repo_url_blob" : "https://nexus.onap.org/content/repositories/raw",
+ "repo_url_artifacts" : "https://nexus.onap.org/content/groups/staging",
+ "demo_artifacts_version" : "${GLOBAL_INJECTED_ARTIFACTS_VERSION}",
+ "onap_private_net_id" : "${GLOBAL_INJECTED_NETWORK}",
+ "onap_private_subnet_id" : "{{ .Values.openStackPrivateSubnetId }}",
+ "onap_private_net_cidr" : "{{ .Values.openStackPrivateNetCidr }}",
+ "dcae_collector_ip" : "{{ .Values.dcaeCollectorIp }}",
+ "dcae_collector_port" : "30235",
+ "public_net_id" : "${GLOBAL_INJECTED_PUBLIC_NET_ID}",
+ "cloud_env" : "${GLOBAL_INJECTED_CLOUD_ENV}",
+ "install_script_version" : "${GLOBAL_INJECTED_SCRIPT_VERSION}",
+ },
-###
-# heat template parameter values for heat template instances created during Vnf-Orchestration test cases
-###
+# ##
+ # heat template parameter values for heat template instances created during Vnf-Orchestration test cases
+ # ##
"Vnf-Orchestration" : {
"vfw_preload.template": {
"unprotected_private_net_id" : "vofwl01_unprotected${hostid}",
"protected_private_net_cidr" : "192.168.20.0/24",
"vfw_private_ip_0" : "192.168.10.100",
"vfw_private_ip_1" : "192.168.20.100",
- "vfw_private_ip_2" : "{{ .Values.openStackOamNetworkCidrPrefix }}.1",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.1",
"vpg_private_ip_0" : "192.168.10.200",
- "vpg_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.2",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.2",
"vsn_private_ip_0" : "192.168.20.250",
- "vsn_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.3",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.3",
'vfw_name_0':'vofwl01fwl${hostid}',
'vpg_name_0':'vofwl01pgn${hostid}',
+ "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
'vsn_name_0':'vofwl01snk${hostid}'
},
+ "vfwsnk_preload.template": {
+ "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_id" : "vofwlsnk_protected${hostid}",
+ "protected_private_subnet_id" : "vofwlsnk_protected_sub${hostid}",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vfw_private_ip_1" : "192.168.20.100",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.101",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vsn_private_ip_0" : "192.168.20.250",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.102",
+ 'vfw_name_0':'vofwl01fwl${hostid}',
+ 'vsn_name_0':'vofwl01snk${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
+ "vpkg_preload.template": {
+ "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103",
+ "vsn_private_ip_0" : "192.168.20.250",
+ 'vpg_name_0':'vofwl01pgn${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
"vlb_preload.template" : {
+ "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
+ "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
"vlb_private_net_id" : "volb01_private${hostid}",
+ "pktgen_private_net_id" : "volb01_pktgen${hostid}",
"vlb_private_net_cidr" : "192.168.30.0/24",
"vlb_private_ip_0" : "192.168.30.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.4",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.4",
"vdns_private_ip_0" : "192.168.30.110",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.5",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.5",
'vlb_name_0':'vovlblb${hostid}',
'vdns_name_0':'vovlbdns${hostid}',
- "vlb_private_net_cidr" : "192.168.10.0/24",
- "pktgen_private_net_cidr" : "192.168.9.0/24"
+ "pktgen_private_net_cidr" : "192.168.9.0/24",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.7",
+ "pg_int" : "192.168.9.109",
+ "vpg_private_ip_0" : "192.168.9.110",
+ "vlb_private_ip_2" : "192.168.9.111",
+ "vip" : "192.168.9.112",
+ "gre_ipaddr" : "192.168.30.112",
+ "vpg_name_0" : "vovlbpgn${hostid}",
+ "vnf_id" : "vLoadBalancer_${hostid}",
+ "vf_module_id" : "vLoadBalancer"
},
"dnsscaling_preload.template" : {
"vlb_private_net_id" : "volb01_private${hostid}",
"vlb_private_ip_0" : "192.168.30.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.4",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.4",
"vdns_private_ip_0" : "192.168.30.222",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.6",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.6",
'scaling_vdns_name_0':'vovlbscaling${hostid}',
"vlb_private_net_cidr" : "192.168.10.0/24"
},
+ "vims_preload.template" : {
+ "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "repo_url" : "http://repo.cw-ngv.com/stable",
+ "zone" : "me.cw-ngv.com",
+ "dn_range_start" : "2425550000",
+ "dn_range_length" : "10000",
+ "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
+
+ },
"vvg_preload.template" : {
}
},
"protected_private_net_cidr" : "192.168.120.0/24",
"vfw_private_ip_0" : "192.168.110.100",
"vfw_private_ip_1" : "192.168.120.100",
- "vfw_private_ip_2" : "{{ .Values.openStackOamNetworkCidrPrefix }}.11",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.11",
"vpg_private_ip_0" : "192.168.110.200",
- "vpg_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.12",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.12",
"vsn_private_ip_0" : "192.168.120.250",
- "vsn_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.13",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.13",
'vfw_name_0':'clfwl01fwl${hostid}',
'vpg_name_0':'clfwl01pgn${hostid}',
+ "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
'vsn_name_0':'clfwl01snk${hostid}'
},
+ "vfwsnk_preload.template": {
+ "unprotected_private_net_id" : "clfwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "clfwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_id" : "clfwlsnk_protected${hostid}",
+ "protected_private_subnet_id" : "clfwlsnk_protected_sub${hostid}",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vfw_private_ip_1" : "192.168.20.100",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.111",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vsn_private_ip_0" : "192.168.20.250",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.112",
+ 'vfw_name_0':'clfwl01fwl${hostid}',
+ 'vsn_name_0':'clfwl01snk${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
+ "vpkg_preload.template": {
+ "unprotected_private_net_id" : "clfwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "clfwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.113",
+ "vsn_private_ip_0" : "192.168.20.250",
+ 'vpg_name_0':'clfwl01pgn${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
"vlb_preload.template" : {
+ "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
+ "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
"vlb_private_net_id" : "cllb01_private${hostid}",
- "vlb_private_net_cidr" : "192.168.130.0/24",
- "vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
- "vdns_private_ip_0" : "192.168.130.110",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.15",
+ "pktgen_private_net_id" : "cllb01_pktgen${hostid}",
+ "vlb_private_net_cidr" : "192.168.30.0/24",
+ "vlb_private_ip_0" : "192.168.30.100",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.14",
+ "vdns_private_ip_0" : "192.168.30.110",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.15",
'vlb_name_0':'clvlblb${hostid}',
'vdns_name_0':'clvlbdns${hostid}',
- "vlb_private_net_cidr" : "192.168.10.0/24",
- "pktgen_private_net_cidr" : "192.168.9.0/24"
+ "pktgen_private_net_cidr" : "192.168.9.0/24",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.17",
+ "pg_int" : "192.168.9.109",
+ "vpg_private_ip_0" : "192.168.9.110",
+ "vlb_private_ip_2" : "192.168.9.111",
+ "vip" : "192.168.9.112",
+ "gre_ipaddr" : "192.168.30.112",
+ "vpg_name_0" : "clvlbpgn${hostid}",
+ "vnf_id" : "vLoadBalancer_${hostid}",
+ "vf_module_id" : "vLoadBalancer"
},
"dnsscaling_preload.template" : {
"vlb_private_net_id" : "cllb01_private${hostid}",
"vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.14",
"vdns_private_ip_0" : "192.168.130.222",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.16",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.16",
'scaling_vdns_name_0':'clvlbscaling${hostid}',
"vlb_private_net_cidr" : "192.168.10.0/24"
},
+ "vims_preload.template" : {
+ "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "repo_url" : "http://repo.cw-ngv.com/stable",
+ "zone" : "me.cw-ngv.com",
+ "dn_range_start" : "2425550000",
+ "dn_range_length" : "10000",
+ "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
+ },
"vvg_preload.template" : {
}
},
"protected_private_net_cidr" : "192.168.120.0/24",
"vfw_private_ip_0" : "192.168.110.100",
"vfw_private_ip_1" : "192.168.120.100",
- "vfw_private_ip_2" : "{{ .Values.openStackOamNetworkCidrPrefix }}.11",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.11",
"vpg_private_ip_0" : "192.168.110.200",
- "vpg_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.12",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.12",
"vsn_private_ip_0" : "192.168.120.250",
- "vsn_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.13",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.13",
'vfw_name_0':'demofwl01fwl',
'vpg_name_0':'demofwl01pgn',
+ "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
'vsn_name_0':'demofwl01snk'
},
+ "vfwsnk_preload.template": {
+ "unprotected_private_net_id" : "demofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "demofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_id" : "demofwlsnk_protected${hostid}",
+ "protected_private_subnet_id" : "vofwlsnk_protected_sub${hostid}",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vfw_private_ip_1" : "192.168.20.100",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.121",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vsn_private_ip_0" : "192.168.20.250",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.122",
+ 'vfw_name_0':'${generic_vnf_name}',
+ 'vsn_name_0':'demofwl01snk${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
+ "vpkg_preload.template": {
+ "unprotected_private_net_id" : "demofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "demofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.123",
+ "vsn_private_ip_0" : "192.168.20.250",
+ 'vpg_name_0':'demofwl01pgn${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}"
+ },
"vlb_preload.template" : {
- "vlb_private_net_id" : "demolb_private",
- "vlb_private_net_cidr" : "192.168.130.0/24",
- "vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
- "vdns_private_ip_0" : "192.168.130.110",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.15",
- 'vlb_name_0':'demovlblb',
- 'vdns_name_0':'demovlbdns',
- "vlb_private_net_cidr" : "192.168.10.0/24",
- "pktgen_private_net_cidr" : "192.168.9.0/24"
+ "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
+ "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "vlb_private_net_id" : "demolb_private${hostid}",
+ "pktgen_private_net_id" : "demolb_pktgen${hostid}",
+ "vlb_private_net_cidr" : "192.168.30.0/24",
+ "vlb_private_ip_0" : "192.168.30.100",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.24",
+ "vdns_private_ip_0" : "192.168.30.110",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.25",
+ 'vlb_name_0':'demovlblb${hostid}',
+ 'vdns_name_0':'demovlbdns${hostid}',
+ "pktgen_private_net_cidr" : "192.168.9.0/24",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.27",
+ "pg_int" : "192.168.9.109",
+ "vpg_private_ip_0" : "192.168.9.110",
+ "vlb_private_ip_2" : "192.168.9.111",
+ "vip" : "192.168.9.112",
+ "gre_ipaddr" : "192.168.30.112",
+ "vpg_name_0" : "clvlbpgn${hostid}",
+ "vnf_id" : "vLoadBalancer_${hostid}",
+ "vf_module_id" : "vLoadBalancer"
},
"dnsscaling_preload.template" : {
- "vlb_private_net_id" : "demolb_private",
+ "vlb_private_net_id" : "demolb_private${hostid}",
"vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.24",
"vdns_private_ip_0" : "192.168.130.222",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.16",
- 'scaling_vdns_name_0':'demovlbscaling',
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.26",
+ 'scaling_vdns_name_0':'demovlbscaling${hostid}',
"vlb_private_net_cidr" : "192.168.10.0/24"
},
+ "vims_preload.template" : {
+ "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "repo_url" : "http://repo.cw-ngv.com/stable",
+ "zone" : "me.cw-ngv.com",
+ "dn_range_start" : "2425550000",
+ "dn_range_length" : "10000",
+ "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
+ },
"vvg_preload.template" : {
}
}
-# aaf info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_AAF_SERVER = "http://10.0.12.1:8101"
-GLOBAL_AAF_USERNAME = "dgl@openecomp.org"
-GLOBAL_AAF_PASSWORD = "ecomp_admin"
-# aai info - everything is from the private oam network (also called ecomp private network)
+# aaf info - everything is from the private oam network (also called onap private network)
+GLOBAL_AAF_SERVER = "https://aaf-service.{{include "common.namespace" .}}:8100"
+GLOBAL_AAF_USERNAME = "demo@people.osaaf.org"
+GLOBAL_AAF_PASSWORD = "demo123456!"
+
+# aai info - everything is from the private oam network (also called onap private network)
GLOBAL_AAI_SERVER_PROTOCOL = "https"
GLOBAL_AAI_SERVER_PORT = "8443"
GLOBAL_AAI_USERNAME = "AAI"
GLOBAL_AAI_PASSWORD = "AAI"
-# appc info - everything is from the private oam network (also called ecomp private network)
+# appc info - everything is from the private oam network (also called onap private network)
GLOBAL_APPC_SERVER_PROTOCOL = "http"
GLOBAL_APPC_SERVER_PORT = "8282"
-GLOBAL_APPC_SERVER = "http://10.0.2.1:"
+GLOBAL_APPC_SERVER = "http://appc.{{include "common.namespace" .}}:"
GLOBAL_APPC_USERNAME = "admin"
-GLOBAL_APPC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
-# sdc info - everything is from the private oam network (also called ecomp private network)
+GLOBAL_APPC_PASSWORD = "admin"
+# sdc info - everything is from the private oam network (also called onap private network)
GLOBAL_ASDC_SERVER_PROTOCOL = "http"
GLOBAL_ASDC_FE_PORT = "8181"
GLOBAL_ASDC_BE_PORT = "8080"
+GLOBAL_ASDC_BE_ONBOARD_PORT = "8081"
GLOBAL_ASDC_BE_USERNAME = "beep"
GLOBAL_ASDC_BE_PASSWORD = "boop"
-# clamp info - everything is from the private oam network (also called ecomp private network)
+# clamp info - everything is from the private oam network (also called onap private network)
GLOBAL_CLAMP_SERVER_PROTOCOL = "http"
GLOBAL_CLAMP_SERVER_PORT = "8080"
-# dcae info - everything is from the private oam network (also called ecomp private network)
+# nbi info - everything is from the private oam network (also called onap private network)
+GLOBAL_NBI_SERVER_PROTOCOL = "http"
+GLOBAL_NBI_SERVER_PORT = "8080"
+# cli info - everything is from the private oam network (also called onap private network)
+GLOBAL_CLI_SERVER_PROTOCOL = "http"
+GLOBAL_CLI_SERVER_PORT = "8080"
+# dcae info - everything is from the private oam network (also called onap private network)
GLOBAL_DCAE_SERVER_PROTOCOL = "http"
-GLOBAL_DCAE_SERVER_PORT = "8080"
+GLOBAL_DCAE_HEALTH_SERVER_PORT = "80"
GLOBAL_DCAE_USERNAME = "console"
GLOBAL_DCAE_PASSWORD = "ZjJkYjllMjljMTI2M2Iz"
-# microservice bus info - everything is from the private oam network (also called ecomp private network)
+# microservice bus info - everything is from the private oam network (also called onap private network)
GLOBAL_MSB_SERVER_PROTOCOL = "http"
GLOBAL_MSB_SERVER_PORT = "80"
-# message router info - everything is from the private oam network (also called ecomp private network)
+# message router info - everything is from the private oam network (also called onap private network)
GLOBAL_MR_SERVER_PROTOCOL = "http"
GLOBAL_MR_SERVER_PORT = "3904"
-# mso info - everything is from the private oam network (also called ecomp private network)
+# mso info - everything is from the private oam network (also called onap private network)
GLOBAL_MSO_SERVER_PROTOCOL = "http"
GLOBAL_MSO_SERVER_PORT = "8080"
GLOBAL_MSO_USERNAME = "InfraPortalClient"
GLOBAL_MSO_PASSWORD = "password1$"
+# music info - everything is from the private oam network (also called onap private network)
+GLOBAL_MUSIC_SERVER_PROTOCOL = "http"
+GLOBAL_MUSIC_SERVER_PORT = "8080"
+# oof
+GLOBAL_OOF_SERVER_PROTOCOL = "http"
+GLOBAL_OOF_HOMING_SERVER_PORT = "8091"
+GLOBAL_OOF_SNIRO_SERVER_PORT = "8698"
# openstack info - info to select right info in environment
-# packet generate vnf info - everything is from the private oam network (also called ecomp private network)
+# packet generate vnf info - everything is from the private oam network (also called onap private network)
GLOBAL_PACKET_GENERATOR_PORT = "8183"
GLOBAL_PACKET_GENERATOR_USERNAME = "admin"
GLOBAL_PACKET_GENERATOR_PASSWORD = "admin"
GLOBAL_PGN_PORT = "2831"
-# policy info - everything is from the private oam network (also called ecomp private network)
+# policy info - everything is from the private oam network (also called onap private network)
GLOBAL_POLICY_SERVER_PROTOCOL = "http"
GLOBAL_POLICY_SERVER_PORT = "8081"
GLOBAL_POLICY_HEALTHCHECK_PORT = "6969"
GLOBAL_POLICY_CLIENTAUTH = "cHl0aG9uOnRlc3Q="
GLOBAL_POLICY_USERNAME = "healthcheck"
GLOBAL_POLICY_PASSWORD = "zb!XztG34"
-# portal info - everything is from the private oam network (also called ecomp private network)
+# portal info - everything is from the private oam network (also called onap private network)
GLOBAL_PORTAL_SERVER_PROTOCOL = "http"
GLOBAL_PORTAL_SERVER_PORT = "8989"
GLOBAL_PORTAL_USERNAME = "demo"
GLOBAL_PORTAL_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse"
-# sdngc info - everything is from the private oam network (also called ecomp private network)
+# sdngc info - everything is from the private oam network (also called onap private network)
GLOBAL_SDNGC_SERVER_PROTOCOL = "http"
GLOBAL_SDNGC_REST_PORT = "8282"
GLOBAL_SDNGC_ADMIN_PORT = "8843"
GLOBAL_SDNGC_USERNAME = "admin"
GLOBAL_SDNGC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
-# vid info - everything is from the private oam network (also called ecomp private network)
+# sms (AAF) info
+GLOBAL_SMS_SERVER_PROTOCOL = "https"
+GLOBAL_SMS_SERVER_NAME = "aaf-sms.{{include "common.namespace" .}}"
+GLOBAL_SMS_SERVER_PORT = "10443"
+# vid info - everything is from the private oam network (also called onap private network)
GLOBAL_VID_SERVER_PROTOCOL = "http"
GLOBAL_VID_SERVER_PORT = "8080"
GLOBAL_VID_USERNAME = "demo"
GLOBAL_VID_PASSWORD = "Kp8bJ4SXszM0WX"
GLOBAL_VID_HEALTH_USERNAME = "Default"
GLOBAL_VID_HEALTH_PASSWORD = "AppPassword!1"
+# vnfsdk info - everything is from the private oam network (also called onap private network)
+GLOBAL_VNFSDK_SERVER_PROTOCOL = "http"
+GLOBAL_VNFSDK_SERVER_PORT = "8702"
#global selenium info
-GLOBAL_PROXY_WARNING_TITLE = ""
-GLOBAL_PROXY_WARNING_CONTINUE_XPATH = ""
-# settings for vm to attach vvg too
-GLOBAL_VVGSERVER_IMAGE = "{{ .Values.ubuntuImage }}"
-GLOBAL_VVGSERVER_FLAVOR = "{{ .Values.openStackFlavourMedium }}"
+GLOBAL_PROXY_WARNING_TITLE=""
+GLOBAL_PROXY_WARNING_CONTINUE_XPATH=""
# dns info
GLOBAL_DNS_TRAFFIC_DURATION = "600"
+# location where heat templates are loaded from
GLOBAL_HEAT_TEMPLATES_FOLDER = "/share/heat"
+# Log info
+GLOBAL_LOG_SERVER_PROTOCOL = "http"
+GLOBAL_LOG_ELASTICSEARCH_PORT = "9200"
+GLOBAL_LOG_LOGSTASH_PORT = "9600"
+GLOBAL_LOG_KIBANA_PORT = "5601"
-#file generated from /opt/config
+# File generated from /opt/config
#
-GLOBAL_INJECTED_AAI1_IP_ADDR = "{{.Release.Name}}-aai.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_AAF_IP_ADDR = "aaf-service.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_AAI1_IP_ADDR = "aai.{{include "common.namespace" .}}"
GLOBAL_INJECTED_AAI2_IP_ADDR = "N/A"
-GLOBAL_INJECTED_APPC_IP_ADDR = "{{.Release.Name}}-appc-sdnhost.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_APPC_IP_ADDR = "appc.{{include "common.namespace" .}}"
GLOBAL_INJECTED_ARTIFACTS_VERSION = "{{.Values.demoArtifactsVersion}}"
-GLOBAL_INJECTED_CLAMP_IP_ADDR = "{{.Release.Name}}-clamp.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_CLAMP_IP_ADDR = "clamp.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_CLI_IP_ADDR = "cli.{{include "common.namespace" .}}"
GLOBAL_INJECTED_CLOUD_ENV = "openstack"
-GLOBAL_INJECTED_DCAE_IP_ADDR = "{{.Release.Name}}-dcae-controller.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_DNS_IP_ADDR = "10.0.100.1"
+GLOBAL_INJECTED_DCAE_IP_ADDR = "dcae-healthcheck.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_DNS_IP_ADDR = "N/A"
GLOBAL_INJECTED_DOCKER_VERSION = "1.2-STAGING-latest"
-#GLOBAL_INJECTED_EXTERNAL_DNS = "N/A"
+GLOBAL_INJECTED_EXTERNAL_DNS = "N/A"
GLOBAL_INJECTED_GERRIT_BRANCH = "master"
+GLOBAL_INJECTED_LOG_ELASTICSEARCH_IP_ADDR = "log-es.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_LOG_KIBANA_IP_ADDR = "log-kibana.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_LOG_LOGSTASH_IP_ADDR = "log-ls-http.{{include "common.namespace" .}}"
GLOBAL_INJECTED_KEYSTONE = "{{ .Values.openStackKeyStoneUrl }}"
-GLOBAL_INJECTED_MR_IP_ADDR = "{{.Release.Name}}-dmaap.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_MSO_IP_ADDR = "{{.Release.Name}}-so.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_MR_IP_ADDR = "message-router.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_MSO_IP_ADDR = "so.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_MUSIC_IP_ADDR = "music.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_NBI_IP_ADDR = "nbi.{{include "common.namespace" .}}"
GLOBAL_INJECTED_NETWORK = "{{ .Values.openStackPrivateNetId }}"
GLOBAL_INJECTED_NEXUS_DOCKER_REPO = "nexus3.onap.org:10001"
GLOBAL_INJECTED_NEXUS_PASSWORD = "docker"
GLOBAL_INJECTED_NEXUS_REPO = "https://nexus.onap.org/content/sites/raw"
GLOBAL_INJECTED_NEXUS_USERNAME = "docker"
-GLOBAL_INJECTED_OPENO_IP_ADDR = "{{.Release.Name}}-msb-iag.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_OPENSTACK_PASSWORD = "{{ .Values.openStackEncryptedPassword }}"
+GLOBAL_INJECTED_OOF_IP_ADDR = "N/A"
+GLOBAL_INJECTED_OOF_HOMING_IP_ADDR = "oof-has-api.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR = "oof-osdf.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_OPENO_IP_ADDR = "msb-iag.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_OPENSTACK_PASSWORD = "{{ .Values.openStackPassword }}"
GLOBAL_INJECTED_OPENSTACK_TENANT_ID = "{{ .Values.openStackTenantId }}"
GLOBAL_INJECTED_OPENSTACK_USERNAME = "{{ .Values.openStackUserName }}"
-GLOBAL_INJECTED_POLICY_IP_ADDR = "{{.Release.Name}}-pypdp.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = "{{.Release.Name}}-drools.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_PORTAL_IP_ADDR = "{{.Release.Name}}-portalapps.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_POLICY_IP_ADDR = "pdp.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = "drools.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_PORTAL_IP_ADDR = "portal-app.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_PUBLIC_NET_ID = "{{ .Values.openStackPublicNetId }}"
GLOBAL_INJECTED_REGION = "{{ .Values.openStackRegion }}"
GLOBAL_INJECTED_REMOTE_REPO = "http://gerrit.onap.org/r/testsuite/properties.git"
-GLOBAL_INJECTED_SDC_IP_ADDR = "{{.Release.Name}}-sdc-be.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDC_FE_IP_ADDR = "{{.Release.Name}}-sdc-fe.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDC_BE_IP_ADDR = "{{.Release.Name}}-sdc-be.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDNC_IP_ADDR = "{{.Release.Name}}-sdnhost.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = "{{.Release.Name}}-sdnc-portal.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SO_IP_ADDR = "{{.Release.Name}}-so.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_VID_IP_ADDR = "{{.Release.Name}}-vid-server.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_VM_FLAVOR = "{{ .Values.openStackFlavourMedium }}"
-GLOBAL_INJECTED_VM_IMAGE_NAME = "{{ .Values.ubuntuImage }}"
-GLOBAL_INJECTED_PUBLIC_NET_ID = "{{ .Values.openStackPublicNetId }}"
GLOBAL_INJECTED_SCRIPT_VERSION = "{{ .Values.scriptVersion }}"
+GLOBAL_INJECTED_SDC_BE_IP_ADDR = "sdc-be.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDC_BE_ONBOARD_IP_ADDR = "sdc-onboarding-be.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDC_FE_IP_ADDR = "sdc-fe.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDC_IP_ADDR = "N/A"
+GLOBAL_INJECTED_SDNC_IP_ADDR = "sdnc.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = "sdnc-portal.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SO_IP_ADDR = "so.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_UBUNTU_1404_IMAGE = "{{ .Values.ubuntu14Image }}"
+GLOBAL_INJECTED_UBUNTU_1604_IMAGE = "{{ .Values.ubuntu16Image }}"
+GLOBAL_INJECTED_VM_IMAGE_NAME = "{{ .Values.ubuntu14Image }}"
+GLOBAL_INJECTED_VID_IP_ADDR = "vid.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_VM_FLAVOR = "{{ .Values.openStackFlavourMedium }}"
+GLOBAL_INJECTED_VNFSDK_IP_ADDR = "refrepo.{{include "common.namespace" .}}"
+
GLOBAL_INJECTED_PROPERTIES = {
- "GLOBAL_INJECTED_AAI1_IP_ADDR" : "{{.Release.Name}}-aai.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_APPC_IP_ADDR" : "{{.Release.Name}}-appc-sdnhost.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_AAF_IP_ADDR" : "aaf-service.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_AAI1_IP_ADDR" : "aai.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_AAI2_IP_ADDR" : "N/A",
+ "GLOBAL_INJECTED_APPC_IP_ADDR" : "appc.{{include "common.namespace" .}}",
"GLOBAL_INJECTED_ARTIFACTS_VERSION" : "{{.Values.demoArtifactsVersion}}",
- "GLOBAL_INJECTED_CLAMP_IP_ADDR" : "{{.Release.Name}}-clamp.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_CLAMP_IP_ADDR" : "clamp.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_CLI_IP_ADDR" : "cli.{{include "common.namespace" .}}",
"GLOBAL_INJECTED_CLOUD_ENV" : "openstack",
- "GLOBAL_INJECTED_DCAE_IP_ADDR" : "{{.Release.Name}}-dcae-controller.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_DNS_IP_ADDR" : "10.0.100.1",
+ "GLOBAL_INJECTED_DCAE_IP_ADDR" : "dcae-healthcheck.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_DNS_IP_ADDR" : "N/A",
"GLOBAL_INJECTED_DOCKER_VERSION" : "1.2-STAGING-latest",
+ "GLOBAL_INJECTED_EXTERNAL_DNS" : "N/A",
"GLOBAL_INJECTED_GERRIT_BRANCH" : "master",
"GLOBAL_INJECTED_KEYSTONE" : "{{ .Values.openStackKeyStoneUrl }}",
- "GLOBAL_INJECTED_MR_IP_ADDR" : "{{.Release.Name}}-dmaap.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_MSO_IP_ADDR" : "{{.Release.Name}}-so.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_LOG_ELASTICSEARCH_IP_ADDR" : "log-es.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_LOG_KIBANA_IP_ADDR" : "log-kibana.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_LOG_LOGSTASH_IP_ADDR" : "log-ls.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_MR_IP_ADDR" : "message-router.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_MSO_IP_ADDR" : "so.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_MUSIC_IP_ADDR" : "music.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_NBI_IP_ADDR" : "nbi.{{include "common.namespace" .}}",
"GLOBAL_INJECTED_NETWORK" : "{{ .Values.openStackPrivateNetId }}",
"GLOBAL_INJECTED_NEXUS_DOCKER_REPO" : "nexus3.onap.org:10001",
"GLOBAL_INJECTED_NEXUS_PASSWORD" : "docker",
"GLOBAL_INJECTED_NEXUS_REPO" : "https://nexus.onap.org/content/sites/raw",
"GLOBAL_INJECTED_NEXUS_USERNAME" : "docker",
- "GLOBAL_INJECTED_OPENO_IP_ADDR" : "{{.Release.Name}}-msb-iag.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_OPENSTACK_PASSWORD" : "{{ .Values.openStackEncryptedPassword }}",
+ "GLOBAL_INJECTED_OOF_IP_ADDR" : "N/A",
+ "GLOBAL_INJECTED_OOF_HOMING_IP_ADDR" : "oof-has-api.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR" : "oof-osdf.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_OPENO_IP_ADDR" : "msb-iag.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_OPENSTACK_PASSWORD" : "{{ .Values.openStackPassword }}",
"GLOBAL_INJECTED_OPENSTACK_TENANT_ID" : "{{ .Values.openStackTenantId }}",
"GLOBAL_INJECTED_OPENSTACK_USERNAME" : "{{ .Values.openStackUserName }}",
- "GLOBAL_INJECTED_POLICY_IP_ADDR" : "{{.Release.Name}}-pypdp.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : "{{.Release.Name}}-drools.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_PORTAL_IP_ADDR" : "{{.Release.Name}}-portalapps.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_POLICY_IP_ADDR" : "pdp.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : "drools.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_PORTAL_IP_ADDR" : "portal-app.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_PUBLIC_NET_ID" : "{{ .Values.openStackPublicNetId }}",
"GLOBAL_INJECTED_REGION" : "{{ .Values.openStackRegion }}",
"GLOBAL_INJECTED_REMOTE_REPO" : "http://gerrit.onap.org/r/testsuite/properties.git",
- "GLOBAL_INJECTED_SDC_FE_IP_ADDR" : "{{.Release.Name}}-sdc-fe.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SDC_BE_IP_ADDR" : "{{.Release.Name}}-sdc-be.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SDNC_IP_ADDR" : "{{.Release.Name}}-sdnhost.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR" : "{{.Release.Name}}-sdnc-portal.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SO_IP_ADDR" : "{{.Release.Name}}-so.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_VID_IP_ADDR" : "{{.Release.Name}}-vid-server.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_BE_IP_ADDR" : "sdc-be.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_BE_ONBOARD_IP_ADDR" : "sdc-onboarding-be.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_FE_IP_ADDR" : "sdc-fe.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_IP_ADDR" : "N/A",
+ "GLOBAL_INJECTED_SCRIPT_VERSION" : "{{ .Values.scriptVersion }}",
+ "GLOBAL_INJECTED_SDNC_IP_ADDR" : "sdnc.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR" : "sdnc-portal.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SO_IP_ADDR" : "so.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_UBUNTU_1404_IMAGE" : "{{.Values.ubuntu14Image}}",
+ "GLOBAL_INJECTED_UBUNTU_1604_IMAGE" : "{{.Values.ubuntu16Image}}",
+ "GLOBAL_INJECTED_VM_IMAGE_NAME" : "{{ .Values.ubuntu14Image }}",
+ "GLOBAL_INJECTED_VID_IP_ADDR" : "vid.{{include "common.namespace" .}}",
"GLOBAL_INJECTED_VM_FLAVOR" : "{{ .Values.openStackFlavourMedium }}",
- "GLOBAL_INJECTED_VM_IMAGE_NAME" : "{{ .Values.ubuntuImage }}",
- "GLOBAL_INJECTED_PUBLIC_NET_ID" : "{{ .Values.openStackPublicNetId }}",
- "GLOBAL_INJECTED_SCRIPT_VERSION" : "{{ .Values.scriptVersion }}"
+ "GLOBAL_INJECTED_VNFSDK_IP_ADDR" : "refrepo.{{include "common.namespace" .}}"
}
+++ /dev/null
-*** Settings ***
-Documentation The main interface for interacting with ASDC. It handles low level stuff like managing the http request library and DCAE required fields
-Library RequestsLibrary
-Library UUID
-Library JSONUtils
-Library OperatingSystem
-Library Collections
-Library ExtendedSelenium2Library
-Resource global_properties.robot
-Resource browser_setup.robot
-Resource json_templater.robot
-*** Variables ***
-${ASDC_DESIGNER_USER_ID} cs0008
-${ASDC_TESTER_USER_ID} jm0007
-${ASDC_GOVERNOR_USER_ID} gv0001
-${ASDC_OPS_USER_ID} op0001
-${ASDC_HEALTH_CHECK_PATH} /sdc1/rest/healthCheck
-${ASDC_VENDOR_LICENSE_MODEL_PATH} /onboarding-api/v1.0/vendor-license-models
-${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH} /onboarding-api/v1.0/vendor-software-products
-${ASDC_VENDOR_KEY_GROUP_PATH} /license-key-groups
-${ASDC_VENDOR_ENTITLEMENT_POOL_PATH} /entitlement-pools
-${ASDC_VENDOR_FEATURE_GROUP_PATH} /feature-groups
-${ASDC_VENDOR_LICENSE_AGREEMENT_PATH} /license-agreements
-${ASDC_VENDOR_ACTIONS_PATH} /actions
-${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH} /orchestration-template-candidate
-${ASDC_CATALOG_RESOURCES_PATH} /sdc2/rest/v1/catalog/resources
-${ASDC_CATALOG_SERVICES_PATH} /sdc2/rest/v1/catalog/services
-${ASDC_CATALOG_INACTIVE_RESOURCES_PATH} /sdc2/rest/v1/inactiveComponents/resource
-${ASDC_CATALOG_INACTIVE_SERVICES_PATH} /sdc2/rest/v1/inactiveComponents/service
-${ASDC_CATALOG_LIFECYCLE_PATH} /lifecycleState
-${ASDC_CATALOG_SERVICE_RESOURCE_INSTANCE_PATH} /resourceInstance
-${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH} /distribution-state
-${ASDC_CATALOG_SERVICE_DISTRIBUTION_PATH} /distribution
-${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} /approve
-${ASDC_CATALOG_SERVICE_DISTRIBUTION_ACTIVATE_PATH} /distribution/PROD/activate
-${ASDC_LICENSE_MODEL_TEMPLATE} robot/assets/templates/asdc/license_model.template
-${ASDC_KEY_GROUP_TEMPLATE} robot/assets/templates/asdc/key_group.template
-${ASDC_ENTITLEMENT_POOL_TEMPLATE} robot/assets/templates/asdc/entitlement_pool.template
-${ASDC_FEATURE_GROUP_TEMPLATE} robot/assets/templates/asdc/feature_group.template
-${ASDC_LICENSE_AGREEMENT_TEMPLATE} robot/assets/templates/asdc/license_agreement.template
-${ASDC_ACTION_TEMPLATE} robot/assets/templates/asdc/action.template
-${ASDC_SOFTWARE_PRODUCT_TEMPLATE} robot/assets/templates/asdc/software_product.template
-${ASDC_CATALOG_RESOURCE_TEMPLATE} robot/assets/templates/asdc/catalog_resource.template
-${ASDC_USER_REMARKS_TEMPLATE} robot/assets/templates/asdc/user_remarks.template
-${ASDC_CATALOG_SERVICE_TEMPLATE} robot/assets/templates/asdc/catalog_service.template
-${ASDC_RESOURCE_INSTANCE_TEMPLATE} robot/assets/templates/asdc/resource_instance.template
-${ASDC_FE_ENDPOINT} ${GLOBAL_ASDC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDC_FE_IP_ADDR}:${GLOBAL_ASDC_FE_PORT}
-${ASDC_BE_ENDPOINT} ${GLOBAL_ASDC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDC_BE_IP_ADDR}:${GLOBAL_ASDC_BE_PORT}
-
-*** Keywords ***
-Distribute Model From ASDC
- [Documentation] goes end to end creating all the asdc objects based ona model and distributing it to the systems. it then returns the service name, vf name and vf module name
- [Arguments] ${model_zip_path} ${catalog_service_name}=
- ${catalog_service_id}= Add ASDC Catalog Service ${catalog_service_name}
- ${catalog_resource_ids}= Create List
- ${catalog_resources}= Create Dictionary
- : FOR ${zip} IN @{model_zip_path}
- \ ${loop_catalog_resource_id}= Setup ASDC Catalog Resource ${zip}
- \ Append To List ${catalog_resource_ids} ${loop_catalog_resource_id}
- \ ${loop_catalog_resource_resp}= Get ASDC Catalog Resource ${loop_catalog_resource_id}
- \ Add ASDC Resource Instance ${catalog_service_id} ${loop_catalog_resource_id} ${loop_catalog_resource_resp['name']}
- \ Set To Dictionary ${catalog_resources} ${loop_catalog_resource_id}=${loop_catalog_resource_resp}
- ${catalog_service_resp}= Get ASDC Catalog Service ${catalog_service_id}
- Checkin ASDC Catalog Service ${catalog_service_id}
- Request Certify ASDC Catalog Service ${catalog_service_id}
- Start Certify ASDC Catalog Service ${catalog_service_id}
- # on certify it gets a new id
- ${catalog_service_id}= Certify ASDC Catalog Service ${catalog_service_id}
- Approve ASDC Catalog Service ${catalog_service_id}
- Distribute ASDC Catalog Service ${catalog_service_id}
- ${catalog_service_resp}= Get ASDC Catalog Service ${catalog_service_id}
- ${vf_module}= Find Element In Array ${loop_catalog_resource_resp['groups']} type org.openecomp.groups.VfModule
- Check Catalog Service Distributed ${catalog_service_resp['uuid']}
- [Return] ${catalog_service_resp['name']} ${loop_catalog_resource_resp['name']} ${vf_module} ${catalog_resource_ids} ${catalog_service_id} ${catalog_resources}
-
-Setup ASDC Catalog Resource
- [Documentation] Creates all the steps a vf needs for an asdc catalog resource and returns the id
- [Arguments] ${model_zip_path}
- ${license_model_id}= Add ASDC License Model
- ${key_group_id}= Add ASDC License Group ${license_model_id}
- ${pool_id}= Add ASDC Entitlement Pool ${license_model_id}
- ${feature_group_id}= Add ASDC Feature Group ${license_model_id} ${key_group_id} ${pool_id}
- ${license_agreement_id}= Add ASDC License Agreement ${license_model_id} ${feature_group_id}
- Checkin ASDC License Model ${license_model_id}
- Submit ASDC License Model ${license_model_id}
- ${license_model_resp}= Get ASDC License Model ${license_model_id} 1.0
- ${software_product_id}= Add ASDC Software Product ${license_agreement_id} ${feature_group_id} ${license_model_resp['vendorName']} ${license_model_id}
- Upload ASDC Heat Package ${software_product_id} ${model_zip_path}
- Validate ASDC Software Product ${software_product_id}
- Checkin ASDC Software Product ${software_product_id}
- Submit ASDC Software Product ${software_product_id}
- Package ASDC Software Product ${software_product_id}
- ${software_product_resp}= Get ASDC Software Product ${software_product_id} 1.0
- ${catalog_resource_id}= Add ASDC Catalog Resource ${license_agreement_id} ${software_product_resp['name']} ${license_model_resp['vendorName']} ${software_product_id}
- Checkin ASDC Catalog Resource ${catalog_resource_id}
- Request Certify ASDC Catalog Resource ${catalog_resource_id}
- Start Certify ASDC Catalog Resource ${catalog_resource_id}
- # on certify it gets a new id
- [Return] ${catalog_resource_id}
- ${catalog_resource_id}= Certify ASDC Catalog Resource ${catalog_resource_id}
-Add ASDC License Model
- [Documentation] Creates an asdc license model and returns its id
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary vendor_name=${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_LICENSE_MODEL_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC License Model
- [Documentation] gets an asdc license model by its id
- [Arguments] ${id} ${version_id}=0.1
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}
- [Return] ${resp.json()}
-Get ASDC License Models
- [Documentation] gets an asdc license model by its id
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}
- [Return] ${resp.json()}
-Checkin ASDC License Model
- [Documentation] checksin an asdc license model by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Checkin
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Submit ASDC License Model
- [Documentation] submits an asdc license model by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Submit
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Checkin ASDC Software Product
- [Documentation] checksin an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Checkin
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Validate ASDC Software Product
- [Documentation] checksin an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${data}= Catenate
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}/orchestration-template-candidate/process ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Submit ASDC Software Product
- [Documentation] submits an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Submit
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Package ASDC Software Product
- [Documentation] creates_package on an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Create_Package
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Add ASDC Entitlement Pool
- [Documentation] Creates an asdc Entitlement Pool and returns its id
- [Arguments] ${license_model_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary entitlement_pool_name=${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_ENTITLEMENT_POOL_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_ENTITLEMENT_POOL_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC Entitlement Pool
- [Documentation] gets an asdc Entitlement Pool by its id
- [Arguments] ${license_model_id} ${pool_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_ENTITLEMENT_POOL_PATH}/${pool_id}
- [Return] ${resp.json()}
-Add ASDC License Group
- [Documentation] Creates an asdc license group and returns its id
- [Arguments] ${license_model_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary key_group_name=${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_KEY_GROUP_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_KEY_GROUP_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC License Group
- [Documentation] gets an asdc license group by its id
- [Arguments] ${license_model_id} ${group_id} ${version_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_KEY_GROUP_PATH}/${group_id}
- [Return] ${resp.json()}
-Add ASDC Feature Group
- [Documentation] Creates an asdc Feature Group and returns its id
- [Arguments] ${license_model_id} ${key_group_id} ${entitlement_pool_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary feature_group_name=${shortened_uuid} key_group_id=${key_group_id} entitlement_pool_id=${entitlement_pool_id} manufacturer_reference_number=mrn${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_FEATURE_GROUP_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_FEATURE_GROUP_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC Feature Group
- [Documentation] gets an asdc Feature Group by its id
- [Arguments] ${license_model_id} ${group_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_FEATURE_GROUP_PATH}/${group_id}
- [Return] ${resp.json()}
-Add ASDC License Agreement
- [Documentation] Creates an asdc License Agreement and returns its id
- [Arguments] ${license_model_id} ${feature_group_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary license_agreement_name=${shortened_uuid} feature_group_id=${feature_group_id}
- ${data}= Fill JSON Template File ${ASDC_LICENSE_AGREEMENT_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_LICENSE_AGREEMENT_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC License Agreement
- [Documentation] gets an asdc License Agreement by its id
- [Arguments] ${license_model_id} ${agreement_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_LICENSE_AGREEMENT_PATH}/${agreement_id}
- [Return] ${resp.json()}
-Add ASDC Software Product
- [Documentation] Creates an asdc Software Product and returns its id
- [Arguments] ${license_agreement_id} ${feature_group_id} ${license_model_name} ${license_model_id}
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary software_product_name=${shortened_uuid} feature_group_id=${feature_group_id} license_agreement_id=${license_agreement_id} vendor_name=${license_model_name} vendor_id=${license_model_id}
- ${data}= Fill JSON Template File ${ASDC_SOFTWARE_PRODUCT_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['vspId']}
-Get ASDC Software Product
- [Documentation] gets an asdc Software Product by its id
- [Arguments] ${software_product_id} ${version_id}=0.1
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}
- [Return] ${resp.json()}
-Add ASDC Catalog Resource
- [Documentation] Creates an asdc Catalog Resource and returns its id
- [Arguments] ${license_agreement_id} ${software_product_name} ${license_model_name} ${software_product_id}
- ${map}= Create Dictionary software_product_id=${software_product_id} software_product_name=${software_product_name} license_agreement_id=${license_agreement_id} vendor_name=${license_model_name}
- ${data}= Fill JSON Template File ${ASDC_CATALOG_RESOURCE_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 201
- [Return] ${resp.json()['uniqueId']}
-Mark ASDC Catalog Resource Inactive
- [Documentation] deletes an asdc Catalog Resource
- [Arguments] ${catalog_resource_id}
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 204
- [Return] ${resp}
-Delete Inactive ASDC Catalog Resources
- [Documentation] delete all asdc Catalog Resources that are inactive
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_INACTIVE_RESOURCES_PATH} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Get ASDC Catalog Resource
- [Documentation] gets an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id} ${ASDC_DESIGNER_USER_ID}
- [Return] ${resp.json()}
-Checkin ASDC Catalog Resource
- [Documentation] checksin an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/checkin ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Request Certify ASDC Catalog Resource
- [Documentation] requests certify on an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certificationRequest ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Start Certify ASDC Catalog Resource
- [Documentation] start certify an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/startCertification ${None} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Certify ASDC Catalog Resource
- [Documentation] start certify an asdc Catalog Resource by its id and returns the new id
- [Arguments] ${catalog_resource_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['uniqueId']}
-
-Upload ASDC Heat Package
- [Documentation] Creates an asdc Software Product and returns its id
- [Arguments] ${software_product_id} ${file_path} ${version_id}=0.1
- ${files}= Create Dictionary
- Create Multi Part ${files} upload ${file_path} contentType=application/zip
- ${resp}= Run ASDC Post Files Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH} ${files} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
-
-Add ASDC Catalog Service
- [Documentation] Creates an asdc Catalog Service and returns its id
- [Arguments] ${catalog_service_name}
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${catalog_service_name}= Set Variable If '${catalog_service_name}' =='' ${shortened_uuid} ${catalog_service_name}
- ${map}= Create Dictionary service_name=${catalog_service_name}
- ${data}= Fill JSON Template File ${ASDC_CATALOG_SERVICE_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 201
- [Return] ${resp.json()['uniqueId']}
-Mark ASDC Catalog Service Inactive
- [Documentation] Deletes an asdc Catalog Service
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 204
- [Return] ${resp}
-Delete Inactive ASDC Catalog Services
- [Documentation] delete all asdc Catalog Serivces that are inactive
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_INACTIVE_SERVICES_PATH} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Get ASDC Catalog Service
- [Documentation] gets an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id} ${ASDC_DESIGNER_USER_ID}
- [Return] ${resp.json()}
-Checkin ASDC Catalog Service
- [Documentation] checksin an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/checkin ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Request Certify ASDC Catalog Service
- [Documentation] requests certify on an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certificationRequest ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Start Certify ASDC Catalog Service
- [Documentation] start certify an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/startCertification ${None} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Certify ASDC Catalog Service
- [Documentation] start certify an asdc Catalog Service by its id and returns the new id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['uniqueId']}
-Approve ASDC Catalog Service
- [Documentation] approve an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH}${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} ${data} ${ASDC_GOVERNOR_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Distribute ASDC Catalog Service
- [Documentation] distribute an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_DISTRIBUTION_ACTIVATE_PATH} ${None} ${ASDC_OPS_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Add ASDC Resource Instance
- [Documentation] Creates an asdc Resource Instance and returns its id
- [Arguments] ${catalog_service_id} ${catalog_resource_id} ${catalog_resource_name}
- ${milli_timestamp}= Generate MilliTimestamp UUID
- ${map}= Create Dictionary catalog_resource_id=${catalog_resource_id} catalog_resource_name=${catalog_resource_name} milli_timestamp=${milli_timestamp}
- ${data}= Fill JSON Template File ${ASDC_RESOURCE_INSTANCE_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_RESOURCE_INSTANCE_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 201
- [Return] ${resp.json()['uniqueId']}
-Get Catalog Service Distribution
- [Documentation] gets an asdc catalog Service distrbution
- [Arguments] ${catalog_service_uuid}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_uuid}${ASDC_CATALOG_SERVICE_DISTRIBUTION_PATH} ${ASDC_OPS_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Check Catalog Service Distributed
- [Documentation] gets an asdc catalog Service distrbution
- [Arguments] ${catalog_service_uuid}
- ${dist_resp}= Get Catalog Service Distribution ${catalog_service_uuid}
- Should Be Equal As Strings ${dist_resp['distributionStatusOfServiceList'][0]['deployementStatus']} Distributed
- Sleep 3 minutes
- ${det_resp}= Get Catalog Service Distribution Details ${dist_resp['distributionStatusOfServiceList'][0]['distributionID']}
- @{ITEMS}= Copy List ${det_resp['distributionStatusList']}
- :FOR ${ELEMENT} IN @{ITEMS}
- \ Log ${ELEMENT['status']}
- \ Should Match Regexp ${ELEMENT['status']} ^(DEPLOY_OK|NOTIFIED|DOWNLOAD_OK|NOT_NOTIFIED)$
-Get Catalog Service Distribution Details
- [Documentation] gets an asdc catalog Service distrbution details
- [Arguments] ${catalog_service_distribution_id}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_SERVICES_PATH}${ASDC_CATALOG_SERVICE_DISTRIBUTION_PATH}/${catalog_service_distribution_id} ${ASDC_OPS_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Run ASDC Health Check
- [Documentation] Runs a ASDC health check
- ${session}= Create Session asdc ${ASDC_FE_ENDPOINT}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Get Request asdc ${ASDC_HEALTH_CHECK_PATH} headers=${headers}
- Should Be Equal As Strings ${resp.status_code} 200
- @{ITEMS}= Copy List ${resp.json()['componentsInfo']}
- :FOR ${ELEMENT} IN @{ITEMS}
- \ Log ${ELEMENT['healthCheckStatus']}
- \ Should Be Equal As Strings ${ELEMENT['healthCheckStatus']} UP
-Run ASDC Get Request
- [Documentation] Runs an ASDC get request
- [Arguments] ${data_path} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Get Request asdc ${data_path} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-Run ASDC Put Request
- [Documentation] Runs an ASDC put request
- [Arguments] ${data_path} ${data} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Put Request asdc ${data_path} data=${data} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-
-Run ASDC Post Files Request
- [Documentation] Runs an ASDC post request
- [Arguments] ${data_path} ${files} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=multipart/form-data USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Post Request asdc ${data_path} files=${files} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-
-Run ASDC Post Request
- [Documentation] Runs an ASDC post request
- [Arguments] ${data_path} ${data} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Post Request asdc ${data_path} data=${data} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-Run ASDC Delete Request
- [Documentation] Runs an ASDC delete request
- [Arguments] ${data_path} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Delete Request asdc ${data_path} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-Open ASDC GUI
- [Documentation] Logs in to ASDC GUI
- [Arguments] ${PATH}
- ## Setup Browever now being managed by the test case
- ##Setup Browser
- Go To ${ASDC_FE_ENDPOINT}${PATH}
- Maximize Browser Window
-
- Set Browser Implicit Wait ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT}
- Log Logging in to ${ASDC_FE_ENDPOINT}${PATH}
- Title Should Be ASDC
- Wait Until Page Contains Element xpath=//div/a[text()='SDC'] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT}
- Log Logged in to ${ASDC_FE_ENDPOINT}${PATH}
-
-
-Create Multi Part
- [Arguments] ${addTo} ${partName} ${filePath} ${contentType}=${None}
- ${fileData}= Get Binary File ${filePath}
- ${fileDir} ${fileName}= Split Path ${filePath}
- ${partData}= Create List ${fileName} ${fileData} ${contentType}
- Set To Dictionary ${addTo} ${partName}=${partData}
--- /dev/null
+*** Settings ***
+Documentation The main interface for interacting with OOF: SNIRO and Homing Service
+Library RequestsLibrary
+
+Resource global_properties.robot
+
+*** Variables ***
+${OOF_HOMING_HEALTH_CHECK_PATH} /v1/plans/healthcheck
+${OOF_SNIRO_HEALTH_CHECK_PATH} /api/oof/v1/healthcheck
+
+${OOF_HOMING_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_HOMING_IP_ADDR}:${GLOBAL_OOF_HOMING_SERVER_PORT}
+${OOF_SNIRO_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR}:${GLOBAL_OOF_SNIRO_SERVER_PORT}
+
+*** Keywords ***
+Run OOF-Homing Health Check
+ [Documentation] Runs OOF-Homing Health check
+ ${resp}= Run OOF-Homing Get Request ${OOF_HOMING_HEALTH_CHECK_PATH}
+ Should Be Equal As Integers ${resp.status_code} 200
+
+Run OOF-Homing Get Request
+ [Documentation] Runs OOF-Homing Get request
+ [Arguments] ${data_path}
+ ${session}= Create Session session ${OOF_HOMING_ENDPOINT}
+ ${resp}= Get Request session ${data_path}
+ Should Be Equal As Integers ${resp.status_code} 200
+ Log Received response from OOF-Homing ${resp.text}
+ [Return] ${resp}
+
+Run OOF-SNIRO Health Check
+ [Documentation] Runs OOF-SNIRO Health check
+ ${resp}= Run OOF-SNIRO Get Request ${OOF_SNIRO_HEALTH_CHECK_PATH}
+ Should Be Equal As Integers ${resp.status_code} 200
+
+Run OOF-SNIRO Get Request
+ [Documentation] Runs OOF-SNIRO Get request
+ [Arguments] ${data_path}
+ ${session}= Create Session session ${OOF_SNIRO_ENDPOINT}
+ ${resp}= Get Request session ${data_path}
+ Should Be Equal As Integers ${resp.status_code} 200
+ Log Received response from OOF-SNIRO ${resp.text}
+ [Return] ${resp}
:FOR ${ELEMENT} IN @{ITEMS}
\ Should Be Equal As Strings ${ELEMENT['code']} 200
\ Should Be True ${ELEMENT['healthy']}
+
Run Policy Put Request
[Documentation] Runs Policy Put request
[Arguments] ${data_path} ${data}
${resp}= Put Request policy ${data_path} data=${data} headers=${headers}
Log Received response from policy ${resp.text}
[Return] ${resp}
+
Run Policy Delete Request
[Documentation] Runs Policy Delete request
[Arguments] ${data_path} ${data}
${resp}= Delete Request policy ${data_path} data=${data} headers=${headers}
Log Received response from policy ${resp.text}
[Return] ${resp}
+
Run Policy Get Configs Request
[Documentation] Runs Policy Get Configs request
[Arguments] ${data_path} ${data}
Log Creating session ${POLICY_ENDPOINT}
${session}= Create Session policy ${POLICY_ENDPOINT}
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json Authorization=Basic ${GLOBAL_POLICY_AUTH} ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json Authorization=Basic ${GLOBAL_POLICY_AUTH} ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}
${resp}= Post Request policy ${data_path} data=${data} headers=${headers}
Log Received response from policy ${resp.text}
- [Return] ${resp}
+ [Return] ${resp}
\ No newline at end of file
*** Settings ***
Documentation The main interface for interacting with SDN-GC. It handles low level stuff like managing the http request library and SDN-GC required fields
Library RequestsLibrary
-Library UUID
+Library UUID
Library OperatingSystem
Library ExtendedSelenium2Library
Library Collections
[Documentation] Runs an SDNGC healthcheck
${resp}= Run SDNGC Post Request ${SDNGC_INDEX PATH}${SDNCGC_HEALTHCHECK_OPERATION_PATH} ${None}
Should Be Equal As Strings ${resp.status_code} 200
- Should Be Equal As Strings ${resp.json()['output']['response-code']} 200
+ Should Be Equal As Strings ${resp.json()['output']['response-code']} 200
Run SDNGC Get Request
[Documentation] Runs an SDNGC get request
${resp}= Get Request sdngc ${data_path} headers=${headers}
Log Received response from sdngc ${resp.text}
[Return] ${resp}
-
+
Run SDNGC Put Request
[Documentation] Runs an SDNGC put request
[Arguments] ${data_path} ${data}
${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
${resp}= Post Request sdngc ${data_path} data=${data} headers=${headers}
Log Received response from sdngc ${resp.text}
- [Return] ${resp}
-
+ [Return] ${resp}
+
Run SDNGC Delete Request
[Documentation] Runs an SDNGC delete request
[Arguments] ${data_path}
Preload Vnf
[Arguments] ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_module_name} ${vf_modules} ${service} ${uuid}
- ${base_vf_module_type}= Catenate ''
+ ${base_vf_module_type}= Catenate
${closedloop_vf_module}= Create Dictionary
${templates}= Get From Dictionary ${GLOBAL_SERVICE_TEMPLATE_MAPPING} ${service}
:for ${vf_module} in @{vf_modules}
\ ${filename}= Get From Dictionary ${dict} template
\ ${base_vf_module_type}= Set Variable If '${dict['isBase']}' == 'true' ${vf_module_type} ${base_vf_module_type}
\ ${closedloop_vf_module}= Set Variable If '${dict['isBase']}' == 'false' ${vf_module} ${closedloop_vf_module}
- \ ${vf_name}= Update Module Name ${dict} ${vf_module_name}
- \ Preload Vnf Profile ${vf_module_type}
+ \ ${vf_name}= Update Module Name ${dict} ${vf_module_name}
+ \ Preload Vnf Profile ${vf_module_type}
\ Preload One Vnf Topology ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_name} ${vf_module_type} ${service} ${filename} ${uuid}
- [Return] ${base_vf_module_type} ${closedloop_vf_module}
+ [Return] ${base_vf_module_type} ${closedloop_vf_module}
Update Module Name
[Arguments] ${dict} ${vf_module_name}
Return From Keyword If 'prefix' not in ${dict} ${vf_module_name}
Return From Keyword If '${dict['prefix']}' == '' ${vf_module_name}
- ${name}= Replace String ${vf_module_name} Vfmodule_ ${dict['prefix']}
- [Return] ${name}
+ ${name}= Replace String ${vf_module_name} Vfmodule_ ${dict['prefix']}
+ [Return] ${name}
Get From Mapping
- [Documentation] Retrieve the appropriate prelad template entry for the passed vf_module
+ [Documentation] Retrieve the appropriate prelad template entry for the passed vf_module
[Arguments] ${templates} ${vf_module}
${vf_module_name}= Get From DIctionary ${vf_module} name
- :for ${template} in @{templates}
- \ Return From Keyword If '${template['name_pattern']}' in '${vf_module_name}' ${template}
- [Return] None
-
+ :for ${template} in @{templates}
+ \ Return From Keyword If '${template['name_pattern']}' in '${vf_module_name}' ${template}
+ [Return] None
+
Preload One Vnf Topology
[Arguments] ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_module_name} ${vf_module_type} ${service} ${filename} ${uuid}
Return From Keyword If '${filename}' == ''
${data_template}= OperatingSystem.Get File ${PRELOAD_VNF_TOPOLOGY_OPERATION_BODY}/preload.template
${parameters}= Get Template Parameters ${filename} ${uuid}
- Set To Dictionary ${parameters} generic_vnf_name=${generic_vnf_name} generic_vnf_type=${generic_vnf_type} service_type=${service_type_uuid} vf_module_name=${vf_module_name} vf_module_type=${vf_module_type} uuid=${uuid}
- ${data}= Fill JSON Template ${data_template} ${parameters}
+ Set To Dictionary ${parameters} generic_vnf_name=${generic_vnf_name} generic_vnf_type=${generic_vnf_type} service_type=${service_type_uuid} vf_module_name=${vf_module_name} vf_module_type=${vf_module_type}
+ ${data}= Fill JSON Template ${data_template} ${parameters}
${put_resp}= Run SDNGC Post Request ${SDNGC_INDEX_PATH}${PRELOAD_VNF_TOPOLOGY_OPERATION_PATH} ${data}
- Should Be Equal As Strings ${put_resp.json()['output']['response-code']} 200
+ Should Be Equal As Strings ${put_resp.json()['output']['response-code']} 200
${get_resp}= Run SDNGC Get Request ${SDNGC_INDEX_PATH}${PRELOAD_VNF_CONFIG_PATH}/${vf_module_name}/${vf_module_type}
Should Be Equal As Strings ${get_resp.status_code} 200
${rest} ${suite}= Split String From Right ${SUITE NAME} . 1
${uuid}= Catenate ${uuid}
${hostid}= Get Substring ${uuid} -4
- ${ecompnet}= Evaluate ${GLOBAL_BUILD_NUMBER}%255
+ ${ecompnet}= Evaluate (${GLOBAL_BUILD_NUMBER}%128)+128
+
+
# Initialize the value map with the properties generated from the Robot VM /opt/config folder
- ${valuemap}= Create Dictionary
+ ${valuemap}= Copy Dictionary ${GLOBAL_INJECTED_PROPERTIES}
+
+ # These should be deprecated by the above....
Set To Dictionary ${valuemap} artifacts_version=${GLOBAL_INJECTED_ARTIFACTS_VERSION}
- Set To Dictionary ${valuemap} network=${GLOBAL_INJECTED_NETWORK}
+ Set To Dictionary ${valuemap} network=${GLOBAL_INJECTED_NETWORK}
Set To Dictionary ${valuemap} public_net_id=${GLOBAL_INJECTED_PUBLIC_NET_ID}
Set To Dictionary ${valuemap} cloud_env=${GLOBAL_INJECTED_CLOUD_ENV}
Set To Dictionary ${valuemap} install_script_version=${GLOBAL_INJECTED_SCRIPT_VERSION}
Set To Dictionary ${valuemap} vm_image_name=${GLOBAL_INJECTED_VM_IMAGE_NAME}
Set To Dictionary ${valuemap} vm_flavor_name=${GLOBAL_INJECTED_VM_FLAVOR}
+
+
# update the value map with unique values.
Set To Dictionary ${valuemap} uuid=${uuid} hostid=${hostid} ecompnet=${ecompnet}
- ${parameters}= Create Dictionary
- ${defaults}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} defaults
- Resolve Values Into Dictionary ${valuemap} ${defaults} ${parameters}
+
+ #
+ # Mash together the defaults dict with the test case dict to create the set of
+ # preload parameters
+ #
${suite_templates}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} ${suite}
${template}= Get From Dictionary ${suite_templates} ${template}
- ${vnf_parameters}= Resolve VNF Parameters Into Array ${valuemap} ${template} ${parameters}
+ ${defaults}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} defaults
+ # add all of the defaults to template...
+ @{keys}= Get Dictionary Keys ${defaults}
+ :for ${key} in @{keys}
+ \ ${value}= Get From Dictionary ${defaults} ${key}
+ \ Set To Dictionary ${template} ${key} ${value}
+
+ #
+ # Get the vnf_parameters to preload
+ #
+ ${vnf_parameters}= Resolve VNF Parameters Into Array ${valuemap} ${template}
${vnf_parameters_json}= Evaluate json.dumps(${vnf_parameters}) json
- Set To Dictionary ${parameters} vnf_parameters=${vnf_parameters_json}
+ ${parameters}= Create Dictionary vnf_parameters=${vnf_parameters_json}
[Return] ${parameters}
-
-Resolve Values Into Dictionary
+
+Resolve Values Into Dictionary
[Arguments] ${valuemap} ${from} ${to}
${keys}= Get Dictionary Keys ${from}
:for ${key} in @{keys}
\ Set To Dictionary ${to} ${key} ${value}
Resolve VNF Parameters Into Array
- [Arguments] ${valuemap} ${from} ${to}
+ [Arguments] ${valuemap} ${from}
${vnf_parameters}= Create List
${keys}= Get Dictionary Keys ${from}
:for ${key} in @{keys}
\ ${parameter}= Create Dictionary vnf-parameter-name=${key} vnf-parameter-value=${value}
\ Append To List ${vnf_parameters} ${parameter}
[Return] ${vnf_parameters}
-
+
Preload Vnf Profile
[Arguments] ${vnf_name}
Login To SDNGC Admin GUI
Input Text xpath=//input[@id='nf_availability_zone_count'] 999
Input Text xpath=//input[@id='nf_equipment_role'] robot-ete-test
Click Button xpath=//button[contains(.,'Submit')]
- Page Should Contain VNF Profile
+ Page Should Contain VNF Profile
Input Text xpath=//div[@id='vnf_profile_filter']//input ${vnf_name}
- Page Should Contain ${vnf_name}
+ Page Should Contain ${vnf_name}
Delete Vnf Profile
[Arguments] ${vnf_name}
Login To SDNGC Admin GUI
Go To ${SDNGC_ADMIN_VNF_PROFILE_URL}
- Page Should Contain VNF Profile
+ Page Should Contain VNF Profile
Input Text xpath=//div[@id='vnf_profile_filter']//input ${vnf_name}
Page Should Contain ${vnf_name}
- Click Button xpath=//button[contains(@onclick, '${vnf_name}')]
+ Click Button xpath=//button[contains(@onclick, '${vnf_name}')]
Page Should Contain Are you sure you want to delete VNF_PROFILE
Click Button xpath=//button[contains(text(), 'Yes')]
Page Should Not Contain ${vnf_name}
-
+
Login To SDNGC Admin GUI
[Documentation] Login To SDNGC Admin GUI
- ## Setup Browser is now being managed by the test case
+ ## Setup Browser is now being managed by the test case
## Setup Browser
Go To ${SDNGC_ADMIN_SIGNUP_URL}
##Maximize Browser Window
Log Logging in to ${SDNGC_ADMIN_LOGIN_URL}
Handle Proxy Warning
Title Should Be AdminPortal
- ${uuid}= Generate UUID
+ ${uuid}= Generate UUID
${shortened_uuid}= Evaluate str("${uuid}")[:12]
${email}= Catenate ${shortened_uuid}@robotete.com
Input Text xpath=//input[@id='nf_email'] ${email}
Input Password xpath=//input[@id='password'] ${shortened_uuid}
Click Button xpath=//button[@type='submit']
Title Should Be SDN-C AdminPortal
- Log Logged in to ${SDNGC_ADMIN_LOGIN_URL}
+ Log Logged in to ${SDNGC_ADMIN_LOGIN_URL}
\ No newline at end of file
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
- replicas: {{ .Values.robotReplicas }}
+ replicas: {{ .Values.replicaCount }}
template:
metadata:
- labels:
+ labels:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-inject-demo-project
+ command:
+ - /bin/bash
+ - -c
+ - >
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/heat to /share";
+ cp -rf /tmp/gerrit/heat /share;
+ echo "Done.";
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: demodir
+ mountPath: "/share"
containers:
- - name: {{ .Chart.Name }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- ports:
- - containerPort: {{ .Values.service.internalPort }}
- # disable liveness probe when breakpoints set in debugger
- # so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- - name: robot-eteshare
- mountPath: /share/config
- - name: robot-resources
- mountPath: /var/opt/OpenECOMP_ETE/robot/resources/asdc_interface.robot
- subPath: asdc_interface.robot
- - name: robot-resources
- mountPath: /var/opt/OpenECOMP_ETE/robot/resources/policy_interface.robot
- subPath: policy_interface.robot
- - name: robot-resources
- mountPath: /var/opt/OpenECOMP_ETE/robot/resources/sdngc_interface.robot
- subPath: sdngc_interface.robot
- - name: robot-lighttpd-authorization
- mountPath: /etc/lighttpd/authorization
- subPath: authorization
- resources:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - name: localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: robot-eteshare
+ mountPath: /share/config
+ - name: robot-resources
+ mountPath: /var/opt/OpenECOMP_ETE/robot/resources/policy_interface.robot
+ subPath: policy_interface.robot
+ - name: robot-resources
+ mountPath: /var/opt/OpenECOMP_ETE/robot/resources/sdngc_interface.robot
+ subPath: sdngc_interface.robot
+ - name: robot-resources
+ mountPath: /var/opt/OpenECOMP_ETE/robot/resources/oof_interface.robot
+ subPath: oof_interface.robot
+ - name: robot-lighttpd-authorization
+ mountPath: /etc/lighttpd/authorization
+ subPath: authorization
+ - name: demodir
+ mountPath: /share
+ resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
nodeSelector:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: robot-eteshare
- configMap:
- name: {{ include "common.fullname" . }}-eteshare-configmap
- defaultMode: 0755
- - name: robot-resources
- configMap:
- name: {{ include "common.fullname" . }}-resources-configmap
- - name: robot-lighttpd-authorization
- configMap:
- name: {{ include "common.fullname" . }}-lighttpd-authorization-configmap
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: robot-eteshare
+ configMap:
+ name: {{ include "common.fullname" . }}-eteshare-configmap
+ defaultMode: 0755
+ - name: robot-resources
+ configMap:
+ name: {{ include "common.fullname" . }}-resources-configmap
+ - name: robot-lighttpd-authorization
+ configMap:
+ name: {{ include "common.fullname" . }}-lighttpd-authorization-configmap
+ - name: demodir
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
type: {{ .Values.service.type }}
ports:
{{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort }}
- name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | default "http" }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName | default "http" }}
{{- end}}
selector:
app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
+ release: {{ .Release.Name }}
\ No newline at end of file
#################################################################
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ ubuntuInitRepository: registry.hub.docker.com
# application image
repository: nexus3.onap.org:10001
-image: openecomp/testsuite:1.2-STAGING-latest
+image: onap/testsuite:1.2-STAGING-latest
pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
# flag to enable debugging - application support required
debugEnabled: false
#################################################################
# Application configuration defaults.
#################################################################
-
-# openstack configuration
-
+config:
+ # Username of the lighthttpd server. Used for HTML auth for webpage access
+ lightHttpdUsername: robot
+ # Password of the lighthttpd server. Used for HTML auth for webpage access
+ lightHttpdPassword: robot
+ # gerrit branch where the latest heat code is checked in
+ gerritBranch: master
+ # gerrit project where the latest heat code is checked in
+ gerritProject: http://gerrit.onap.org/r/demo.git
+
+
+# Demo configuration
+# Nexus demo artifact version. Maps to GLOBAL_INJECTED_ARTIFACTS_VERSION
demoArtifactsVersion: "1.2.0-SNAPSHOT"
-openStackPrivateNetCidr: "192.168.30.0"
+# Openstack medium sized flavour name. Maps GLOBAL_INJECTED_VM_FLAVOR
openStackFlavourMedium: "m1.medium"
+# Openstack keystone URL. Maps to GLOBAL_INJECTED_KEYSTONE
openStackKeyStoneUrl: "http://1.2.3.4:5000"
+# UUID of the Openstack network that can assign floating ips. Maps to GLOBAL_INJECTED_PUBLIC_NET_ID
openStackPublicNetId: "e8f51958045716781ffc"
-openStackPrivateNetId: "e8f51956-00dd-4425-af36-045716781ffc"
-openStackOamNetworkCidrPrefix: "192.168.120"
-openStackEncryptedPassword: "c124921a3a0efbe579782cde8227681e"
+# password for Openstack tenant where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_PASSWORD
+openStackPassword: "tenantPassword"
+# Openstack region. Maps to GLOBAL_INJECTED_REGION
openStackRegion: "RegionOne"
-openStackPrivateSubnetId: "e8f51956-00dd-4425-af36-045716781ffc"
+# Openstack tenant UUID where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_TENANT_ID
openStackTenantId: "47899782ed714295b1151681fdfd51f5"
-openStackUserName: "vnf_user"
-ubuntuImage: "Ubuntu_14.04.5_LTS"
-scriptVersion: "1.1.1"
+# username for Openstack tenant where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_USERNAME
+openStackUserName: "tenantUsername"
+# Openstack glance image name for Ubuntu 14. Maps to GLOBAL_INJECTED_UBUNTU_1404_IMAGE
+ubuntu14Image: "Ubuntu_14_trusty"
+# Openstack glance image name for Ubuntu 16. Maps to GLOBAL_INJECTED_UBUNTU_1604_IMAGE
+ubuntu16Image: "Ubuntu_16_xenial"
+# GLOBAL_INJECTED_SCRIPT_VERSION. Maps to GLOBAL_INJECTED_SCRIPT_VERSION
+scriptVersion: "1.2.0-SNAPSHOT"
+# Openstack network to which VNFs will bind their primary (first) interface. Maps to GLOBAL_INJECTED_NETWORK
+openStackPrivateNetId: "e8f51956-00dd-4425-af36-045716781ffc"
+
+# SDNC Preload configuration
+# Openstack subnet UUID for the network defined by openStackPrivateNetId. Maps to onap_private_subnet_id
+openStackPrivateSubnetId: "e8f51956-00dd-4425-af36-045716781ffc"
+# CIDR notation for the Openstack private network where VNFs will be spawned. Maps to onap_private_net_cidr
+openStackPrivateNetCidr: "10.0.0.0/8"
+# The first 2 octets of the private Openstack subnet where VNFs will be spawned.
+# Needed because sdnc preload templates hardcodes things like this 10.0.${ecompnet}.X
+openStackOamNetworkCidrPrefix: "10.0"
+# Override with Pub Key for access to VNF
+vnfPubKey: "FILL_IN_WITH_PUB_KEY"
+# Override with DCAE VES Collector external IP
+dcaeCollectorIp: "FILL_IN_WITH_DCAE_VES_COLLECTOR_IP"
# default number of instances
-robotReplicas: 1
+replicaCount: 1
nodeSelector: {}
service:
- type: NodePort
name: robot
- externalPort: "09"
+ type: NodePort
+ portName: httpd
+ externalPort: 88
internalPort: 88
+ nodePort: "09"
ingress:
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: Service Design and Creation Umbrella Helm charts
name: sdc
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Backend API
+name: sdc-be
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-onboarding-be"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-es-config-elasticsearch
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - "/var/lib/ready-probe.sh"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: JAVA_OPTIONS
+ value: {{ .Values.config.javaOptions }}
+ - name: cassandra_ssl_enabled
+ value: {{ .Values.config.cassandraSslEnabled | quote }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config-backend
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ backoffLimit: 20
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - sdc-be
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.backendInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort2 }}",
+ "visualRange":"1"
+ },
+ {
+ "serviceName": "sdc-deprecated",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort2 }}",
+ "visualRange":"1",
+ "path":"/sdc/v1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-backend:1.2-STAGING-latest
+backendInitImage: onap/sdc-backend-init:1.2-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+config:
+ javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=4000,server=y,suspend=n -Xmx1536m -Xms1536m"
+ cassandraSslEnabled: "false"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sdc-be
+ portName: sdc-be
+ nodePort: "04"
+ internalPort: 8443
+ nodePort2: "05"
+ internalPort2: 8080
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Cassandra
+name: sdc-cs
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - "/var/lib/ready-probe.sh"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: RELEASE
+ value: {{ .Values.config.release }}
+ - name: MAX_HEAP_SIZE
+ value: {{ .Values.config.maxHeapSize }}
+ - name: HEAP_NEWSIZE
+ value: {{ .Values.config.heapNewSize }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: CS_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: cs_password}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config-cassandra
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ backoffLimit: 20
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - sdc-cs
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.cassandraInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/
+ - name: {{ include "common.fullname" . }}-chef-cache
+ mountPath: /root/chef-solo/cache
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: RELEASE
+ value: {{ .Values.config.release }}
+ - name: SDC_USER
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_user}
+ - name: SDC_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_password}
+ - name: CS_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: cs_password}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: {{ include "common.fullname" . }}-chef-cache
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-cassandra:1.2-STAGING-latest
+cassandraInitImage: onap/sdc-cassandra-init:1.2-STAGING-latest
+
+pullPolicy: Always
+
+config:
+ release: latest
+ maxHeapSize: "1536M"
+ heapNewSize: "512M"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-cs
+ portName: sdc-cs
+ externalPort: 9160
+ internalPort: 9160
+ externalPort2: 9042
+ internalPort2: 9042
+
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: /sdc/sdc-cs/CS
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Elasticsearch
+name: sdc-es
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ httpGet:
+ path: "_cluster/health?wait_for_status=yellow&timeout=120s"
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: ES_HEAP_SIZE
+ value: {{ .Values.config.JvmHeapSize }}
+ - name: ES_JAVA_OPTS
+ value: {{ .Values.config.JvmOptions }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /usr/share/elasticsearch/data/
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ {{- if .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config-elasticsearch
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ backoffLimit: 20
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - sdc-es
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.elasticInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuInitRepository: oomk8s
+ ubuntuInitImage: ubuntu-init:1.0.0
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-elasticsearch:1.2-STAGING-latest
+elasticInitImage: onap/sdc-init-elasticsearch:1.2-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ JvmHeapSize: "1024M"
+ JvmOptions: "-Xms512m -Xmx512m"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-es
+ portName: sdc-es
+ externalPort: 9200
+ internalPort: 9200
+ externalPort2: 9300
+ internalPort2: 9300
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: /sdc/sdc-es/ES
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Front End
+name: sdc-fe
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>\r
+<configuration scan="true" scanPeriod="3 seconds">\r
+ <property name="logDir" value="/var/log/onap" />\r
+ <property name="componentName" scope="system" value="sdc"></property>\r
+ <property name="subComponentName" scope="system" value="sdc-fe"></property>\r
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
+ <property file="${config.home}/catalog-fe/configuration.yaml" />\r
+ <property name="enable-all-log" scope="context" value="false" />\r
+ <!-- log file names -->\r
+ <property name="errorLogName" value="error" />\r
+ <property name="metricsLogName" value="metrics" />\r
+ <property name="auditLogName" value="audit" />\r
+ <property name="debugLogName" value="debug" />\r
+ <property name="transactionLogName" value="transaction" />\r
+ <property name="allLogName" value="all" />\r
+ <property name="queueSize" value="256" />\r
+ <property name="maxFileSize" value="50MB" />\r
+ <property name="maxHistory" value="30" />\r
+ <property name="totalSizeCap" value="10GB" />\r
+ <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
+ <!-- All log -->\r
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
+ <then>\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ALL_ROLLING">\r
+ <file>${logDirectory}/${allLogName}.log</file>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${allLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">\r
+ <appender-ref ref="ALL_ROLLING" />\r
+ </appender>\r
+ </then>\r
+ </if>\r
+ <!-- Error log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR_ROLLING">\r
+ <file>${logDirectory}/${errorLogName}.log</file>\r
+ <!-- Audit messages filter - deny audit messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>AUDIT_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>NEUTRAL</onMismatch>\r
+ <onMatch>DENY</onMatch>\r
+ </filter>\r
+ <!-- Transaction messages filter - deny Transaction messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>TRANSACTION_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>NEUTRAL</onMismatch>\r
+ <onMatch>DENY</onMatch>\r
+ </filter>\r
+ <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->\r
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
+ <level>INFO</level>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- Debug log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG_ROLLING">\r
+ <file>${logDirectory}/${debugLogName}.log</file>\r
+ <!-- No need to deny audit messages - they are INFO only, will be denied\r
+ anyway -->\r
+ <!-- Transaction messages filter - deny Transaction messages, there are\r
+ some DEBUG level messages among them -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>TRANSACTION_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>NEUTRAL</onMismatch>\r
+ <onMatch>DENY</onMatch>\r
+ </filter>\r
+ <!-- accept DEBUG and TRACE level -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">\r
+ <expression>e.level.toInt() <= DEBUG.toInt()</expression>\r
+ </evaluator>\r
+ <OnMismatch>DENY</OnMismatch>\r
+ <OnMatch>NEUTRAL</OnMatch>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- Audit log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT_ROLLING">\r
+ <file>${logDirectory}/${auditLogName}.log</file>\r
+ <!-- Audit messages filter - accept audit messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>AUDIT_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>DENY</onMismatch>\r
+ <onMatch>ACCEPT</onMatch>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- SdncTransaction log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="TRANSACTION_ROLLING">\r
+ <file>${logDirectory}/${transactionLogName}.log</file>\r
+ <!-- Transaction messages filter - accept audit messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>TRANSACTION_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>DENY</onMismatch>\r
+ <onMatch>ACCEPT</onMatch>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${transactionLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- Asynchronicity Configurations -->\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="DEBUG_ROLLING" />\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="TRANSACTION_ROLLING" />\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="ERROR_ROLLING" />\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="AUDIT_ROLLING" />\r
+ </appender>\r
+ <root level="INFO">\r
+ <appender-ref ref="ASYNC_ERROR" />\r
+ <appender-ref ref="ASYNC_DEBUG" />\r
+ <appender-ref ref="ASYNC_AUDIT" />\r
+ <appender-ref ref="ASYNC_TRANSACTION" />\r
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
+ <then>\r
+ <appender-ref ref="ALL_ROLLING" />\r
+ </then>\r
+ </if>\r
+ </root>\r
+ <logger level="INFO" name="org.openecomp.sdc" />\r
+</configuration>
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-kb"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-be-config-backend
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: JAVA_OPTIONS
+ value: {{ .Values.config.javaOptions }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc-gui",
+ "version": "v1",
+ "url": "/sdc1",
+ "protocol": "UI",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"0|1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-frontend:1.2-STAGING-latest
+pullPolicy: Always
+
+config:
+ javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=6000,server=y,suspend=n -Xmx256m -Xms256m"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: sdc-fe
+ portName: sdc-fe
+ nodePort: "06"
+ internalPort: 8181
+ nodePort2: "07"
+ internalPort2: 9443
+
+
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
+
+
+#TODO:REMOVE
+sdc-kb.yaml
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Kibana
+name: sdc-kb
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-es-config-elasticsearch
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: NODE_OPTIONS
+ value: {{ .Values.config.nodeOptions }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-kibana:1.2-STAGING-latest
+pullPolicy: Always
+
+config:
+ nodeOptions: "--max-old-space-size=200"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: false
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-kb
+ portName: sdc-kb
+ externalPort: 5601
+ internalPort: 5601
+
+
+sdc-es:
+ service:
+ name: sdc-es
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Onboarding API
+name: sdc-onboarding-be
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>\r
+<configuration scan="true" scanPeriod="3 seconds">\r
+ <property name="logDir" value="/var/log/onap" />\r
+ <property name="componentName" scope="system" value="sdc"></property>\r
+ <property name="subComponentName" scope="system" value="sdc-onboarding-be"></property>\r
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
+ <property file="${config.home}/catalog-be/configuration.yaml" />\r
+ <property name="enable-all-log" scope="context" value="false" />\r
+ <!-- log file names -->\r
+ <property name="errorLogName" value="error" />\r
+ <property name="metricsLogName" value="metrics" />\r
+ <property name="auditLogName" value="audit" />\r
+ <property name="debugLogName" value="debug" />\r
+ <property name="transactionLogName" value="transaction" />\r
+ <property name="allLogName" value="all" />\r
+ <property name="queueSize" value="256" />\r
+ <property name="maxFileSize" value="50MB" />\r
+ <property name="maxHistory" value="30" />\r
+ <property name="totalSizeCap" value="10GB" />\r
+ <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
+ <!-- All log -->\r
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
+ <then>\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ALL_ROLLING">\r
+ <file>${logDirectory}/${allLogName}.log</file>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${allLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">\r
+ <appender-ref ref="ALL_ROLLING" />\r
+ </appender>\r
+ </then>\r
+ </if>\r
+ <!-- Error log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR_ROLLING">\r
+ <file>${logDirectory}/${errorLogName}.log</file>\r
+ <!-- Audit messages filter - deny audit messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>AUDIT_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>NEUTRAL</onMismatch>\r
+ <onMatch>DENY</onMatch>\r
+ </filter>\r
+ <!-- Transaction messages filter - deny Transaction messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>TRANSACTION_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>NEUTRAL</onMismatch>\r
+ <onMatch>DENY</onMatch>\r
+ </filter>\r
+ <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->\r
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
+ <level>INFO</level>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- Debug log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG_ROLLING">\r
+ <file>${logDirectory}/${debugLogName}.log</file>\r
+ <!-- No need to deny audit messages - they are INFO only, will be denied \r
+ anyway -->\r
+ <!-- Transaction messages filter - deny Transaction messages, there are \r
+ some DEBUG level messages among them -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>TRANSACTION_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>NEUTRAL</onMismatch>\r
+ <onMatch>DENY</onMatch>\r
+ </filter>\r
+ <!-- accept DEBUG and TRACE level -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">\r
+ <expression>e.level.toInt() <= DEBUG.toInt()</expression>\r
+ </evaluator>\r
+ <OnMismatch>DENY</OnMismatch>\r
+ <OnMatch>NEUTRAL</OnMatch>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- Audit log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT_ROLLING">\r
+ <file>${logDirectory}/${auditLogName}.log</file>\r
+ <!-- Audit messages filter - accept audit messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>AUDIT_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>DENY</onMismatch>\r
+ <onMatch>ACCEPT</onMatch>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- SdncTransaction log -->\r
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="TRANSACTION_ROLLING">\r
+ <file>${logDirectory}/${transactionLogName}.log</file>\r
+ <!-- Transaction messages filter - accept audit messages -->\r
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
+ <marker>TRANSACTION_MARKER</marker>\r
+ </evaluator>\r
+ <onMismatch>DENY</onMismatch>\r
+ <onMatch>ACCEPT</onMatch>\r
+ </filter>\r
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+ <fileNamePattern>${logDirectory}/${transactionLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
+ <maxFileSize>${maxFileSize}</maxFileSize>\r
+ </timeBasedFileNamingAndTriggeringPolicy>\r
+ <maxHistory>${maxHistory}</maxHistory>\r
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
+ </rollingPolicy>\r
+ <encoder>\r
+ <pattern>${pattern}</pattern>\r
+ </encoder>\r
+ </appender>\r
+ <!-- Asynchronicity Configurations -->\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="DEBUG_ROLLING" />\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="TRANSACTION_ROLLING" />\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="ERROR_ROLLING" />\r
+ </appender>\r
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">\r
+ <queueSize>${queueSize}</queueSize>\r
+ <appender-ref ref="AUDIT_ROLLING" />\r
+ </appender>\r
+ <root level="INFO">\r
+ <appender-ref ref="ASYNC_ERROR" />\r
+ <appender-ref ref="ASYNC_DEBUG" />\r
+ <appender-ref ref="ASYNC_AUDIT" />\r
+ <appender-ref ref="ASYNC_TRANSACTION" />\r
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
+ <then>\r
+ <appender-ref ref="ALL_ROLLING" />\r
+ </then>\r
+ </if>\r
+ </root>\r
+ <logger level="INFO" name="org.openecomp.sdc" />\r
+</configuration>
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-onboarding-be-cassandra-init
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - "/var/lib/ready-probe.sh"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: JAVA_OPTIONS
+ value: {{ .Values.config.javaOptions }}
+ - name: SDC_CLUSTER_NAME
+ value: "SDC-CS-{{ .Values.global.env.name }}"
+ - name: cassandra_ssl_enabled
+ value: {{ .Values.config.cassandraSslEnabled | quote }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SDC_USER
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_user}
+ - name: SDC_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_password}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/onboarding-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-cassandra-init
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ backoffLimit: 20
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-cs-config-cassandra
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.onboardingInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SDC_USER
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_user}
+ - name: SDC_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_password}
+ - name: CS_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: cs_password}
+ - name: CS_HOST_IP
+ value: "sdc-cs"
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | default "http" }}
+
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName | default "http" }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName | default "http" }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName | default "http" }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-onboard-backend:1.2-STAGING-latest
+onboardingInitImage: onap/sdc-onboard-cassandra-init:1.2-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+config:
+ javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=4001,server=y,suspend=n -Xmx1g -Xms1g"
+ cassandraSslEnabled: "false"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-onboarding-be
+ portName: sdc-onboarding-be
+ internalPort: 8445
+ externalPort: 8445
+ internalPort2: 8081
+ externalPort2: 8081
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: /sdc/sdc-cs/CS
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2018 ZTE
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Service Design and Creation Common Workflow Design
+name: sdc-wfd
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+
--- /dev/null
+# Copyright © 2018 ZTE
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright © 2018 ZTE
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "workflow-modeler",
+ "version": "v1",
+ "url": "/api/workflow-modeler/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort }}",
+ "enable_ssl": true,
+ "visualRange":"1"
+ },
+ {
+ "serviceName": "workflow-modeler-ui",
+ "version": "v1",
+ "url": "/workflow-modeler",
+ "protocol": "UI",
+ "path": "/workflow-modeler",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2018 ZTE
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc/sdc-workflow-designer:1.1.0-SNAPSHOT-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sdc-wfd
+ portName: sdc-wfd
+ nodePort: "56"
+ internalPort: 8080
+
+ingress:
+ enabled: false
+
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
{
- "name": "AUTO",
- "description": "OpenSource-AUTO",
- "cookbook_versions": {
- "Deploy-SDandC": "= 1.0.0"
- },
- "json_class": "Chef::Environment",
- "chef_type": "environment",
+ "name": "{{ .Values.global.env.name }}",
+ "description": "OpenSource-{{ .Values.global.env.name }}",
+ "cookbook_versions": {
+ "Deploy-SDandC": "= 1.0.0"
+ },
+ "json_class": "Chef::Environment",
+ "chef_type": "environment",
+
+ "default_attributes": {
+ "disableHttp": false,
+ "CS_VIP": "sdc-cs.{{include "common.namespace" .}}",
+ "BE_VIP": "sdc-be.{{include "common.namespace" .}}",
+ "ONBOARDING_BE_VIP": "sdc-onboarding-be.{{include "common.namespace" .}}",
+ "FE_VIP": "sdc-fe.{{include "common.namespace" .}}",
+ "ES_VIP": "sdc-es.{{include "common.namespace" .}}",
+ "KB_VIP": "sdc-kb.{{include "common.namespace" .}}",
- "default_attributes": {
- "CS_VIP": "sdc-cs.{{.Values.nsPrefix}}",
- "BE_VIP": "sdc-be.{{.Values.nsPrefix}}",
- "FE_VIP": "sdc-fe.{{.Values.nsPrefix}}",
- "ES_VIP": "sdc-es.{{.Values.nsPrefix}}",
"interfaces": {
"application": "eth0",
"private": "eth0"
},
- "ECompP": {
- "ecomp_rest_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi",
- "ueb_url_list": "dmaap.{{.Values.nsPrefix}}, dmaap.{{.Values.nsPrefix}}",
+ "ECompP": {
+ "ecomp_rest_url": "http://portal-app.{{include "common.namespace" .}}:8989/ONAPPORTAL/auxapi",
+ "ueb_url_list": "message-router.{{include "common.namespace" .}}, message-router.{{include "common.namespace" .}}",
"app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
"app_key": "x9UfO7JsDn8BESVX",
"inbox_name": "ECOMP-PORTAL-INBOX",
- "ecomp_redirect_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm",
+ "ecomp_redirect_url": "http://portal-app.{{include "common.namespace" .}}:8989/ONAPPORTAL/login.htm",
"app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
- "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
+ "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
},
"UEB": {
"PublicKey": "iPIxkpAMI8qTcQj8",
"SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
- "fqdn": ["dmaap.{{.Values.nsPrefix}}", "dmaap.{{.Values.nsPrefix}}"]
+ "fqdn": [
+ "message-router.{{include "common.namespace" .}}",
+ "message-router.{{include "common.namespace" .}}"
+ ]
},
"Nodes": {
- "CS": "sdc-cs.{{.Values.nsPrefix}}",
- "BE": "sdc-be.{{.Values.nsPrefix}}",
- "FE": "sdc-fe.{{.Values.nsPrefix}}",
- "ES": "sdc-es.{{.Values.nsPrefix}}"
+ "CS": [
+ "sdc-cs.{{include "common.namespace" .}}"
+ ],
+ "BE": "sdc-be.{{include "common.namespace" .}}",
+ "ONBOARDING_BE": "sdc-onboarding-be.{{include "common.namespace" .}}",
+ "FE": "sdc-fe.{{include "common.namespace" .}}",
+ "ES": [
+ "sdc-es.{{include "common.namespace" .}}"
+ ],
+ "KB": "sdc-kb.{{include "common.namespace" .}}"
+ },
+ "Plugins": {
+ "DCAE": {
+ "dcae_discovery_url": "{{.Values.config.environment.dcaeUrl}}",
+ "dcae_source_url": "{{.Values.config.environment.dcaeUrl}}"
+ },
+ "WORKFLOW": {
+ "workflow_discovery_url": "{{.Values.config.environment.workflowUrl}}",
+ "workflow_source_url": "{{.Values.config.environment.workflowUrl}}"
+ }
+ },
+ "VnfRepo": {
+ "vnfRepoPort": "{{.Values.config.environment.vnfRepoPort}}",
+ "vnfRepoHost": "refrepo.{{include "common.namespace" .}}"
}
},
"override_attributes": {
"http_port": "8080",
"https_port": "8443"
},
+ "ONBOARDING_BE": {
+ "http_port": "8081",
+ "https_port": "8445"
+ },
"elasticsearch": {
"cluster_name": "SDC-ES-",
"ES_path_home": "/usr/share/elasticsearch",
"cache_dir": "/var/lib/cassandra/saved_caches",
"log_file": "/var/lib/cassandra/log/system.log",
"phi_convict_threshold": "8",
- "commitlog_dir": "/var/lib/cassandra/commitlog"
+ "commitlog_dir": "/var/lib/cassandra/commitlog",
+ "socket_read_timeout": "20000",
+ "socket_connect_timeout": "20000",
+ "titan_connection_timeout": "10000"
}
}
}
+++ /dev/null
-{
- "name": "xxx",
- "description": "OpenSource-xxx",
- "cookbook_versions": {
- "Deploy-SDandC": "= 1.0.0"
- },
- "json_class": "Chef::Environment",
- "chef_type": "environment",
-
- "default_attributes": {
- "CS_VIP": "yyy",
- "BE_VIP": "yyy",
- "FE_VIP": "yyy",
- "ES_VIP": "yyy",
- "interfaces": {
- "application": "eth0",
- "private": "eth1"
- },
- "ECompP": {
- "ecomp_rest_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi",
- "ueb_url_list": "dmaap.{{.Values.nsPrefix}},dmaap.{{.Values.nsPrefix}}",
- "app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
- "app_key": "x9UfO7JsDn8BESVX",
- "inbox_name": "ECOMP-PORTAL-INBOX",
- "ecomp_redirect_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm",
- "app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
- "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
- },
- "UEB": {
- "PublicKey": "iPIxkpAMI8qTcQj8",
- "SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
- "fqdn": ["dmaap.{{.Values.nsPrefix}}", "dmaap.{{.Values.nsPrefix}}"]
- },
- "Nodes": {
- "CS": "yyy",
- "BE": "yyy",
- "FE": "yyy",
- "ES": "yyy"
- }
- },
- "override_attributes": {
- "FE": {
- "http_port": "8181",
- "https_port": "9443"
- },
- "BE": {
- "http_port": "8080",
- "https_port": "8443"
- },
- "elasticsearch": {
- "cluster_name": "SDC-ES-",
- "ES_path_home": "/usr/share/elasticsearch",
- "ES_path_data": "/usr/share/elasticsearch/data",
- "num_of_replicas": "0",
- "num_of_shards": "1"
- },
-
- "cassandra": {
- "concurrent_reads": "32",
- "num_tokens": "256",
- "data_dir": "/var/lib/cassandra/data",
- "hinted_handoff_enabled": "true",
- "cassandra_user": "asdc_user",
- "cassandra_password": "Aa1234%^!",
- "concurrent_writes": "32",
- "cluster_name": "SDC-CS-",
- "multithreaded_compaction": "false",
- "cache_dir": "/var/lib/cassandra/saved_caches",
- "log_file": "/var/lib/cassandra/log/system.log",
- "phi_convict_threshold": "8",
- "commitlog_dir": "/var/lib/cassandra/commitlog"
- }
- }
-}
-
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>\r
-<configuration scan="true" scanPeriod="3 seconds">\r
- <property name="logDir" value="/var/log/onap" />\r
- <property name="componentName" scope="system" value="sdc"></property>\r
- <property name="subComponentName" scope="system" value="sdc-fe"></property>\r
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
- <property file="${config.home}/catalog-fe/configuration.yaml" />\r
- <property name="enable-all-log" scope="context" value="false" />\r
- <!-- log file names -->\r
- <property name="errorLogName" value="error" />\r
- <property name="metricsLogName" value="metrics" />\r
- <property name="auditLogName" value="audit" />\r
- <property name="debugLogName" value="debug" />\r
- <property name="transactionLogName" value="transaction" />\r
- <property name="allLogName" value="all" />\r
- <property name="queueSize" value="256" />\r
- <property name="maxFileSize" value="50MB" />\r
- <property name="maxHistory" value="30" />\r
- <property name="totalSizeCap" value="10GB" />\r
- <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
- <!-- All log -->\r
- <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
- <then>\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ALL_ROLLING">\r
- <file>${logDirectory}/${allLogName}.log</file>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${allLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">\r
- <appender-ref ref="ALL_ROLLING" />\r
- </appender>\r
- </then>\r
- </if>\r
- <!-- Error log -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR_ROLLING">\r
- <file>${logDirectory}/${errorLogName}.log</file>\r
- <!-- Audit messages filter - deny audit messages -->\r
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
- <marker>AUDIT_MARKER</marker>\r
- </evaluator>\r
- <onMismatch>NEUTRAL</onMismatch>\r
- <onMatch>DENY</onMatch>\r
- </filter>\r
- <!-- Transaction messages filter - deny Transaction messages -->\r
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
- <marker>TRANSACTION_MARKER</marker>\r
- </evaluator>\r
- <onMismatch>NEUTRAL</onMismatch>\r
- <onMatch>DENY</onMatch>\r
- </filter>\r
- <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->\r
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
- <level>INFO</level>\r
- </filter>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- Debug log -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG_ROLLING">\r
- <file>${logDirectory}/${debugLogName}.log</file>\r
- <!-- No need to deny audit messages - they are INFO only, will be denied \r
- anyway -->\r
- <!-- Transaction messages filter - deny Transaction messages, there are \r
- some DEBUG level messages among them -->\r
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
- <marker>TRANSACTION_MARKER</marker>\r
- </evaluator>\r
- <onMismatch>NEUTRAL</onMismatch>\r
- <onMatch>DENY</onMatch>\r
- </filter>\r
- <!-- accept DEBUG and TRACE level -->\r
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
- <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">\r
- <expression>e.level.toInt() <= DEBUG.toInt()</expression>\r
- </evaluator>\r
- <OnMismatch>DENY</OnMismatch>\r
- <OnMatch>NEUTRAL</OnMatch>\r
- </filter>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- Audit log -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT_ROLLING">\r
- <file>${logDirectory}/${auditLogName}.log</file>\r
- <!-- Audit messages filter - accept audit messages -->\r
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
- <marker>AUDIT_MARKER</marker>\r
- </evaluator>\r
- <onMismatch>DENY</onMismatch>\r
- <onMatch>ACCEPT</onMatch>\r
- </filter>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- SdncTransaction log -->\r
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="TRANSACTION_ROLLING">\r
- <file>${logDirectory}/${transactionLogName}.log</file>\r
- <!-- Transaction messages filter - accept audit messages -->\r
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
- <marker>TRANSACTION_MARKER</marker>\r
- </evaluator>\r
- <onMismatch>DENY</onMismatch>\r
- <onMatch>ACCEPT</onMatch>\r
- </filter>\r
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
- <fileNamePattern>${logDirectory}/${transactionLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
- <maxFileSize>${maxFileSize}</maxFileSize>\r
- </timeBasedFileNamingAndTriggeringPolicy>\r
- <maxHistory>${maxHistory}</maxHistory>\r
- <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
- </rollingPolicy>\r
- <encoder>\r
- <pattern>${pattern}</pattern>\r
- </encoder>\r
- </appender>\r
- <!-- Asynchronicity Configurations -->\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="DEBUG_ROLLING" />\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="TRANSACTION_ROLLING" />\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="ERROR_ROLLING" />\r
- </appender>\r
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">\r
- <queueSize>${queueSize}</queueSize>\r
- <appender-ref ref="AUDIT_ROLLING" />\r
- </appender>\r
- <root level="INFO">\r
- <appender-ref ref="ASYNC_ERROR" />\r
- <appender-ref ref="ASYNC_DEBUG" />\r
- <appender-ref ref="ASYNC_AUDIT" />\r
- <appender-ref ref="ASYNC_TRANSACTION" />\r
- <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
- <then>\r
- <appender-ref ref="ALL_ROLLING" />\r
- </then>\r
- </if>\r
- </root>\r
- <logger level="INFO" name="org.openecomp.sdc" />\r
-</configuration>
\ No newline at end of file
+++ /dev/null
-jetty_base="/var/lib/jetty"
-template "catalog-fe-config" do
- path "#{jetty_base}/config/catalog-fe/configuration.yaml"
- source "FE-configuration.yaml.erb"
- owner "jetty"
- group "jetty"
- mode "0755"
- variables({
- :fe_host_ip => node['HOST_IP'],
- :be_host_ip => "sdc-be.{{.Values.nsPrefix}}",
- :catalog_port => node['BE'][:http_port],
- :ssl_port => node['BE'][:https_port]
- })
-end
-
-template "onboarding-fe-config" do
- path "#{jetty_base}/config/onboarding-fe/onboarding_configuration.yaml"
- source "FE-onboarding-configuration.yaml.erb"
- owner "jetty"
- group "jetty"
- mode "0755"
- variables({
- :catalog_ip => node['HOST_IP'],
- :catalog_port => node['BE'][:http_port],
- :ssl_port => node['BE'][:https_port]
-})
-end
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcEs }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-es
- name: sdc-es
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-es-port-9200
- port: 9200
- - name: sdc-es-port-9300
- port: 9300
- selector:
- app: sdc-es
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcCs }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-cs-port-9042
- port: 9042
- - name: sdc-cs-port-9160
- port: 9160
- selector:
- app: sdc-cs
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcKb }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-kb-port-5601
- port: 5601
- selector:
- app: sdc-kb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcBe }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-be
- name: sdc-be
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdc",
- "version": "v1",
- "url": "/sdc/v1",
- "protocol": "REST",
- "port": "8080",
- "visualRange":"1"
- },
- {
- "serviceName": "sdc-deprecated",
- "version": "v1",
- "url": "/sdc/v1",
- "protocol": "REST",
- "port": "8080",
- "visualRange":"1",
- "path":"/sdc/v1"
- }
- ]'
-spec:
- ports:
- - name: sdc-be-port-8443
- nodePort: {{ .Values.nodePortPrefix }}04
- port: 8443
- - name: sdc-be-port-8080
- nodePort: {{ .Values.nodePortPrefix }}05
- port: 8080
- selector:
- app: sdc-be
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableSdcSdcFe }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdc-gui",
- "version": "v1",
- "url": "/sdc1",
- "protocol": "UI",
- "port": "8181",
- "visualRange":"0|1"
- }
- ]'
-spec:
- ports:
- - name: sdc-fe-port-9443
- nodePort: {{ .Values.nodePortPrefix }}07
- port: 9443
- - name: sdc-fe-port-8181
- nodePort: {{ .Values.nodePortPrefix }}06
- port: 8181
- selector:
- app: sdc-fe
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/environments/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcBe }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-be
- name: sdc-be
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-be
- template:
- metadata:
- labels:
- app: sdc-be
- name: sdc-be
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- - --container-name
- - sdc-kb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-be-readiness
- - command:
- - /root/ready.py
- args:
- - --container-name
- - dmaap
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-dmaap-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- image: {{ .Values.image.sdcBackend }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-be
- volumeMounts:
- - mountPath: /usr/share/elasticsearch/data/
- name: sdc-sdc-es-es
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /tmp/logback.xml
- name: sdc-logback
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 8443
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8443
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /usr/share/filebeat/data
- name: sdc-data-filebeat
- volumes:
- - name: filebeat-conf
- configMap:
- name: sdc-filebeat-configmap
- - name: sdc-logs-2
- emptyDir: {}
- - name: sdc-data-filebeat
- emptyDir: {}
- - name: sdc-logback
- configMap:
- name : sdc-log-be-configmap
- - name: sdc-sdc-es-es
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcCs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-cs
- template:
- metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-cs-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: ES_HEAP_SIZE
- value: "1024M"
- image: {{ .Values.image.sdcCassandra }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-cs
- volumeMounts:
- - mountPath: /var/lib/cassandra/
- name: sdc-sdc-cs-cs
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 9042
- - containerPort: 9160
- readinessProbe:
- tcpSocket:
- port: 9160
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-sdc-cs-cs
- persistentVolumeClaim:
- claimName: sdc-cs-db
- - name: sdc-environments
- configMap:
- name : sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcBe }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdc-environments-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/environments/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcEs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-es
- name: sdc-es
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-es
- template:
- metadata:
- labels:
- app: sdc-es
- name: sdc-es
- spec:
- initContainers:
- - name: sdc-logs-init
- image: {{ .Values.image.ubuntuInit }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - /bin/bash
- - "-c"
- - |
- mkdir -p /ubuntu-init/ASDC/ASDC-ES/
- mkdir -p /ubuntu-init/ASDC/ASDC-CS/
- mkdir -p /ubuntu-init/ASDC/ASDC-KB/
- mkdir -p /ubuntu-init/ASDC/ASDC-BE/
- mkdir -p /ubuntu-init/ASDC/ASDC-FE/
- chmod -R 777 /ubuntu-init/
- containers:
- - image: {{ .Values.image.sdcElasticsearch }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-es
- env:
- - name: ENVNAME
- value: "AUTO"
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: ES_HEAP_SIZE
- value: "1024M"
- volumeMounts:
- - name: sdc-logs
- mountPath: /ubuntu-init/
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 9200
- - containerPort: 9300
- readinessProbe:
- tcpSocket:
- port: 9200
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-environments
- configMap :
- name : sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcFe }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdc-fe-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/sdc-fe/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcFe }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-fe
- template:
- metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- - --container-name
- - sdc-kb
- - --container-name
- - sdc-be
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-fe-readiness
- containers:
- - name: sdc-fe
- env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- image: {{ .Values.image.sdcFrontend }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /usr/share/elasticsearch/data/
- name: sdc-sdc-es-es
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /root/chef-solo/cookbooks/sdc-catalog-fe/recipes/FE_2_setup_configuration.rb
- name: sdc-fe-config
- subPath: FE_2_setup_configuration.rb
- - mountPath: /tmp/logback.xml
- name: sdc-logback
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 9443
- - containerPort: 8181
- readinessProbe:
- tcpSocket:
- port: 8181
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /usr/share/filebeat/data
- name: sdc-data-filebeat
- volumes:
- - name: filebeat-conf
- configMap:
- name : sdc-filebeat-configmap
- - name: sdc-logs-2
- emptyDir: {}
- - name: sdc-data-filebeat
- emptyDir: {}
- - name: sdc-logback
- configMap:
- name : sdc-log-fe-configmap
- - name: sdc-sdc-es-es
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- - name: sdc-fe-config
- configMap:
- name: sdc-fe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcKb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-kb
- template:
- metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-kb-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: ELASTICSEARCH_URL
- value: http://sdc-es:9200
- image: {{ .Values.image.sdcKibana }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-kb
- volumeMounts:
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 5601
- readinessProbe:
- tcpSocket:
- port: 5601
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdcSdcBe }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdc-log-be-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/be/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdc-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
----
-#{{ if not .Values.disableSdcSdcFe }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdc-log-fe-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/fe/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-*/}}
-
-#{{ if not .Values.disableSdcSdcCs }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-sdc"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-sdc"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-cs/CS
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: sdc-cs-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-sdc"
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ .Release.Name }}-sdc-cs-secrets
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ #application user
+ sdc_user: "{{ .Values.global.secrets.sdc_user }}"
+ sdc_password: "{{ .Values.global.secrets.sdc_password }}"
+ #default user:
+ cs_password: "{{ .Values.global.secrets.cs_password }}"
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- sdcKibana: nexus3.onap.org:10001/openecomp/sdc-kibana:v1.1.0
- sdcFrontend: nexus3.onap.org:10001/openecomp/sdc-frontend:v1.1.0
- sdcElasticsearch: nexus3.onap.org:10001/openecomp/sdc-elasticsearch:v1.1.0
- sdcCassandra: nexus3.onap.org:10001/openecomp/sdc-cassandra:v1.1.0
- sdcBackend: nexus3.onap.org:10001/openecomp/sdc-backend:v1.1.0
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
- ubuntuInit: oomk8s/ubuntu-init:1.0.0
+global:
+ persistence: {}
+ env:
+ name: AUTO
+ secrets:
+ sdc_user: YXNkY191c2Vy
+ sdc_password: QWExMjM0JV4h
+ cs_password: b25hcDEyMyNAIQ==
+ ubuntuInitRepository: oomk8s
+ ubuntuInitImage: ubuntu-init:1.0.0
+
+
config:
logstashServiceName: log-ls
logstashPort: 5044
+ environment:
+ dcaeUrl: 10.0.2.15
+ workflowUrl: 10.0.2.15
+ vnfRepoPort: 8702
+
+sdc-es:
+ service:
+ name: sdc-es
\ No newline at end of file
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: SDN Controller
name: sdnc
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: SDNC DMaaP Listener
+name: dmaap-listener
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+###
+# ============LICENSE_START=======================================================
+# Copyright (C) 2018 ONAP Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+org.onap.ccsdk.sli.dbtype=jdbc
+org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
+org.onap.ccsdk.sli.jdbc.database=sdnctl
+org.onap.ccsdk.sli.jdbc.user=sdnctl
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
--- /dev/null
+TransportType=HTTPAUTH
+Latitude =50.000000
+Longitude =-100.000000
+Version =1.0
+ServiceName =message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}/events
+Environment =TEST
+Partner = BOT_R
+routeOffer=MR1
+SubContextPath =/
+Protocol =http
+MethodType =GET
+username =admin
+password =admin
+contenttype =application/json
+authKey=fxoW4jZrO7mdLWWa:f4KxkoBtToyoEG7suMoV8KhnkwM=
+authDate=2016-02-18T13:57:37-0800
+host=message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}
+topic=VCPE-DHCP-EVENT
+group=jmsgrp
+id=sdnc1
+timeout=15000
+limit=1000
+filter=
+AFT_DME2_EXCHANGE_REQUEST_HANDLERS=com.att.nsa.test.PreferredRouteRequestHandler
+AFT_DME2_EXCHANGE_REPLY_HANDLERS=com.att.nsa.test.PreferredRouteReplyHandler
+AFT_DME2_REQ_TRACE_ON=true
+AFT_ENVIRONMENT=AFTUAT
+AFT_DME2_EP_CONN_TIMEOUT=15000
+AFT_DME2_ROUNDTRIP_TIMEOUT_MS=240000
+AFT_DME2_EP_READ_TIMEOUT_MS=50000
+sessionstickinessrequired=NO
+DME2preferredRouterFilePath=/opt/onap/sdnc/data/properties/dmaap-listener.preferredRoute.txt
+sdnc.odl.user=admin
+sdnc.odl.password={{.Values.config.odlPassword}}
+sdnc.odl.url-base=http://sdnc.{{.Release.Namespace}}:{{.Values.config.sdncPort}}/restconf/operations
--- /dev/null
+TransportType=HTTPAUTH
+Latitude =50.000000
+Longitude =-100.000000
+Version =1.0
+ServiceName =message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}/events
+Environment =TEST
+Partner = BOT_R
+routeOffer=MR1
+SubContextPath =/
+Protocol =http
+MethodType =GET
+username =admin
+password =admin
+contenttype =application/json
+authKey=fxoW4jZrO7mdLWWa:f4KxkoBtToyoEG7suMoV8KhnkwM=
+authDate=2016-02-18T13:57:37-0800
+host=message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}
+topic=SDNC-LCM-READ
+group=jmsgrp
+id=sdnc_1
+timeout=15000
+limit=1000
+filter=
+AFT_DME2_EXCHANGE_REQUEST_HANDLERS=com.att.nsa.test.PreferredRouteRequestHandler
+AFT_DME2_EXCHANGE_REPLY_HANDLERS=com.att.nsa.test.PreferredRouteReplyHandler
+AFT_DME2_REQ_TRACE_ON=true
+AFT_ENVIRONMENT=AFTUAT
+AFT_DME2_EP_CONN_TIMEOUT=15000
+AFT_DME2_ROUNDTRIP_TIMEOUT_MS=240000
+AFT_DME2_EP_READ_TIMEOUT_MS=50000
+sessionstickinessrequired=NO
+DME2preferredRouterFilePath=/opt/onap/sdnc/data/properties/dmaap-listener.preferredRoute.txt
+sdnc.odl.user=admin
+sdnc.odl.password={{.Values.config.odlPassword}}
+sdnc.odl.url-base=http://sdnc.{{.Release.Namespace}}:{{.Values.config.sdncPort}}/restconf/operations
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.mysqlChartName }}
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ - --container-name
+ - {{ .Values.config.msgRouterContainerName }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - command:
+ - /opt/onap/sdnc/dmaap-listener/bin/start-dmaap-listener.sh
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: PROPERTY_DIR
+ value: "{{ .Values.config.configDir }}"
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/dhcpalert.properties
+ name: properties
+ subPath: dhcpalert.properties
+ - mountPath: {{ .Values.config.configDir }}/lcm.properties
+ name: properties
+ subPath: lcm.properties
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: ClusterIP
+ clusterIP: None
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdnc-dmaap-listener-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ dmaapPort: 3904
+ mysqlChartName: sdnc-db
+ sdncChartName: sdnc
+ sdncPort: 8282
+ msgRouterContainerName: message-router
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+ingress:
+ enabled: false
+
+service:
+ name: sdnc-dmaap-listener
+
+mysql:
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: SDN-C Ansible Server
+name: sdnc-ansible-server
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 AT&T, Amdocs, Bell Canada
+#
+# 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.
+
+# Host definition
+ip: 0.0.0.0
+port: {{.Values.service.internalPort}}
+
+# Security (controls use of TLS encrypton and RestServer authentication)
+tls: no
+auth: no
+
+# TLS certificates (must be built on application host)
+priv: provide_privated_key.pem
+pub: provide_public_key.pem
+
+# RestServer authentication
+id: sdnc
+psswd: sdnc
+
+# Mysql
+host: {{.Values.config.mysqlServiceName}}
+user: sdnc
+passwd: sdnc
+db: ansible
+
+# Playbooks
+from_files: yes
+ansible_path: /opt/onap/sdnc/Playbooks
+ansible_inv: Ansible_inventory
+ansible_temp: PlaybooksTemp
+timeout_seconds: 60
+
+# Blocking on GetResults
+getresults_block: yes
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ command: ["/bin/bash"]
+ args: ["-c", "cd /opt/onap/sdnc && ./startAnsibleServer.sh"]
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/RestServer_config
+ name: config
+ subPath: RestServer_config
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdnc-ansible-server-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ sdncChartName: sdnc
+ configDir: /opt/onap/sdnc
+ mysqlServiceName: sdnc-dbhost
+
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdnc-ansible-server
+ portName: sdnc-ansible-server
+ internalPort: 8000
+ externalPort: 8000
+
+ingress:
+ enabled: false
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: SDN-C Admin Portal
+name: sdnc-portal
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+{
+ "MainMenu": "gamma",
+ "dbConnLimit": "100",
+ "home": "/opt/admportal",
+ "sslEnabled": "false",
+ "nonSslPort": "{{.Values.service.internalPort}}",
+ "ConexusNetworkPort": "8443",
+ "AppNetworkPort": "8543",
+ "clusterPort": "8443",
+ "serviceHomingServiceType": "SDN-ETHERNET-INTERNET",
+ "passwordKey": "QtfJMKggVk",
+ "preloadImportDirectory": "C:/data/csv",
+ "clusterPrefixURL": "/jolokia/read/org.opendaylight.controller:Category=Shards,name=member-",
+ "clusterMidURL": "-shard-",
+ "clusterSuffixURL": "-config,type=DistributedConfigDatastore",
+ "shards": [
+ "default",
+ "inventory",
+ "topology"
+ ],
+ "dbFabric": "false",
+ "ip-addresses": {
+ "lo": "127.0.0.1",
+ "eth0": "127.0.0.1",
+ "docker0": "172.17.0.1",
+ "virbr0": "192.168.122.1"
+ },
+ "svclogicPropertiesDb01": "{{.Values.config.configDir}}/svclogic.properties.sdnctldb01",
+ "databases": [
+ "sdnc-dbhost.{{.Release.Namespace}}|sdnc-sdnctldb01.{{.Release.Namespace}}"
+ ],
+ "dbFabricServer": "localhost",
+ "dbFabricPort": "32275",
+ "dbFabricGroupId": "hagroup1",
+ "dbFabricUser": "admin",
+ "dbFabricPassword": "admin",
+ "dbFabricDB": "mysql",
+ "dbUser": "sdnctl",
+ "dbPassword": "gamma",
+ "dbName": "sdnctl",
+ "odlProtocol": "http",
+ "odlHost": "sdnc.{{.Release.Namespace}}",
+ "odlConexusHost": "sdnc.{{.Release.Namespace}}",
+ "odlPort": "8181",
+ "odlConexusPort": "8181",
+ "odlUser": "admin",
+ "odlPasswd": "{{.Values.config.odlPassword}}",
+ "ConexusNetwork_sslCert": "",
+ "ConexusNetwork_sslKey": "",
+ "AppNetwork_sslCert": "",
+ "AppNetwork_sslKey": "",
+ "hostnameList": [
+ {
+ "hname": "localhost"
+ }
+ ],
+ "shard_list": [
+ {
+ "shard_name": "default"
+ },
+ {
+ "shard_name": "inventory"
+ },
+ {
+ "shard_name": "topology"
+ }
+ ]
+}
--- /dev/null
+###
+# ============LICENSE_START=======================================================
+# Copyright (C) 2018 ONAP Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+org.onap.ccsdk.sli.dbtype=jdbc
+org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
+org.onap.ccsdk.sli.jdbc.database=sdnctl
+org.onap.ccsdk.sli.jdbc.user=sdnctl
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
--- /dev/null
+org.openecomp.sdnctl.sli.dbtype = jdbc
+org.openecomp.sdnctl.sli.jdbc.url = jdbc:mysql://sdnc-sdnctldb01:3306/sdnctl
+org.openecomp.sdnctl.sli.jdbc.database = sdnctl
+org.openecomp.sdnctl.sli.jdbc.user = sdnctl
+org.openecomp.sdnctl.sli.jdbc.password = gamma
\ No newline at end of file
--- /dev/null
+org.openecomp.sdnctl.sli.dbtype = jdbc
+org.openecomp.sdnctl.sli.jdbc.url = jdbc:mysql://sdnc-sdnctldb02:3306/sdnctl
+org.openecomp.sdnctl.sli.jdbc.database = sdnctl
+org.openecomp.sdnctl.sli.jdbc.user = sdnctl
+org.openecomp.sdnctl.sli.jdbc.password = gamma
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.mysqlChartName }}
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ command: ["/bin/bash"]
+ args: ["-c", "cd /opt/onap/sdnc/admportal/shell && ./start_portal.sh"]
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/admportal.json
+ name: properties
+ subPath: admportal.json
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties.sdnctldb01
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties.sdnctldb02
+ name: properties
+ subPath: svclogic.properties.sdnctldb02
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdnc-portal",
+ "version": "v1",
+ "url": "/",
+ "protocol": "UI",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"0|1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/admportal-sdnc-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ mysqlChartName: sdnc-db
+ dbRootPassword: openECOMP1.0
+ sdncChartName: sdnc
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sdnc-portal
+ portName: sdnc-portal
+ internalPort: 8843
+ externalPort: 8843
+ nodePort: "01"
+
+ingress:
+ enabled: false
+
+mysql:
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: SDNC UEB Listener
+name: ueb-listener
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+# dblib.properties
+org.onap.ccsdk.sli.dbtype=jdbc
+
+org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
+org.onap.ccsdk.sli.jdbc.database=sdnctl
+org.onap.ccsdk.sli.jdbc.user=sdnctl
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
--- /dev/null
+org.onap.ccsdk.sli.northbound.uebclient.asdc-address=sdc-be.{{.Release.Namespace}}:8443
+org.onap.ccsdk.sli.northbound.uebclient.consumer-group=sdc-OpenSource-Env1-sdnc-dockero
+org.onap.ccsdk.sli.northbound.uebclient.consumer-id=sdc-COpenSource-Env11-sdnc-dockero
+org.onap.ccsdk.sli.northbound.uebclient.environment-name=AUTO
+org.onap.ccsdk.sli.northbound.uebclient.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+org.onap.ccsdk.sli.northbound.uebclient.user=sdnc
+org.onap.ccsdk.sli.northbound.uebclient.sdnc-user=admin
+org.onap.ccsdk.sli.northbound.uebclient.sdnc-passwd={{.Values.config.odlPassword}}
+org.onap.ccsdk.sli.northbound.uebclient.asdc-api-base-url=http://sdnc.{{.Release.Namespace}}:{{.Values.config.sdncPort}}/restconf/operations/
+org.onap.ccsdk.sli.northbound.uebclient.asdc-api-namespace=org:onap:ccsdk
+org.onap.ccsdk.sli.northbound.uebclient.spool.incoming=/opt/onap/sdnc/ueb-listener/spool/incoming
+org.onap.ccsdk.sli.northbound.uebclient.spool.archive=/opt/onap/sdnc/ueb-listener/spool/archive
+org.onap.ccsdk.sli.northbound.uebclient.polling-interval=30
+org.onap.ccsdk.sli.northbound.uebclient.polling-timeout=15
+org.onap.ccsdk.sli.northbound.uebclient.client-startup-timeout=900
+org.onap.ccsdk.sli.northbound.uebclient.relevant-artifact-types=YANG_XML,VF_LICENSE,TOSCA_CSAR,UCPE_LAYER_2_CONFIGURATION
+org.onap.ccsdk.sli.northbound.uebclient.activate-server-tls-auth=false
+org.onap.ccsdk.sli.northbound.uebclient.keystore-path=
+org.onap.ccsdk.sli.northbound.uebclient.keystore-password=
+org.onap.ccsdk.sli.northbound.uebclient.xslt-path-list=
+org.onap.ccsdk.sli.northbound.uebclient.artifact-map=/opt/onap/sdnc/data/properties/artifact.map
+org.onap.ccsdk.sli.northbound.uebclient.msg-bus-address=message-router.{{.Release.Namespace}},message-router.{{.Release.Namespace}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.mysqlChartName }}
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ - --container-name
+ - {{ .Values.config.sdcbeChartName }}
+ - --container-name
+ - {{ .Values.config.msgRouterContainerName }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - command:
+ - /opt/onap/sdnc/ueb-listener/bin/start-ueb-listener.sh
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: PROPERTY_DIR
+ value: "{{ .Values.config.configDir }}"
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/ueb-listener.properties
+ name: properties
+ subPath: ueb-listener.properties
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: ClusterIP
+ clusterIP: None
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdnc-ueb-listener-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ sdncPort: 8282
+ mysqlChartName: sdnc-db
+ sdncChartName: sdnc
+ sdcbeChartName: sdc-be
+ msgRouterContainerName: message-router
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ name: sdnc-ueb-listener
+
+mysql:
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+
+ingress:
+ enabled: false
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: mysql
+ version: ~2.0.0
+ repository: '@local'
+ - name: dgbuilder
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# ONAP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+MYSQL_HOST=${MYSQL_HOST:-{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+
+SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
+SDNC_DB_PASSWD=${SDNC_DB_PASSWD:-gamma}
+SDNC_DB_DATABASE=${SDN_DB_DATABASE:-sdnctl}
+
+
+# Create tablespace and user account
+mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} mysql <<-END
+CREATE DATABASE ${SDNC_DB_DATABASE};
+CREATE USER '${SDNC_DB_USER}'@'localhost' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+CREATE USER '${SDNC_DB_USER}'@'%' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'localhost' WITH GRANT OPTION;
+GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'%' WITH GRANT OPTION;
+commit;
+END
+
+# load schema
+if [ -f ${SDNC_HOME}/data/sdnctl.dump ]
+then
+ mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/sdnctl.dump
+fi
+
+for datafile in ${SDNC_HOME}/data/*.data.dump
+do
+ mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} sdnctl < $datafile
+done
+
+# Create VNIs 100-199
+${SDNC_HOME}/bin/addVnis.sh 100 199
--- /dev/null
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# SDNC
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+function enable_odl_cluster(){
+ if [ -z $SDNC_REPLICAS ]; then
+ echo "SDNC_REPLICAS is not configured in Env field"
+ exit
+ fi
+
+ echo "Installing Opendaylight cluster features"
+ ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering
+ ${ODL_HOME}/bin/client feature:install odl-jolokia
+
+ echo "Update cluster information statically"
+ hm=$(hostname)
+ echo "Get current Hostname ${hm}"
+
+ node=($(echo ${hm} | sed 's/-[0-9]*$//g'))
+ node_index=($(echo ${hm} | awk -F"-" '{print $NF}'))
+ member_offset=1
+
+ if $GEO_ENABLED; then
+ echo "This is a Geo cluster"
+
+ if [ -z $IS_PRIMARY_CLUSTER ] || [ -z $MY_ODL_CLUSTER ] || [ -z $PEER_ODL_CLUSTER ]; then
+ echo "IS_PRIMARY_CLUSTER, MY_ODL_CLUSTER and PEER_ODL_CLUSTER must all be configured in Env field"
+ return
+ fi
+
+ if $IS_PRIMARY_CLUSTER; then
+ PRIMARY_NODE=${MY_ODL_CLUSTER}
+ SECONDARY_NODE=${PEER_ODL_CLUSTER}
+ else
+ PRIMARY_NODE=${PEER_ODL_CLUSTER}
+ SECONDARY_NODE=${MY_ODL_CLUSTER}
+ member_offset=4
+ fi
+
+ node_list="${PRIMARY_NODE} ${SECONDARY_NODE}"
+
+ /opt/onap/sdnc/bin/configure_geo_cluster.sh $((node_index+member_offset)) ${node_list}
+ else
+ echo "This is a local cluster"
+
+ node_list="${node}-0.{{.Values.service.name}}-cluster.{{.Release.Namespace}}";
+
+ for ((i=1;i<${SDNC_REPLICAS};i++));
+ do
+ node_list="${node_list} ${node}-$i.{{.Values.service.name}}-cluster.{{.Release.Namespace}}"
+ done
+
+ /opt/opendaylight/current/bin/configure_cluster.sh $((node_index+1)) ${node_list}
+ fi
+}
+
+
+# Install SDN-C platform components if not already installed and start container
+
+ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
+ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
+SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+CCSDK_HOME=${CCSDK_HOME:-/opt/onap/ccsdk}
+SLEEP_TIME=${SLEEP_TIME:-120}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+MYSQL_HOST=${MYSQL_HOST:-{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
+GEO_ENABLED=${GEO_ENABLED:-false}
+
+#
+# Wait for database to init properly
+#
+echo "Waiting for mysql"
+until mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} mysql &> /dev/null
+do
+ printf "."
+ sleep 1
+done
+echo -e "\nmysql ready"
+
+if [ ! -f ${SDNC_HOME}/.installed ]
+then
+ echo "Installing SDNC database"
+ ${SDNC_HOME}/bin/installSdncDb.sh
+ echo "Installing SDN-C keyStore"
+ ${SDNC_HOME}/bin/addSdncKeyStore.sh
+ echo "Starting OpenDaylight"
+ ${CCSDK_HOME}/bin/installOdlHostKey.sh
+ ${ODL_HOME}/bin/start
+ echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
+ sleep ${SLEEP_TIME}
+ echo "Installing SDN-C platform features"
+ ${SDNC_HOME}/bin/installFeatures.sh
+ if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
+ then
+ echo "Installing directed graphs"
+ ${SDNC_HOME}/svclogic/bin/install.sh
+ fi
+
+ if $ENABLE_ODL_CLUSTER ; then enable_odl_cluster ; fi
+
+ echo "Restarting OpenDaylight"
+ ${ODL_HOME}/bin/stop
+
+ echo "Waiting 60 seconds for OpenDaylight stop to complete"
+ sleep 60
+
+ echo "Installed at `date`" > ${SDNC_HOME}/.installed
+fi
+
+exec ${ODL_HOME}/bin/karaf
+
# ============LICENSE_START=======================================================
# openECOMP : SDN-C
# ================================================================================
-# Copyright (C) 2017 ONAP Intellectual Property. All rights
+# Copyright (C) 2018 ONAP Intellectual Property. All rights
# reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
-#
+#
# http://www.apache.org/licenses/LICENSE-2.0
-#
+#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#
# Certificate keystore and truststore
#
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/sdnc/data/stores/truststoreONAPall.jks
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=changeit
org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true
-org.onap.ccsdk.sli.adaptors.aai.client.name=AAI
-org.onap.ccsdk.sli.adaptors.aai.client.psswd=AAI
+org.onap.ccsdk.sli.adaptors.aai.client.name=SDNC
+org.onap.ccsdk.sli.adaptors.aai.client.psswd=SDNC
org.onap.ccsdk.sli.adaptors.aai.application=openECOMP
-#connection.timeout=1000
-#read.timeout=2000
-
#
# Configuration file for A&AI Client
#
-org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.{{.Values.nsPrefix}}:8443
-
+org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
+connection.timeout=60000
+read.timeout=60000
# query
-org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query
-org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
-org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
+org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v13/search/sdn-zone-query
+org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v13/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
+org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v13/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
# named query
org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query
-
#update
-org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update
-
-# vce
-org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/
-org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/
-
-# vpe
-org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/
-org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/
-
-# customer
-org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id}
-
-# service subscription
-org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
-
-# service instance
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
-org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
-
-# complex
-org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes
-org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
-
-# tenant
-org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
-org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
-
-# vservers
-org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
-org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
-
-# vpls-pe
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/
+org.onap.ccsdk.sli.adaptors.aai.update=/aai/v13/actions/update
-# ctag-pool
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
-
-#
-#-------------- 1510 ----------------------
-#
-
-# pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
-
-# generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
-
-# dvs-switch
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
-
-# L3 Networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id}
-org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name}
+# UBB Notify
+org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v13/actions/notify
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=<%= @ubbUri %>/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=<%= @ubbUri %>/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
# P-Interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
-
-# Physical Link
-org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links
-org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name}
-
-# VPN Bindings
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
# VNF IMAGES
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
-
-# UBB Notify
-org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.{{.Values.nsPrefix}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.{{.Values.nsPrefix}}:8543/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
-
-# Service
-org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
-org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services
-
-
-#
-#-------------- 1604 ----------------------
-#
-
-# VNFC
-org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name}
-
-# class-of-service
-org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
-
-# site-pair
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
-
-# routing-instance
-org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
-
-# site-pair-set
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
-
-# license key resource
-org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid}
-
-# logical-link
-org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name}
-
-# virtual-data-center
-org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
-
-# wan-connector
-org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id}
-
-# l-interface
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# l-interface pnf
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# subinterface
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# vlans
-org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v13/service-design-and-creation/vnf-images
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v13/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v13/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
-# l3-interface-ipv4-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# l3-interface-ipv6-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-
-# ipsec-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
-
-# vig server
-org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
-
-# l3-network
-org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id}
-
-# subnet
-org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
-
-# multicast-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-
-# volume.group
-org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
-
-#cloud region
-org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
-
-# vf-module
-org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
-
-# l-interface through generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
-
-# network-policy
-org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id}
+# service instance
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v13/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
+org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v13/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
-# pnf
-org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
+# VNF IMAGES QUERY
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v13/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
#
# Formatting
org.onap.ccsdk.sli.adaptors.aai.param.format=filter=%s:%s
org.onap.ccsdk.sli.adaptors.aai.param.vnf_type=vnf-type
org.onap.ccsdk.sli.adaptors.aai.param.physical.location.id=physical-location-id
-org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type
+org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type
\ No newline at end of file
+++ /dev/null
-{
- "MainMenu": "gamma",
- "dbConnLimit": "100",
- "home": "/opt/admportal",
- "sslEnabled": "false",
- "nonSslPort": "8843",
- "ConexusNetworkPort": "8443",
- "AppNetworkPort": "8543",
- "clusterPort": "8443",
- "serviceHomingServiceType": "SDN-ETHERNET-INTERNET",
- "passwordKey": "QtfJMKggVk",
- "preloadImportDirectory": "C:/data/csv",
- "clusterPrefixURL": "/jolokia/read/org.opendaylight.controller:Category=Shards,name=member-",
- "clusterMidURL": "-shard-",
- "clusterSuffixURL": "-config,type=DistributedConfigDatastore",
- "shards": [
- "default",
- "inventory",
- "topology"
- ],
- "dbFabric": "false",
- "ip-addresses": {
- "lo": "127.0.0.1",
- "eth0": "127.0.0.1",
- "docker0": "172.17.0.1",
- "virbr0": "192.168.122.1"
- },
- "svclogicPropertiesDb01": "/opt/onap/sdnc/data/properties/svclogic.properties.sdnctldb01",
- "databases": [
- "dbhost|sdnctldb01"
- ],
- "dbFabricServer": "localhost",
- "dbFabricPort": "32275",
- "dbFabricGroupId": "hagroup1",
- "dbFabricUser": "admin",
- "dbFabricPassword": "admin",
- "dbFabricDB": "mysql",
- "dbUser": "sdnctl",
- "dbPassword": "gamma",
- "dbName": "sdnctl",
- "odlProtocol": "http",
- "odlHost": "sdnhost.{{.Values.nsPrefix}}",
- "odlConexusHost": "sdnhost.{{.Values.nsPrefix}}",
- "odlPort": "8181",
- "odlConexusPort": "8181",
- "odlUser": "admin",
- "odlPasswd": "admin",
- "ConexusNetwork_sslCert": "",
- "ConexusNetwork_sslKey": "",
- "AppNetwork_sslCert": "",
- "AppNetwork_sslKey": "",
- "hostnameList": [
- {
- "hname": "localhost"
- }
- ],
- "shard_list": [
- {
- "shard_name": "default"
- },
- {
- "shard_name": "inventory"
- },
- {
- "shard_name": "topology"
- }
- ]
-}
--- /dev/null
+###
+# ============LICENSE_START=======================================================
+# Copyright (C) 2018 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+org.onap.ccsdk.sli.dbtype=jdbc
+org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
+org.onap.ccsdk.sli.jdbc.database=sdnctl
+org.onap.ccsdk.sli.jdbc.user=sdnctl
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
--- /dev/null
+ansible.agenturl=http://{{.Values.config.ansibleServiceName}}:{{.Values.config.ansiblePort}}/Dispatch
+ansible.user=sdnc
+ansible.password=sdnc
+ansible.lcm.localparameters=
+ansible.nodelist=
+ansible.timeout=60
+ansible.version=0.00
+lcm.upgrade-pre-check.playbookname=ansible_precheck
+lcm.upgrade-post-check.playbookname=ansible_postcheck
+lcm.upgrade-software.playbookname=ansible_upgradesw
+restapi.templateDir=/opt/onap/sdnc/restapi/templates
+restapi.lcm.dmaap.publish.templatefile=lcm-dmaap-publish-template.json
+lcm.dmaap.url=http://message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}/events/SDNC-LCM-WRITE
+lcm.dmaap.user=admin
+lcm.dmaap.password=admin
+lcm.dmaap.version=1.0
+lcm.dmaap.partition=SDNC-LCM-WRITE
+lcm.dmaap.type=response
\ No newline at end of file
--- /dev/null
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+org.onap.ccsdk.sli.dbtype = jdbc
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.database = sdnctl
+org.onap.ccsdk.sli.jdbc.user = sdnctl
+org.onap.ccsdk.sli.jdbc.password = gamma
+
+++ /dev/null
-TransportType=HTTPAUTH
-Latitude =50.000000
-Longitude =-100.000000
-Version =1.0
-ServiceName =dmaap-v1.dev.dmaap.dt.saat.acsi.openecomp.org/events
-Environment =TEST
-Partner = BOT_R
-routeOffer=MR1
-SubContextPath =/
-Protocol =http
-MethodType =GET
-username =admin
-password =admin
-contenttype =application/json
-authKey=fxoW4jZrO7mdLWWa:f4KxkoBtToyoEG7suMoV8KhnkwM=
-authDate=2016-02-18T13:57:37-0800
-host=dmaap.{{.Values.nsPrefix}}:3904
-topic=VCPE-DHCP-EVENT
-group=jmsgrp
-id=sdnc1
-timeout=15000
-limit=1000
-filter=
-AFT_DME2_EXCHANGE_REQUEST_HANDLERS=com.att.nsa.test.PreferredRouteRequestHandler
-AFT_DME2_EXCHANGE_REPLY_HANDLERS=com.att.nsa.test.PreferredRouteReplyHandler
-AFT_DME2_REQ_TRACE_ON=true
-AFT_ENVIRONMENT=AFTUAT
-AFT_DME2_EP_CONN_TIMEOUT=15000
-AFT_DME2_ROUNDTRIP_TIMEOUT_MS=240000
-AFT_DME2_EP_READ_TIMEOUT_MS=50000
-sessionstickinessrequired=NO
-DME2preferredRouterFilePath=/opt/onap/sdnc/data/properties/dmaap-listener.preferredRoute.txt
-sdnc.odl.user=admin
-sdnc.odl.password=admin
-sdnc.odl.url-base=https://sdnhost.{{.Values.nsPrefix}}:8443/restconf/operations
-################################################################################\r
-#\r
-# Licensed to the Apache Software Foundation (ASF) under one or more\r
-# contributor license agreements. See the NOTICE file distributed with\r
-# this work for additional information regarding copyright ownership.\r
-# The ASF licenses this file to You under the Apache License, Version 2.0\r
-# (the "License"); you may not use this file except in compliance with\r
-# the License. You may obtain a copy of the License at\r
-#\r
-# http://www.apache.org/licenses/LICENSE-2.0\r
-#\r
-# Unless required by applicable law or agreed to in writing, software\r
-# distributed under the License is distributed on an "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-# See the License for the specific language governing permissions and\r
-# limitations under the License.\r
-#\r
-################################################################################\r
-\r
-# Root logger\r
-log4j.rootLogger=INFO, async, osgi:*\r
-log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer\r
-\r
-# Log Directory\r
-logDir=/var/log/onap\r
-componentName=sdnc\r
-logDirectory=${logDir}/${componentName}\r
-maxFileSize=100MB\r
-maxBackupIndex=20\r
-\r
-# CONSOLE appender not used by default\r
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender\r
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout\r
-log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSS}\t%-16.16t\t%-5.5p\t%c{36}\t%X{bundle.id} - %X{bundle.name} - %X{bundle.version}\t%m%n\r
-\r
-# Async appender forwarding to file appender \r
-log4j.appender.async=org.apache.log4j.AsyncAppender\r
-log4j.appender.async.appenders=out\r
-\r
-# File appender\r
-log4j.appender.out=org.apache.log4j.RollingFileAppender\r
-log4j.appender.out.layout=org.apache.log4j.xml.XMLLayout\r
-log4j.appender.out.layout.Properties=true\r
-log4j.appender.out.file=${logDirectory}/karaf.log\r
-log4j.appender.out.append=true\r
-log4j.appender.out.maxFileSize=${maxFileSize}\r
-log4j.appender.out.maxBackupIndex=${maxBackupIndex}\r
-\r
-# Sift appender\r
-log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender\r
-log4j.appender.sift.key=bundle.name\r
-log4j.appender.sift.default=karaf\r
-log4j.appender.sift.appender=org.apache.log4j.RollingFileAppender\r
-log4j.appender.sift.appender.layout=org.apache.log4j.xml.XMLLayout\r
-log4j.appender.sift.appender.layout.Properties=true\r
-log4j.appender.sift.appender.file=${logDirectory}/$\\{bundle.name\\}.log\r
-log4j.appender.sift.appender.append=true\r
+################################################################################
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
+################################################################################
+
+# Root logger
+log4j.rootLogger=INFO, async, osgi:*
+log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
+
+maxFileSize=100MB
+maxBackupIndex=20
+logDir=/var/log/onap
+componentName=sdnc
+logDirectory=${logDir}/${componentName}
+karafLogName=karaf
+errorLogName=error
+metricsLogName=metrics
+auditLogName=audit
+debugLogName=debug
+
+
+# CONSOLE appender not used by default
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSS}\t%-16.16t\t%-5.5p\t%c{36}\t%X{bundle.id} - %X{bundle.name} - %X{bundle.version}\t%m%n
+
+# Async appender forwarding to file appender
+log4j.appender.async=org.apache.log4j.AsyncAppender
+log4j.appender.async.appenders=out
+
+# File appender
+log4j.appender.out=org.apache.log4j.RollingFileAppender
+log4j.appender.out.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.out.layout.Properties=true
+log4j.appender.out.file=${logDirectory}/${karafLogName}.log
+log4j.appender.out.append=true
+log4j.appender.out.maxFileSize=${maxFileSize}
+log4j.appender.out.maxBackupIndex=${maxBackupIndex}
+
+# Sift appender
+log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender
+log4j.appender.sift.key=bundle.name
+log4j.appender.sift.default=karaf
+log4j.appender.sift.appender=org.apache.log4j.RollingFileAppender
+log4j.appender.sift.appender.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.sift.appender.layout.Properties=true
+log4j.appender.sift.appender.file=${logDirectory}/$\\{bundle.name\\}.log
+log4j.appender.sift.appender.append=true
+
+
+
+log4j.category.org.opendaylight.controller.netconf.persist.impl.osgi.ConfigPusherImpl=DEBUG
+log4j.category.org.opendaylight.controller.netconf.persist.impl.osgi.ConfigPersisterActivator=DEBUG
+
+
+#ECOMP Debug appender
+log4j.appender.debug=org.apache.log4j.RollingFileAppender
+log4j.appender.debug.key=bundle.name
+log4j.appender.debug.default=karaf
+log4j.appender.debug.appName=EELFDebug
+log4j.appender.debug.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.debug.layout.Properties=true
+log4j.appender.debug.file=${logDirectory}/${debugLogName}.log
+log4j.appender.debug.append=true
+log4j.appender.debug.maxFileSize=${maxFileSize}
+log4j.appender.debug.maxBackupIndex=${maxBackupIndex}
+#log4j.appender.debug.filter.f1=org.apache.log4j.varia.LevelRangeFilter
+#log4j.appender.debug.filter.f1.LevelMax=WARN
+#log4j.appender.debug.filter.f1.LevelMin=TRACE
+
+
+#Error appender
+log4j.appender.error=org.apache.log4j.RollingFileAppender
+log4j.appender.error.appName=EELFError
+log4j.appender.error.File=${logDirectory}/${errorLogName}.log
+log4j.appender.error.Threshold=ERROR
+log4j.appender.error.maxFileSize=${maxFileSize}
+log4j.appender.error.maxBackupIndex=${maxBackupIndex}
+log4j.appender.error.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.error.layout.Properties=true
+
+#Metrics appender
+log4j.appender.metric=org.apache.log4j.RollingFileAppender
+log4j.appender.metric.appName=EELFMetrics
+log4j.appender.metric.File=${logDirectory}/${metricsLogName}.log
+log4j.appender.metric.maxFileSize=${maxFileSize}
+log4j.appender.metric.maxBackupIndex=${maxBackupIndex}
+log4j.appender.metric.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.metric.layout.Properties=true
+
+#Audit appender
+log4j.appender.audit=org.apache.log4j.RollingFileAppender
+log4j.appender.audit.appName=EELFAudit
+log4j.appender.audit.File=${logDirectory}/${auditLogName}.log
+log4j.appender.audit.maxFileSize=${maxFileSize}
+log4j.appender.audit.maxBackupIndex=${maxBackupIndex}
+log4j.appender.audit.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.audit.layout.Properties=true
+
+#Loggers
+#Routing of all messages from root logger
+log4j.logger.com.att=TRACE, debug, error
+#Store to the same log file messages from upper level appender or not
+log4j.additivity.com.att=false
+
+#EELFManager loggers
+#EELF parent logger
+log4j.logger.com.att.eelf=TRACE, debug
+log4j.additivity.com.att.eelf=false
+
+#Audit logger routing
+log4j.logger.com.att.eelf.audit=DEBUG, audit
+log4j.additivity.com.att.eelf.audit=false
+
+#Metric logger routing
+log4j.logger.com.att.eelf.metrics=DEBUG, metric
+log4j.additivity.com.att.eelf.metrics=false
+
+#Performance logger routing
+log4j.logger.com.att.eelf.perf=DEBUG, metric
+log4j.additivity.com.att.eelf.perf=false
+
+#Server logger routing
+log4j.logger.com.att.eelf.server=DEBUG, debug
+log4j.additivity.com.att.eelf.server=false
+
+#Policy logger routing
+log4j.logger.com.att.eelf.policy=DEBUG, debug
+log4j.additivity.com.att.eelf.policy=false
+
+#Error logger routing
+log4j.logger.com.att.eelf.error=DEBUG, error
+log4j.additivity.com.att.eelf.error=false
+
+#Debug logger routing
+log4j.logger.com.att.eelf.debug=DEBUG, debug
+log4j.additivity.com.att.eelf.debug=false
+++ /dev/null
-org.onap.ccsdk.sli.northbound.uebclient.asdc-address=sdc-be.{{.Values.nsPrefix}}:8443
-org.onap.ccsdk.sli.northbound.uebclient.consumer-group=sdc-OpenSource-Env1-sdnc-dockero
-org.onap.ccsdk.sli.northbound.uebclient.consumer-id=sdc-COpenSource-Env11-sdnc-dockero
-org.onap.ccsdk.sli.northbound.uebclient.environment-name=AUTO
-org.onap.ccsdk.sli.northbound.uebclient.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-org.onap.ccsdk.sli.northbound.uebclient.user=sdnc
-org.onap.ccsdk.sli.northbound.uebclient.sdnc-user=admin
-org.onap.ccsdk.sli.northbound.uebclient.sdnc-passwd=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-org.onap.ccsdk.sli.northbound.uebclient.asdc-api-base-url=http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/
-org.onap.ccsdk.sli.northbound.uebclient.asdc-api-namespace=org:onap:ccsdk
-org.onap.ccsdk.sli.northbound.uebclient.spool.incoming=/opt/onap/sdnc/ueb-listener/spool/incoming
-org.onap.ccsdk.sli.northbound.uebclient.spool.archive=/opt/onap/sdnc/ueb-listener/spool/archive
-org.onap.ccsdk.sli.northbound.uebclient.polling-interval=30
-org.onap.ccsdk.sli.northbound.uebclient.polling-timeout=15
-org.onap.ccsdk.sli.northbound.uebclient.client-startup-timeout=900
-org.onap.ccsdk.sli.northbound.uebclient.relevant-artifact-types=YANG_XML,VF_LICENSE,TOSCA_CSAR,UCPE_LAYER_2_CONFIGURATION
-org.onap.ccsdk.sli.northbound.uebclient.activate-server-tls-auth=false
-org.onap.ccsdk.sli.northbound.uebclient.keystore-path=
-org.onap.ccsdk.sli.northbound.uebclient.keystore-password=
-org.onap.ccsdk.sli.northbound.uebclient.xslt-path-list=
-org.onap.ccsdk.sli.northbound.uebclient.artifact-map=/opt/onap/sdnc/data/properties/artifact.map
--- /dev/null
+#!/bin/bash
+
+OOM_HOME=${OOM_HOME:-$HOME}
+
+if ! [ "$(command -v jq)" ]; then
+ echo "Error: jq is not installed."
+ echo "use: sudo apt install jq"
+ exit 1
+fi
+
+IS_PRIMARY_CLUSTER=`./sdnc.isPrimaryCluster`
+
+case $IS_PRIMARY_CLUSTER in
+true)
+ MEMBER_NUMBER=1
+ ;;
+false)
+ MEMBER_NUMBER=4
+ ;;
+*)
+ echo "Error: isPrimaryODLCluster not defined in ${OOM_HOME}/oom/kubernetes/sdnc/values.yaml."
+ exit 1
+ ;;
+esac
+
+for pod_number in {0..2}
+do
+ curl "http://localhost:3026$((${pod_number} + 1))" > /dev/null 2>&1
+ if [ "$?" = "7" ]; then
+ continue
+ fi
+
+ VOTING_RESULT=`curl -u admin:admin -H "Content-Type: application/json" -H "Accept: application/json" -X GET http://localhost:3026$((${pod_number} + 1))/jolokia/read/org.opendaylight.controller:Category=Shards,name=member-$((${MEMBER_NUMBER} + ${pod_number}))-shard-default-config,type=DistributedConfigDatastore 2>/dev/null | jq '.value.Voting'`
+
+ case $VOTING_RESULT in
+ true)
+ echo "active"
+ exit 0
+ ;;
+ false)
+ echo "standby"
+ exit 0
+ ;;
+ *)
+ echo "Error: Voting status could not be determined."
+ exit 1
+ ;;
+ esac
+done
+
+echo "Error: Voting status could not be determined."
+exit 1
--- /dev/null
+#!/usr/bin/perl -s\r
+use strict;\r
+\r
+my $keyWord_standby = "standby";\r
+my $keyWord_active = "active";\r
+my $keyWord_true = "true";\r
+my $keyWord_false = "false";\r
+my $keyWord_success = "success";\r
+my $keyWord_failure = "failure";\r
+my $file_cluster = "sdnc.cluster";\r
+my $file_switchVoting = "switchVoting.sh";\r
+my $file_isPrimaryCluster = "sdnc.isPrimaryCluster";\r
+\r
+if ((!(-e $file_cluster)) || (!(-e $file_switchVoting))|| (!(-e $file_isPrimaryCluster))) {\r
+ # file not exist.\r
+ print qq|$keyWord_failure\n|;\r
+ exit 1;\r
+}\r
+\r
+my $roleRes = qx("./$file_isPrimaryCluster");\r
+my $clusterRes = qx("./$file_cluster");\r
+\r
+if ( index ($clusterRes, $keyWord_standby) != -1) {\r
+ # We are at standby side\r
+ if ( index ($roleRes, $keyWord_false) != -1) {\r
+ # We are at Secondary cluster\r
+ sub_activate_secondary();\r
+ } elsif ( index ($roleRes, $keyWord_true) != -1) {\r
+ # We are at Primary cluster\r
+ sub_activate_primary();\r
+ } else {\r
+ # Error.\r
+ print qq|$keyWord_failure\n|;\r
+ exit 1;\r
+ }\r
+} elsif ( index ($clusterRes, $keyWord_active) != -1) {\r
+ # We are at active side\r
+ if ( index ($roleRes, $keyWord_false) != -1) {\r
+ # We are at Secondary cluster\r
+ sub_activate_primary();\r
+ } elsif ( index ($roleRes, $keyWord_true) != -1) {\r
+ # We are at Primary cluster\r
+ sub_activate_secondary();\r
+ } else {\r
+ # Error.\r
+ print qq|$keyWord_failure\n|;\r
+ exit 1;\r
+ }\r
+} else {\r
+ # Error.\r
+ print qq|$keyWord_failure\n|;\r
+ exit 1;\r
+}\r
+\r
+sub sub_activate_primary {\r
+ #Switching voting in Primary cluster\r
+ system("./$file_switchVoting primary");\r
+ print qq|$keyWord_success\n|;\r
+}\r
+\r
+sub sub_activate_secondary {\r
+ #Switching voting in secondary cluster\r
+ system("./$file_switchVoting secondary");\r
+ print qq|$keyWord_success\n|;\r
+}\r
--- /dev/null
+#!/bin/bash
+
+OOM_HOME=${OOM_HOME:-$HOME}
+
+IS_PRIMARY_CLUSTER=`awk '/isPrimaryCluster/ {print $2}' ${OOM_HOME}/oom/kubernetes/sdnc/values.yaml`
+
+if [ "$?" -eq "2" ]; then
+ echo "Make sure you are ubuntu user." >&2
+fi
+
+case $IS_PRIMARY_CLUSTER in
+true|false)
+ echo $IS_PRIMARY_CLUSTER
+ ;;
+*)
+ echo "NOT CLUSTERED"
+ exit 1
+ ;;
+esac
--- /dev/null
+#!/bin/bash
+
+function usage()
+{
+ echo usage: switchVoting.sh primary\|secondary
+ exit 1
+}
+
+if [ $# -ne 1 ]; then
+ usage
+fi
+
+partition=$1
+
+if [ "$partition" == "primary" ]; then
+ curl -u admin:{{.Values.config.odlPassword}} -H "Content-Type: application/json" -H "Accept: application/json" -X POST http://localhost:30202/restconf/operations/cluster-admin:change-member-voting-states-for-all-shards -d '{ "input" : { "member-voting-state" : [ { "member-name" : "member-1", "voting":true}, { "member-name" : "member-2", "voting":true}, { "member-name" : "member-3", "voting":true},{ "member-name" : "member-4", "voting":false},{ "member-name" : "member-5", "voting":false},{ "member-name" : "member-6", "voting":false}] } }' > switch_voting_resp.json 2>/dev/null
+ echo "" >> switch_voting_resp.json
+ exit 0
+fi
+
+if [ "$partition" == "secondary" ]; then
+ curl -u admin:{{.Values.config.odlPassword}} -H "Content-Type: application/json" -H "Accept: application/json" -X POST http://localhost:30202/restconf/operations/cluster-admin:change-member-voting-states-for-all-shards -d '{ "input" : { "member-voting-state" : [ { "member-name" : "member-1", "voting":false}, { "member-name" : "member-2", "voting":false}, { "member-name" : "member-3", "voting":false},{ "member-name" : "member-4", "voting":true},{ "member-name" : "member-5", "voting":true},{ "member-name" : "member-6", "voting":true}] } }' > switch_voting_resp.json 2>/dev/null
+ echo "" >> switch_voting_resp.json
+ exit 0
+fi
+
+usage
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-apiVersion: v1
-kind: Service
-metadata:
- name: dbhost
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - port: 3306
- selector:
- app: sdnc-dbhost
- clusterIP: None
----
-# Client service for connecting to any MySQL instance for reads.
-# Only master: sdnc-dbhost-0 accepts the write request.
-apiVersion: v1
-kind: Service
-metadata:
- name: dbhost-read
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - name: sdnc-dbhost
- port: 3306
- selector:
- app: sdnc-dbhost
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnctldb01
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - port: 3306
- selector:
- app: sdnc-dbhost
- clusterIP: None
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnctldb02
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - port: 3306
- selector:
- app: sdnc-dbhost
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdncSdnc }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnc-dgbuilder
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dgbuilder
-spec:
- ports:
- - name: "sdnc-dgbuilder-port"
- port: 3000
- targetPort: 3100
- nodePort: {{ .Values.nodePortPrefix }}03
- type: NodePort
- selector:
- app: sdnc-dgbuilder
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnhost
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdnc",
- "version": "v1",
- "url": "/",
- "protocol": "REST",
- "port": "8282",
- "visualRange":"1",
- "path": "/"
- }
- ]'
-spec:
- ports:
- - name: "sdnc-port-8181"
- port: 8282
- targetPort: 8181
- nodePort: {{ .Values.nodePortPrefix }}02
- - name: "sdnc-port-8101"
- port: 8201
- targetPort: 8101
- nodePort: {{ .Values.nodePortPrefix }}08
- - name: "sdnc-jolokia-port-8080"
- port: 8280
- targetPort: 8080
- nodePort: {{ .Values.nodePortPrefix }}46
- type: NodePort
- selector:
- app: sdnc
----
-kind: Service
-apiVersion: v1
-metadata:
- name: nfs-provisioner
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: nfs-provisioner
-spec:
- ports:
- - name: nfs
- port: 2049
- - name: mountd
- port: 20048
- - name: rpcbind
- port: 111
- - name: rpcbind-udp
- port: 111
- protocol: UDP
- selector:
- app: nfs-provisioner
-#{{ end }}
-#{{ if not .Values.disableSdncSdncPortal }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnc-portal
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-portal
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdnc-portal",
- "version": "v1",
- "url": "/",
- "protocol": "UI",
- "port": "8843",
- "visualRange":"0|1"
- }
- ]'
-spec:
- ports:
- - name: "sdnc-portal-port"
- port: 8843
- nodePort: {{ .Values.nodePortPrefix }}01
- type: NodePort
- selector:
- app: sdnc-portal
-#{{ end }}
-#{{ if .Values.enableODLCluster }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnhost-cluster
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc
- annotations:
- service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
-spec:
- ports:
- - name: "sdnc-cluster-port"
- port: 2550
- clusterIP: None
- selector:
- app: sdnc
- sessionAffinity: None
- type: ClusterIP
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/log4j/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-bin
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/bin/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-properties
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/conf/*").AsConfig . | indent 2 }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
- name: sdnc-dbhost
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- serviceName: "dbhost"
- replicas: {{ .Values.numberOfDbReplicas }}
- selector:
- matchLabels:
- app: sdnc-dbhost
- template:
- metadata:
- labels:
- app: sdnc-dbhost
- name: sdnc-dbhost
- spec:
- initContainers:
- - name: init-mysql
- image: {{ .Values.image.mysql }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - bash
- - "-c"
- - |
- set -ex
- # Generate mysql server-id from pod ordinal index.
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo BASH_REMATCH=${BASH_REMATCH}
- echo [mysqld] > /mnt/conf.d/server-id.cnf
- # Add an offset to avoid reserved server-id=0 value.
- echo server-id=$((100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
- # Copy appropriate conf.d files from config-map to emptyDir.
- if [[ $ordinal -eq 0 ]]; then
- cp /mnt/config-map/master.cnf /mnt/conf.d/
- else
- cp /mnt/config-map/slave.cnf /mnt/conf.d/
- fi
- volumeMounts:
- - name: conf
- mountPath: /mnt/conf.d
- - name: config-map
- mountPath: /mnt/config-map
- - name: clone-mysql
- image: {{ .Values.image.xtrabackup }}
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- command:
- - bash
- - "-c"
- - |
- set -ex
- # Skip the clone if data already exists.
- [[ -d /var/lib/mysql/mysql ]] && exit 0
- # Skip the clone on master (ordinal index 0).
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo ${BASH_REMATCH}
- [[ $ordinal -eq 0 ]] && exit 0
- # Clone data from previous peer.
- ncat --recv-only sdnc-dbhost-$(($ordinal-1)).dbhost.{{ .Values.nsPrefix }} 3307 | xbstream -x -C /var/lib/mysql
- # Prepare the backup.
- xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --prepare --target-dir=/var/lib/mysql
- ls -l /var/lib/mysql
- volumeMounts:
- - name: sdnc-data
- mountPath: /var/lib/mysql
-#{{ if not .Values.disableNfsProvisioner }}
- subPath: mysql
-#{{ end }}
- - name: conf
- mountPath: /etc/mysql/conf.d
- containers:
- - env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: MYSQL_ROOT_HOST
- value: '%'
- - name: MYSQL_ALLOW_EMPTY_PASSWORD
- value: "0"
- image: {{ .Values.image.mysql }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-db-container
- volumeMounts:
- - mountPath: /var/lib/mysql
- name: sdnc-data
-#{{ if not .Values.disableNfsProvisioner }}
- subPath: mysql
-#{{ end }}
- - name: conf
- mountPath: /etc/mysql/conf.d
- ports:
- - containerPort: 3306
- resources:
- requests:
- cpu: 500m
- memory: 1Gi
- livenessProbe:
- exec:
- command: ["mysqladmin", "ping"]
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- - name: xtrabackup
- image: {{ .Values.image.xtrabackup }}
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- ports:
- - name: xtrabackup
- containerPort: 3307
- command:
- - bash
- - "-c"
- - |
- set -ex
- cd /var/lib/mysql
- ls -l
- # Determine binlog position of cloned data, if any.
- if [[ -f xtrabackup_slave_info ]]; then
- echo "Inside xtrabackup_slave_info"
- # XtraBackup already generated a partial "CHANGE MASTER TO" query
- # because we're cloning from an existing slave.
- mv xtrabackup_slave_info change_master_to.sql.in
- # Ignore xtrabackup_binlog_info in this case (it's useless).
- rm -f xtrabackup_binlog_info
- elif [[ -f xtrabackup_binlog_info ]]; then
- echo "Inside xtrabackup_binlog_info"
- # We're cloning directly from master. Parse binlog position.
- [[ `cat xtrabackup_binlog_info` =~ ^(.*?)[[:space:]]+(.*?)$ ]] || exit 1
- rm xtrabackup_binlog_info
- echo "CHANGE MASTER TO MASTER_LOG_FILE='${BASH_REMATCH[1]}',\
- MASTER_LOG_POS=${BASH_REMATCH[2]}" > change_master_to.sql.in
- fi
-
- # Check if we need to complete a clone by starting replication.
- if [[ -f change_master_to.sql.in ]]; then
- echo "Waiting for mysqld to be ready (accepting connections)"
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo $ordinal
- until mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h 127.0.0.1 -e "SELECT 1"; do sleep 1; done
-
- echo "Initializing replication from clone position"
- # In case of container restart, attempt this at-most-once.
- mv change_master_to.sql.in change_master_to.sql.orig
- mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h 127.0.0.1 <<EOF
- $(<change_master_to.sql.orig),
- MASTER_HOST="sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}",
- MASTER_USER="root",
- MASTER_PASSWORD="$MYSQL_ROOT_PASSWORD",
- MASTER_CONNECT_RETRY=10;
- START SLAVE;
- EOF
- fi
-
- # Start a server to send backups when requested by peers.
- exec ncat --listen --keep-open --send-only --max-conns=1 3307 -c \
- "xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --backup --slave-info --stream=xbstream --host=127.0.0.1"
- volumeMounts:
- - name: sdnc-data
- mountPath: /var/lib/mysql
-#{{ if not .Values.disableNfsProvisioner }}
- subPath: mysql
-#{{ end }}
- - name: conf
- mountPath: /etc/mysql/conf.d
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- volumes:
- - name: conf
- emptyDir: {}
- - name: config-map
- configMap:
- name: sdnc-mysql
- - name: localtime
- hostPath:
- path: /etc/localtime
-#{{ if .Values.disableNfsProvisioner }}
- - name: sdnc-data
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdnc/data/mysql
-#{{ else }}
- volumeClaimTemplates:
- - metadata:
- name: sdnc-data
- annotations:
- volume.beta.kubernetes.io/storage-class: "{{ .Values.nsPrefix }}-sdnc-data"
- spec:
- accessModes: ["ReadWriteMany"]
- resources:
- requests:
- storage: 1Gi
-#{{ end }}
-#{{ end }}
-
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdncDgbuilder }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-dgbuilder
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dgbuilderReplicas }}
- selector:
- matchLabels:
- app: sdnc-dgbuilder
- template:
- metadata:
- labels:
- app: sdnc-dgbuilder
- name: sdnc-dgbuilder
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-dgbuilder-readiness
- containers:
- - command:
- - /bin/bash
- - -c
- - cd /opt/onap/sdnc/dgbuilder/ && ./start.sh sdnc1.0 && wait
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.dgbuilderSdnc }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-dgbuilder-container
- ports:
- - containerPort: 3100
- readinessProbe:
- tcpSocket:
- port: 3100
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncDmaap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdnc-dmaap-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncDmaap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-dmaap-listener
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dmaapReplicas }}
- selector:
- matchLabels:
- app: dmaap-listener
- template:
- metadata:
- labels:
- app: dmaap-listener
- name: sdnc-dmaap-listener
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-dmaap-readiness
- containers:
- - command:
- - /opt/onap/sdnc/dmaap-listener/bin/start-dmaap-listener.sh
- env:
- - name: PROPERTY_DIR
- value: /opt/onap/sdnc/data/properties
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.dmaaplistener }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaapp-listener-container
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/dhcpalert.properties
- subPath: dhcpalert.properties
- name: dmaap-dhcapalert-config
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: dmaap-dhcapalert-config
- configMap:
- name: sdnc-dmaap-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdnc-mysql
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mysql
-data:
- master.cnf: |
- # Apply this config only on the master.
- [mysqld]
- log-bin
- [localpathprefix]
- master
- slave.cnf: |
- # Apply this config only on slaves.
- [mysqld]
- super-read-only
- [localpathprefix]
- slave
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-#{{ if not .Values.disableNfsProvisioner }}
-kind: Deployment
-apiVersion: extensions/v1beta1
-metadata:
- name: sdnc-nfs-provisioner
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nfsReplicas }}
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: nfs-provisioner
- name: sdnc-nfs-provisioner
- spec:
- containers:
- - name: nfs-provisioner
- image: quay.io/kubernetes_incubator/nfs-provisioner:v1.0.8
- ports:
- - name: nfs
- containerPort: 2049
- - name: mountd
- containerPort: 20048
- - name: rpcbind
- containerPort: 111
- - name: rpcbind-udp
- containerPort: 111
- protocol: UDP
- securityContext:
- capabilities:
- add:
- - DAC_READ_SEARCH
- - SYS_RESOURCE
- args:
- - "-provisioner=sdnc/nfs"
- env:
- - name: POD_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: SERVICE_NAME
- value: nfs-provisioner
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- imagePullPolicy: "IfNotPresent"
- volumeMounts:
- - name: export-volume
- mountPath: /export
- volumes:
- - name: export-volume
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdnc/data
-#{{ end }}
-#{{ end }}
--- /dev/null
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # 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.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{ $pvNum := default 1 .Values.replicaCount | int }}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mdsal0
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-mdsal"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+{{ if gt $pvNum 1 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mdsal1
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-mdsal"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
+{{ end }}
+{{ if gt $pvNum 2 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mdsal2
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-mdsal"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}2
+{{ end }}
+{{- end -}}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdnc }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdnc-conf-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/conf/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-#{{ if not .Values.disableNfsProvisioner }}
-kind: StorageClass
-apiVersion: storage.k8s.io/v1
-metadata:
- name: "{{ .Values.nsPrefix }}-sdnc-data"
- namespace: "{{ .Values.nsPrefix }}"
-provisioner: sdnc/nfs
-#{{ end }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdnc }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdnc-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/log4j/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdnc-logging-cfg-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdnc }}
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
- name: sdnc
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- serviceName: "sdnhost-cluster"
- replicas: {{ .Values.numberOfODLReplicas }}
- podManagementPolicy: Parallel
- selector:
- matchLabels:
- app: sdnc
- template:
- metadata:
- labels:
- app: sdnc
- name: sdnc
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-readiness
- containers:
- - command:
- - bash
- - "-c"
- - |
- sed -i 's/dbhost/sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}.svc.cluster.local/g' /opt/onap/sdnc/data/properties/svclogic.properties
- sed -i 's/^\(org.onap.ccsdk.sli.jdbc.hosts=\).*/\1sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}.svc.cluster.local/' /opt/onap/sdnc/data/properties/dblib.properties
- /opt/onap/sdnc/bin/startODL.sh
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- - name: ENABLE_ODL_CLUSTER
- value: "{{ .Values.enableODLCluster }}"
- - name: SDNC_REPLICAS
- value: "{{ .Values.numberOfODLReplicas }}"
- image: {{ .Values.image.sdnc }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-controller-container
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/admportal.json
- name: sdnc-conf
- subPath: admportal.json
- - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties
- name: sdnc-conf
- subPath: aaiclient.properties
- - mountPath: /var/log/onap
- name: sdnc-logs
- - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
- name: sdnc-logging-cfg-config
- subPath: org.ops4j.pax.logging.cfg
- ports:
- - containerPort: 8181
- - containerPort: 8101
- - containerPort: 2550
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8181
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdnc-logs
- - mountPath: /usr/share/filebeat/data
- name: sdnc-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: sdnc-log-configmap
- - name: sdnc-logging-cfg-config
- configMap:
- name: sdnc-logging-cfg-configmap
- - name: sdnc-logs
- emptyDir: {}
- - name: sdnc-data-filebeat
- emptyDir: {}
- - name: sdnc-conf
- configMap:
- name: sdnc-conf-configmap
- items:
- - key: admportal.json
- path: admportal.json
- mode: 0755
- - key: aaiclient.properties
- path: aaiclient.properties
- mode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
--- /dev/null
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-odl
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ odl-password: {{ .Values.config.odlPassword | b64enc | quote }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdnc",
+ "version": "v1",
+ "url": "/",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1",
+ "path": "/"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: "{{ .Values.service.portName }}-8282"
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: "{{ .Values.service.portName }}-8202"
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: "{{ .Values.service.portName }}-8280"
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: "{{ .Values.service.portName }}-8443"
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.portName }}-cluster
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+ ports:
+ - name: "{{ .Values.service.portName }}-cluster-port"
+ port: {{ .Values.service.clusterPort }}
+ clusterIP: None
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ sessionAffinity: None
+ type: ClusterIP
+
+{{ if .Values.config.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.servicename" . }}-0
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+spec:
+ ports:
+ - name: {{ .Values.service.portName }}-0-port-{{ .Values.service.internalPort4 }}
+ port: {{ .Values.service.clusterPort2 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort4 }}
+ - name: {{ .Values.service.portName }}-0-port-{{ .Values.service.internalPort }}
+ port: {{ .Values.service.clusterPort3 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort1 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+{{ end }}
+{{ if .Values.config.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.servicename" . }}-1
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
+spec:
+ ports:
+ - name: {{ .Values.service.portName }}-1-port-{{ .Values.service.internalPort4 }}
+ port: {{ .Values.service.clusterPort2 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort5 }}
+ - name: {{ .Values.service.portName }}-1-port-{{ .Values.service.internalPort }}
+ port: {{ .Values.service.clusterPort3 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort2 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
+{{ end }}
+{{ if .Values.config.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.servicename" . }}-2
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
+spec:
+ ports:
+ - name: {{ .Values.service.portName }}-2-port-{{ .Values.service.internalPort4 }}
+ port: {{ .Values.service.clusterPort2 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort6 }}
+ - name: {{ .Values.service.portName }}-2-port-{{ .Values.service.internalPort }}
+ port: {{ .Values.service.clusterPort3 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort3 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
+{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}-cluster
+ replicas: {{ .Values.replicaCount }}
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.mysql.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash"]
+ args: ["-c", "/opt/sdnc/bin/startODL.sh"]
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ - containerPort: {{ .Values.service.clusterPort }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ - name: ODL_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-odl
+ key: odl-password
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ - name: ENABLE_ODL_CLUSTER
+ value: "{{ .Values.config.enableClustering }}"
+ - name: MY_ODL_CLUSTER
+ value: "{{ .Values.config.myODLCluster }}"
+ - name: PEER_ODL_CLUSTER
+ value: "{{ .Values.config.peerODLCluster }}"
+ - name: IS_PRIMARY_CLUSTER
+ value: "{{ .Values.config.isPrimaryCluster }}"
+ - name: GEO_ENABLED
+ value: "{{ .Values.config.geoEnabled}}"
+ - name: SDNC_REPLICAS
+ value: "{{ .Values.replicaCount }}"
+ - name: MYSQL_HOST
+ value: "{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
+ name: sdnc-logging-cfg-config
+ subPath: org.ops4j.pax.logging.cfg
+ - mountPath: {{ .Values.config.binDir }}/startODL.sh
+ name: bin
+ subPath: startODL.sh
+ - mountPath: {{ .Values.config.binDir }}/installSdncDb.sh
+ name: bin
+ subPath: installSdncDb.sh
+ - mountPath: {{ .Values.config.configDir }}/aaiclient.properties
+ name: properties
+ subPath: aaiclient.properties
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/lcm-dg.properties
+ name: properties
+ subPath: lcm-dg.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: /opt/onap/sdnc/svclogic/config/svclogic.properties
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: {{ .Values.persistence.mdsalPath }}
+ name: {{ include "common.fullname" . }}-mdsal
+ - mountPath: /var/log/onap
+ name: logs
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: logs
+ - mountPath: /usr/share/filebeat/data
+ name: data-filebeat
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: logs
+ emptyDir: {}
+ - name: data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: sdnc-logging-cfg-config
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: bin
+ configMap:
+ name: {{ include "common.fullname" . }}-bin
+ defaultMode: 0755
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}-properties
+ defaultMode: 0644
+ {{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-mdsal
+ emptyDir: {}
+ {{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-mdsal
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-mdsal
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+ {{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncUeb }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdnc-ueb-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/ueb/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncUeb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-ueb-listener
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.uebReplicas }}
- selector:
- matchLabels:
- app: ueb-listener
- template:
- metadata:
- labels:
- app: ueb-listener
- name: sdnc-ueb-listener
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-ueb-readiness
- containers:
- - command:
- - /opt/onap/sdnc/ueb-listener/bin/start-ueb-listener.sh
- env:
- - name: PROPERTY_DIR
- value: /opt/onap/sdnc/data/properties
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.ueblistener }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: ueb-listener-container
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/ueb-listener.properties
- subPath: ueb-listener.properties
- name: ueb-config
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: ueb-config
- configMap:
- name: sdnc-ueb-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableSdncSdncPortal }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-portal
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalReplicas }}
- selector:
- matchLabels:
- app: sdnc-portal
- template:
- metadata:
- labels:
- app: sdnc-portal
- name: sdnc-portal
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-portal-readiness
- containers:
- - command:
- - /bin/bash
- - -c
- - cd /opt/onap/sdnc/admportal/shell && ./start_portal.sh
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.admportalSdnc }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-portal-container
- ports:
- - containerPort: 8843
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/
- name: sdnc-conf
- readinessProbe:
- tcpSocket:
- port: 8843
- initialDelaySeconds: 5
- periodSeconds: 10
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: sdnc-conf
- configMap:
- name: sdnc-conf-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: IfNotPresent
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- mysql: mysql:5.7
- xtrabackup: gcr.io/google-samples/xtrabackup:1.0
- dgbuilderSdnc: nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:v0.1.0
- sdnc: nexus3.onap.org:10001/onap/sdnc-image:v1.2.1
- admportalSdnc: nexus3.onap.org:10001/onap/admportal-sdnc-image:v1.2.1
- ueblistener: nexus3.onap.org:10001/onap/sdnc-ueb-listener-image:v1.2.1
- dmaaplistener: nexus3.onap.org:10001/onap/sdnc-dmaap-listener-image:v1.2.1
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
-enableODLCluster: false
-numberOfODLReplicas: 1
-numberOfDbReplicas: 1
-dgbuilderReplicas: 1
-dmaapReplicas: 1
-nfsReplicas: 1
-uebReplicas: 1
-portalReplicas: 1
-disableSdncSdncDgbuilder: false
-disableSdncSdncPortal: false
-disableNfsProvisioner: false
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repository: nexus3.onap.org:10001
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence:
+ mountPath: /dockerdata-nfs
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application images
+repository: nexus3.onap.org:10001
+pullPolicy: Always
+image: onap/sdnc-image:1.3-STAGING-latest
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
config:
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ dbRootPassword: openECOMP1.0
+ enableClustering: true
+ binDir: /opt/onap/sdnc/bin
+ geoEnabled: false
+# if geoEnabled is set to true the following 3 values must be set to their proper values
+ myODLCluster: 127.0.0.1
+ peerODLCluster: 127.0.0.1
+ isPrimaryCluster: false
+ configDir: /opt/onap/sdnc/data/properties
+ dmaapTopic: SUCCESS
+ dmaapPort: 3904
logstashServiceName: log-ls
logstashPort: 5044
+ ansibleServiceName: sdnc-ansible-server
+ ansiblePort: 8000
+
+
+# dependency / sub-chart configuration
+dmaap-listener:
+ nameOverride: sdnc-dmaap-listener
+ config:
+ sdncChartName: sdnc
+ mysqlChartName: sdnc-db
+ dmaapPort: 3904
+ sdncPort: 8282
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+ueb-listener:
+ nameOverride: sdnc-ueb-listener
+ config:
+ sdncPort: 8282
+ sdncChartName: sdnc
+ mysqlChartName: sdnc-db
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+sdnc-portal:
+ config:
+ sdncChartName: sdnc
+ mysqlChartName: sdnc-db
+ configDir: /opt/onap/sdnc/data/properties
+ dbRootPassword: openECOMP1.0
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+sdnc-ansible-server:
+ service:
+ name: sdnc-ansible-server
+ internalPort: 8000
+ config:
+ mysqlServiceName: sdnc-dbhost
+
+mysql:
+ nameOverride: sdnc-db
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+ nfsprovisionerPrefix: sdnc
+ sdnctlPrefix: sdnc
+ persistence:
+ mountSubPath: sdnc/mysql
+ enabled: true
+ disableNfsProvisioner: true
+ replicaCount: 1
+
+dgbuilder:
+ nameOverride: sdnc-dgbuilder
+ config:
+ dbPodName: sdnc-db
+ dbServiceName: sdnc-dbhost
+ dbRootPassword: openECOMP1.0
+ service:
+ name: sdnc-dgbuilder
+ nodePort: "03"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sdnc
+ portName: sdnc
+ internalPort: 8181
+ internalPort2: 8101
+ internalPort3: 8080
+ internalPort4: 2550
+
+ #port
+ externalPort: 8282
+ nodePort: "02"
+
+ externalPort2: 8202
+ nodePort2: "08"
+
+ externalPort3: 8280
+ nodePort3: 46
+
+ externalPort4: 8443
+ nodePort4: 67
+
+ clusterPort: 2550
+ clusterPort2: 2650
+ clusterPort3: 2681
+
+ geoNodePort1: 61
+ geoNodePort2: 62
+ geoNodePort3: 63
+ geoNodePort4: 64
+ geoNodePort5: 65
+ geoNodePort6: 66
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sdnc/mdsal
+ mdsalPath: /opt/opendaylight/current/daexim
+
+ingress:
+ enabled: false
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP Mock Sniro Emulator
+name: sniro-emulator
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# 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.
+*/}}
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | default "http" }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName | default "http" }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global: # global defaults
+ nodePortPrefix: 302
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sniroemulator
+pullPolicy: IfNotPresent
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sniro-emulator
+ internalPort: 9999
+ externalPort: 80
+ nodePort: 88
+ portName: httpd
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
+++ /dev/null
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-# ===================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END============================================
-#
-# ECOMP and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-cd /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
-mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < create_mso_db-demo-vfw.sql
\ No newline at end of file
+++ /dev/null
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-# ===================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END============================================
-#
-# ECOMP and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-
-# TODO: update this script to work with the new DB schema
-
-# mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "UPDATE heat_environment SET ENVIRONMENT='parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE' where id=5;" mso_catalog
+++ /dev/null
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-LOCK TABLES `NETWORK_RESOURCE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` DISABLE KEYS */;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` ENABLE KEYS */;
-insert into NETWORK_RESOURCE (id, NETWORK_TYPE, VERSION_STR, ORCHESTRATION_MODE ,DESCRIPTION, TEMPLATE_ID, NEUTRON_NETWORK_TYPE, AIC_VERSION_MIN) values
-(1, "vlan",'1',"NEUTRON","Cool network",1,"BASIC","0");
-UNLOCK TABLES;
-
-LOCK TABLES `NETWORK_RECIPE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RECIPE` DISABLE KEYS */;
-INSERT INTO `NETWORK_RECIPE`(`NETWORK_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-('vlan','CREATE','1',NULL,'/active-bpel/services/REST/CreateNetwork',NULL,180,NULL),
-('vlan','DELETE','1',NULL,'/active-bpel/services/REST/DeleteNetwork',NULL,180,NULL);
-/*!40000 ALTER TABLE `NETWORK_RECIPE` ENABLE KEYS */;
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RECIPE` WRITE;
-INSERT INTO `VNF_RECIPE`(`ID`, `VNF_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-(100,'VPE','CREATE','1','','/active-bpel/services/REST/CreateGenericVNF','',180,'SDN-ETHERNET-INTERNET'),
-(101,'VPE','DELETE','1','','/active-bpel/services/REST/DeleteGenericVNF','',180,'SDN-ETHERNET-INTERNET');
-UNLOCK TABLES;
-
-LOCK TABLES `VF_MODULE` WRITE;
-INSERT INTO `VF_MODULE`(`ID`, `TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `MODEL_NAME`, `MODEL_VERSION`, `IS_BASE`, `VNF_RESOURCE_ID`) VALUES
-(100,'dns-servicetest/DNSResource-1::VF_DNS::module-1','1.0','VF_DNS::module-1','1.0','1','7'),
-(101,'dns-servicetest/DNSResource-1::Mog111..mog_psm..module-1','1.0','Mog111..mog_psm..module-1','1.0','1','7');
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RESOURCE` WRITE;
-INSERT INTO `VNF_RESOURCE`(`ID`, `VNF_TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `ORCHESTRATION_MODE`, `MODEL_VERSION`) VALUES
-(100,'dns-servicetest/DNSResource-1','1.0','VF_DNS::module-1','1.0');
-UNLOCK TABLES;
-
-DELETE FROM HEAT_TEMPLATE_PARAMS;
-DELETE FROM HEAT_TEMPLATE;
-DELETE FROM HEAT_ENVIRONMENT;
+++ /dev/null
-SOURCE ../../camunda/mariadb_engine_7.7.3-ee.sql
-
---
--- Create an admin user automatically for the cockpit
---
-SOURCE ../../camunda/mysql_create_camunda_admin.sql
-
---
--- Current Database: `mso_requests`
---
-
-DROP DATABASE IF EXISTS `mso_requests`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_requests` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_requests`;
-
-SOURCE ../../main-schemas/MySQL-Requests-schema.sql
-
---
--- Current Database: `mso_catalog`
---
-
-DROP DATABASE IF EXISTS `mso_catalog`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_catalog` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_catalog`;
-
-SOURCE ../../main-schemas/MySQL-Catalog-schema.sql
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','Contrail30-l2nodhcp','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network with L2NODHCP\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_allow_transit:\n type: boolean\n description: allow_transit for the VirtualNetwork\n default: True\n virtual_network_properties_forwarding_mode:\n type: string\n description: forwarding_mode for the VirtualNetwork\n default: l2\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n flood_unknown_unicast:\n type: boolean\n description: flood_unknown_unicast for the VirtualNetwork\n default: True\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n flood_unknown_unicast: { get_param: flood_unknown_unicast } \n virtual_network_properties:\n {\n virtual_network_properties_allow_transit: { get_param: virtual_network_properties_allow_transit },\n virtual_network_properties_forwarding_mode: { get_param: virtual_network_properties_forwarding_mode },\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf },\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','Contrail30-gndirect','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network for GNDIRECT\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n virtual_network_properties:\n {\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf }\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`,`NAME`,`VERSION`,`BODY`,`TIMEOUT_MINUTES`,`DESCRIPTION`,`CREATION_TIMESTAMP`,`ARTIFACT_CHECKSUM`) VALUES ('efee1d84-b8ec-11e7-abc4-cec278b6b50a','Generic NeutronNet','1','heat_template_version: 2013-05-23\n\ndescription:\n HOT template that creates a Generic Neutron Network\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_name:\n type: string\n description: Name of subnet network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_cidr:\n type: string\n description: CIDR of subnet network (e.g. core, dmz)\n default: 10.0.0.0/16\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n network:\n type: OS::Neutron::Net\n properties:\n name: {get_param: network_name }\n\n subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: network_subnet_name }\n network_id: { get_resource: network }\n cidr: { get_param: network_subnet_cidr }\n enable_dhcp: false\n',10,'Generic Neutron Template','2017-10-26 14:44:00', 'MANUAL RECORD');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','flood_unknown_unicast','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_allow_transit','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_forwarding_mode','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (1,'CONTRAIL_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (2,'CONTRAIL_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (3,'CONTRAIL_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (4,'CONTRAIL_SHARED','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (5,'CONTRAIL_SHARED','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (6,'CONTRAIL_SHARED','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (7,'CONTRAIL_EXTERNAL','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (8,'CONTRAIL_EXTERNAL','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (9,'CONTRAIL_EXTERNAL','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (10,'CONTRAIL30_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (11,'CONTRAIL30_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (12,'CONTRAIL30_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (13,'CONTRAIL30_MPSCE','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (14,'CONTRAIL30_MPSCE','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (15,'CONTRAIL30_MPSCE','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (16,'VID_DEFAULT','createInstance','VID_DEFAULT recipe to create network if no custom BPMN flow is found','/mso/async/services/CreateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (17,'VID_DEFAULT','updateInstance','VID_DEFAULT recipe to update network if no custom BPMN flow is found','/mso/async/services/UpdateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (18,'VID_DEFAULT','deleteInstance','VID_DEFAULT recipe to delete network if no custom BPMN flow is found','/mso/async/services/DeleteNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (19,'CONTRAIL30_L2NODHCP','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (20,'CONTRAIL30_L2NODHCP','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (21,'CONTRAIL30_L2NODHCP','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (22,'CONTRAIL30_GNDIRECT','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (23,'CONTRAIL30_GNDIRECT','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (24,'CONTRAIL30_GNDIRECT','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc36cc-a9fe-11e7-8b4b-0242ac120002','VID_DEFAULT','48cd56c8-a9fe-11e7-8b4b-0242ac120002','1.0','Default service for VID to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc3acd-a9fe-11e7-8b4b-0242ac120002','*','48ce2256-a9fe-11e7-8b4b-0242ac120002','1.0','Default service to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (1,'createInstance','1','VID_DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (2,'deleteInstance','1','VID_DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (3,'createInstance','1','DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (4,'deleteInstance','1','DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-
---
--- Custom Reciepe for the VoLTE service added temporarily
---
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('dfcd7471-16c7-444e-8268-d4c50d90593a','UUI_DEFAULT','dfcd7471-16c7-444e-8268-d4c50d90593a','1.0','Default service for UUI to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-23 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (11,'createInstance','1','Custom recipe to create E2E service-instance if no custom BPMN flow is found','/mso/async/services/CreateCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (12,'deleteInstance','1','Custom recipe to delete E2E service-instance if no custom BPMN flow is found','/mso/async/services/DeleteCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_GNDIRECT','4885c7a1-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_L2NODHCP','4885c198-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`,`AIC_VERSION_MIN` , `AIC_VERSION_MAX` ) VALUES ('Generic NeutronNet','efee1d84-b8ec-11e7-abc4-cec278b6b50a','2.0','NULL');
-
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,'*','VOLUME_GROUP',NULL,'CREATE',NULL,'1','Recipe Match All for','/mso/async/services/createCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,'*','VOLUME_GROUP',NULL,'DELETE',NULL,'1','Recipe Match All for','/mso/async/services/deleteCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,'*','VOLUME_GROUP',NULL,'UPDATE',NULL,'1','Recipe Match All for','/mso/async/services/updateCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,NULL,'VOLUME_GROUP',NULL,'CREATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/CreateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,NULL,'VOLUME_GROUP',NULL,'DELETE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/DeleteVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,NULL,'VOLUME_GROUP',NULL,'UPDATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/UpdateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'volumeGroup','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'volumeGroup','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (9,NULL,'volumeGroup','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (10,NULL,'vfModule','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (11,NULL,'vfModule','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (12,NULL,'vfModule','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-
---
--- Default Reciepe for the VNF componnets added start #SO-334, to unblock the VNF operations
---
-
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','createInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/CreateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','updateInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/UpdateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','deleteInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/DeleteVfModuleInfra','vfModule',NULL,180,NULL);
---
--- Default Reciepe for the VNF componnets added End
---
-
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,NULL,'CREATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/CreateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,NULL,'DELETE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/async/services//deleteGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,NULL,'UPDATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/updateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,'*','CREATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/CreateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,'*','DELETE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/DeleteVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,'*','UPDATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/UpdateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'createInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to create VNF if no custom BPMN flow is found','/mso/async/services/CreateVnfInfra',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'deleteInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to delete VNF if no custom BPMN flow is found','/mso/async/services/DeleteVnfInfra',NULL,180,'2017-10-05 18:52:03');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+++ /dev/null
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID1','base_vlb.env','1.0','BASE VLB ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_net_cidr: 192.168.10.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.211\n vdns_private_ip_1: 192.168.9.211\n vlb_name_0: zdfw1lb01lb01\n vdns_name_0: zdfw1lb01dns01\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID2','dnsscaling.env','1.0','DNS Scaling ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.222\n vdns_private_ip_1: 192.168.9.222\n vdns_name_0: zdfw1lb01dns02\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID1','base_vlb.yaml','1.0','Base VLB Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vLoadBalancer/vDNS demo app for OpenECOMP\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_net_cidr:\n type: string\n label: vLoadBalancer private network CIDR\n description: The CIDR of the vLoadBalancer private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vlb_name_0:\n type: string\n label: vLoadBalancer name\n description: Name of the vLoadBalancer\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n vlb_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: vlb_private_net_id }\n\n vlb_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: vlb_private_net_id }\n network_id: { get_resource: vlb_private_network }\n cidr: { get_param: vlb_private_net_cidr }\n\n vlb_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vlb_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vlb_private_0_port }\n - port: { get_resource: vlb_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__: { get_param: dcae_collector_ip }\n __local_private_ipaddr__: { get_param: vlb_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_lb_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vlb.sh\n chmod +x v_lb_init.sh\n chmod +x vlb.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n LOCAL_PUBLIC_IPADDR=$(ifconfig eth0 | grep \"inet addr\" | tr -s \' \' | cut -d\' \' -f3 | cut -d\':\' -f2)\n echo $LOCAL_PUBLIC_IPADDR > config/local_public_ipaddr.txt\n mv vlb.sh /etc/init.d\n update-rc.d vlb.sh defaults\n ./v_lb_init.sh\n\n vlb_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vlb_private_ip_0 }}]\n\n vlb_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vlb_private_ip_1 }}]\n\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID2','dnsscaling.yaml','1.0','DNS Scaling Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy a vDNS for OpenECOMP (scaling-up scenario)\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_param: key_name }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: vlb_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: vlb_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','dcae_collector_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','key_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','public_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','pub_key','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdsn_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vf_module_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_flavor_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_image_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vnf_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','webserver_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','dcae_collector_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','ecomp_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','key_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','public_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','pub_key','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdsn_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vf_module_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_flavor_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_image_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vnf_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','webserver_ip','\ 1','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','dns-service','585822c8-4027-4f84-ba50-e9248606f111','1.0','dns service for unit test','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `service_to_resource_customizations` (`SERVICE_MODEL_UUID`, `RESOURCE_MODEL_CUSTOMIZATION_UUID`, `MODEL_TYPE`, `CREATION_TIMESTAMP`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','302aa6be-a9fe-11e7-8b4b-0242ac120002','vnf','2017-10-05 18:51:28');
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f132','1.0','VF_RI1_DNS::module-1',NULL,1,'Artifact-UUID1',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group','585822c7-4027-4f84-ba50-e9248606f133','1.0','VF_RI1_DNS::module-2',NULL,0,'Artifact-UUID2',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('30316d81-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID1',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group');
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('303170ae-a9fe-11e7-8b4b-0242ac120002',NULL,0,0,NULL,NULL,'EnvArtifact-UUID2',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group');
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','30316d81-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','303170ae-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','dns service for unit test1707MIGRATED','2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f112','1.0','DNSResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','DNSResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:51:25','585822c7-4027-4f84-ba50-e9248606f131');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+++ /dev/null
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID3','base_vfw.env','1.0','base_vfw ENV file','parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID3','base_vfw.yaml','1.0','Base VFW Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vFirewall demo app for OpenECOMP\n\nparameters:\n vfw_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vfw_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n unprotected_private_net_id:\n type: string\n label: Unprotected private network name or ID\n description: Private network that connects vPacketGenerator with vFirewall\n protected_private_net_id:\n type: string\n label: Protected private network name or ID\n description: Private network that connects vFirewall with vSink\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n unprotected_private_net_cidr:\n type: string\n label: Unprotected private network CIDR\n description: The CIDR of the unprotected private network\n protected_private_net_cidr:\n type: string\n label: Protected private network CIDR\n description: The CIDR of the protected private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vfw_private_ip_0:\n type: string\n label: vFirewall private IP address towards the unprotected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator\n vfw_private_ip_1:\n type: string\n label: vFirewall private IP address towards the protected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vSink\n vfw_private_ip_2:\n type: string\n label: vFirewall private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vFirewall to communicate with ECOMP components\n vpg_private_ip_0:\n type: string\n label: vPacketGenerator private IP address towards the unprotected network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall\n vpg_private_ip_1:\n type: string\n label: vPacketGenerator private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with ECOMP components\n vsn_private_ip_0:\n type: string\n label: vSink private IP address towards the protected network\n description: Private IP address that is assigned to the vSink to communicate with the vFirewall\n vsn_private_ip_1:\n type: string\n label: vSink private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vSink to communicate with ECOMP components\n vfw_name_0:\n type: string\n label: vFirewall name\n description: Name of the vFirewall\n vpg_name_0:\n type: string\n label: vPacketGenerator name\n description: Name of the vPacketGenerator\n vsn_name_0:\n type: string\n label: vSink name\n description: Name of the vSink\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vFirewall Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n unprotected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: unprotected_private_net_id }\n\n protected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: protected_private_net_id }\n\n unprotected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: unprotected_private_network }\n cidr: { get_param: unprotected_private_net_cidr }\n\n protected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: protected_private_network }\n cidr: { get_param: protected_private_net_cidr }\n\n vfw_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vfw_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vfw_private_0_port }\n - port: { get_resource: vfw_private_1_port }\n - port: { get_resource: vfw_private_2_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__ : { get_param: dcae_collector_ip }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_firewall_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vfirewall.sh\n chmod +x v_firewall_init.sh\n chmod +x vfirewall.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo \"no\" > config/install.txt\n mv vfirewall.sh /etc/init.d\n sudo update-rc.d vfirewall.sh defaults\n ./v_firewall_init.sh\n\n vfw_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_0 }}]\n\n vfw_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_1 }}]\n\n vfw_private_2_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vfw_private_ip_2 }}]\n\n vpg_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vpg_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vpg_private_0_port }\n - port: { get_resource: vpg_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __fw_ipaddr__: { get_param: vfw_private_ip_0 }\n __protected_net_cidr__: { get_param: protected_private_net_cidr }\n __sink_ipaddr__: { get_param: vsn_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n FW_IPADDR=__fw_ipaddr__\n PROTECTED_NET_CIDR=__protected_net_cidr__\n SINK_IPADDR=__sink_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_packetgen_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vpacketgen.sh\n chmod +x v_packetgen_init.sh\n chmod +x vpacketgen.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $FW_IPADDR > config/fw_ipaddr.txt\n echo $PROTECTED_NET_CIDR > config/protected_net_cidr.txt\n echo $SINK_IPADDR > config/sink_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vpacketgen.sh /etc/init.d\n sudo update-rc.d vpacketgen.sh defaults\n ./v_packetgen_init.sh\n\n vpg_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vpg_private_ip_0 }}]\n\n vpg_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vpg_private_ip_1 }}]\n\n vsn_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vsn_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vsn_private_0_port }\n - port: { get_resource: vsn_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __protected_net_gw__: { get_param: vfw_private_ip_1 }\n __unprotected_net__: { get_param: unprotected_private_net_cidr }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n PROTECTED_NET_GW=__protected_net_gw__\n UNPROTECTED_NET=__unprotected_net__\n UNPROTECTED_NET=$(echo $UNPROTECTED_NET | cut -d\'/\' -f1)\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_sink_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vsink.sh\n chmod +x v_sink_init.sh\n chmod +x vsink.sh\n echo $PROTECTED_NET_GW > config/protected_net_gw.txt\n echo $UNPROTECTED_NET > config/unprotected_net.txt\n echo \"no\" > config/install.txt\n mv vsink.sh /etc/init.d\n sudo update-rc.d vsink.sh defaults\n ./v_sink_init.sh\n\n vsn_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vsn_private_ip_0 }}]\n\n vsn_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vsn_private_ip_1 }}]\n \n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','dcae_collector_ip','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','key_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','public_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','pub_key','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_cidr','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_flavor_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_image_name','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_2','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vf_module_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vnf_id','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_name_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_0','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_1','\ 1','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','webserver_ip','\ 1','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('2e34774e-715e-4fd5-bd09-7b654622f35i','vfw-service','585822c7-4027-4f84-ba50-e9248606f112','1.0','VFW service','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f134','1.0','VF_RI1_VFW::module-1',NULL,1,'Artifact-UUID3',NULL,'2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('5aa23938-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID3',NULL,'2017-10-05 18:52:03','1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','5aa23938-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:52:03');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','VFW service1707MIGRATED','2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f113','1.0','VFWResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','VFWResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:52:03','685822c7-4027-4f84-ba50-e9248606f132');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+++ /dev/null
-DROP DATABASE IF EXISTS `camundabpmn`;
-
-CREATE DATABASE `camundabpmn`;
-
-USE `camundabpmn`;
-
-# DROP USER IF EXISTS 'camunda';
-delete from mysql.user where User='camunda';
-CREATE USER 'camunda';
-GRANT ALL on camundabpmn.* to 'camunda' identified by 'camunda123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `camundabpmn`;
-
-create table ACT_GE_PROPERTY (
- NAME_ varchar(64),
- VALUE_ varchar(300),
- REV_ integer,
- primary key (NAME_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-insert into ACT_GE_PROPERTY
-values ('schema.version', 'fox', 1);
-
-insert into ACT_GE_PROPERTY
-values ('schema.history', 'create(fox)', 1);
-
-insert into ACT_GE_PROPERTY
-values ('next.dbid', '1', 1);
-
-insert into ACT_GE_PROPERTY
-values ('deployment.lock', '0', 1);
-
-insert into ACT_GE_PROPERTY
-values ('history.cleanup.job.lock', '0', 1);
-
-create table ACT_GE_BYTEARRAY (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- BYTES_ LONGBLOB,
- GENERATED_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_DEPLOYMENT (
- ID_ varchar(64),
- NAME_ varchar(255),
- DEPLOY_TIME_ timestamp(3),
- SOURCE_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXECUTION (
- ID_ varchar(64),
- REV_ integer,
- PROC_INST_ID_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- SUPER_EXEC_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- IS_ACTIVE_ TINYINT,
- IS_CONCURRENT_ TINYINT,
- IS_SCOPE_ TINYINT,
- IS_EVENT_SCOPE_ TINYINT,
- SUSPENSION_STATE_ integer,
- CACHED_ENT_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOB (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- TYPE_ varchar(255) NOT NULL,
- LOCK_EXP_TIME_ timestamp(3) NULL,
- LOCK_OWNER_ varchar(255),
- EXCLUSIVE_ boolean,
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- RETRIES_ integer,
- EXCEPTION_STACK_ID_ varchar(64),
- EXCEPTION_MSG_ varchar(4000),
- DUEDATE_ timestamp(3) NULL,
- REPEAT_ varchar(255),
- HANDLER_TYPE_ varchar(255),
- HANDLER_CFG_ varchar(4000),
- DEPLOYMENT_ID_ varchar(64),
- SUSPENSION_STATE_ integer NOT NULL DEFAULT 1,
- JOB_DEF_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOBDEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- JOB_TYPE_ varchar(255) NOT NULL,
- JOB_CONFIGURATION_ varchar(255),
- SUSPENSION_STATE_ integer,
- JOB_PRIORITY_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_PROCDEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- HAS_START_FORM_KEY_ TINYINT,
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- VERSION_TAG_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_TASK (
- ID_ varchar(64),
- REV_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- TASK_DEF_KEY_ varchar(255),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- DELEGATION_ varchar(64),
- PRIORITY_ integer,
- CREATE_TIME_ timestamp(3),
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_IDENTITYLINK (
- ID_ varchar(64),
- REV_ integer,
- GROUP_ID_ varchar(255),
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_VARIABLE (
- ID_ varchar(64) not null,
- REV_ integer,
- TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- TASK_ID_ varchar(64),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- VAR_SCOPE_ varchar(64) not null,
- SEQUENCE_COUNTER_ bigint,
- IS_CONCURRENT_LOCAL_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EVENT_SUBSCR (
- ID_ varchar(64) not null,
- REV_ integer,
- EVENT_TYPE_ varchar(255) not null,
- EVENT_NAME_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- CONFIGURATION_ varchar(255),
- CREATED_ timestamp(3) not null,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_INCIDENT (
- ID_ varchar(64) not null,
- REV_ integer not null,
- INCIDENT_TIMESTAMP_ timestamp(3) not null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_AUTHORIZATION (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ integer not null,
- GROUP_ID_ varchar(255),
- USER_ID_ varchar(255),
- RESOURCE_TYPE_ integer not null,
- RESOURCE_ID_ varchar(64),
- PERMS_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_FILTER (
- ID_ varchar(64) not null,
- REV_ integer not null,
- RESOURCE_TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- OWNER_ varchar(255),
- QUERY_ LONGTEXT not null,
- PROPERTIES_ LONGTEXT,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_METER_LOG (
- ID_ varchar(64) not null,
- NAME_ varchar(64) not null,
- REPORTER_ varchar(255),
- VALUE_ bigint,
- TIMESTAMP_ timestamp(3),
- MILLISECONDS_ bigint DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXT_TASK (
- ID_ varchar(64) not null,
- REV_ integer not null,
- WORKER_ID_ varchar(255),
- TOPIC_NAME_ varchar(255),
- RETRIES_ integer,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- LOCK_EXP_TIME_ timestamp(3) NULL,
- SUSPENSION_STATE_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_BATCH (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_CREATED_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- SUSPENSION_STATE_ integer,
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_EXEC_BUSKEY on ACT_RU_EXECUTION(BUSINESS_KEY_);
-create index ACT_IDX_EXEC_TENANT_ID on ACT_RU_EXECUTION(TENANT_ID_);
-create index ACT_IDX_TASK_CREATE on ACT_RU_TASK(CREATE_TIME_);
-create index ACT_IDX_TASK_ASSIGNEE on ACT_RU_TASK(ASSIGNEE_);
-create index ACT_IDX_TASK_TENANT_ID on ACT_RU_TASK(TENANT_ID_);
-create index ACT_IDX_IDENT_LNK_USER on ACT_RU_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_IDENT_LNK_GROUP on ACT_RU_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_EVENT_SUBSCR_CONFIG_ on ACT_RU_EVENT_SUBSCR(CONFIGURATION_);
-create index ACT_IDX_EVENT_SUBSCR_TENANT_ID on ACT_RU_EVENT_SUBSCR(TENANT_ID_);
-create index ACT_IDX_VARIABLE_TASK_ID on ACT_RU_VARIABLE(TASK_ID_);
-create index ACT_IDX_VARIABLE_TENANT_ID on ACT_RU_VARIABLE(TENANT_ID_);
-create index ACT_IDX_ATHRZ_PROCEDEF on ACT_RU_IDENTITYLINK(PROC_DEF_ID_);
-create index ACT_IDX_INC_CONFIGURATION on ACT_RU_INCIDENT(CONFIGURATION_);
-create index ACT_IDX_INC_TENANT_ID on ACT_RU_INCIDENT(TENANT_ID_);
--- CAM-5914
-create index ACT_IDX_JOB_EXECUTION_ID on ACT_RU_JOB(EXECUTION_ID_);
--- this index needs to be limited in mariadb see CAM-6938
-create index ACT_IDX_JOB_HANDLER on ACT_RU_JOB(HANDLER_TYPE_(100),HANDLER_CFG_(155));
-create index ACT_IDX_JOB_PROCINST on ACT_RU_JOB(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_JOB_TENANT_ID on ACT_RU_JOB(TENANT_ID_);
-create index ACT_IDX_JOBDEF_TENANT_ID on ACT_RU_JOBDEF(TENANT_ID_);
-
--- new metric milliseconds column
-CREATE INDEX ACT_IDX_METER_LOG_MS ON ACT_RU_METER_LOG(MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_NAME_MS ON ACT_RU_METER_LOG(NAME_, MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_REPORT ON ACT_RU_METER_LOG(NAME_, REPORTER_, MILLISECONDS_);
-
--- old metric timestamp column
-CREATE INDEX ACT_IDX_METER_LOG_TIME ON ACT_RU_METER_LOG(TIMESTAMP_);
-CREATE INDEX ACT_IDX_METER_LOG ON ACT_RU_METER_LOG(NAME_, TIMESTAMP_);
-
-create index ACT_IDX_EXT_TASK_TOPIC on ACT_RU_EXT_TASK(TOPIC_NAME_);
-create index ACT_IDX_EXT_TASK_TENANT_ID on ACT_RU_EXT_TASK(TENANT_ID_);
-create index ACT_IDX_EXT_TASK_PRIORITY ON ACT_RU_EXT_TASK(PRIORITY_);
-create index ACT_IDX_EXT_TASK_ERR_DETAILS ON ACT_RU_EXT_TASK(ERROR_DETAILS_ID_);
-create index ACT_IDX_AUTH_GROUP_ID ON ACT_RU_AUTHORIZATION(GROUP_ID_);
-create index ACT_IDX_JOB_JOB_DEF_ID on ACT_RU_JOB(JOB_DEF_ID_);
-
-alter table ACT_GE_BYTEARRAY
- add constraint ACT_FK_BYTEARR_DEPL
- foreign key (DEPLOYMENT_ID_)
- references ACT_RE_DEPLOYMENT (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_SUPER
- foreign key (SUPER_EXEC_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_TSKASS_TASK
- foreign key (TASK_ID_)
- references ACT_RU_TASK (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_ATHRZ_PROCEDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_BYTEARRAY
- foreign key (BYTEARRAY_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_JOB
- add constraint ACT_FK_JOB_EXCEPTION
- foreign key (EXCEPTION_STACK_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_EVENT_SUBSCR
- add constraint ACT_FK_EVENT_EXEC
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_CAUSE
- foreign key (CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_RCAUSE
- foreign key (ROOT_CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_ERROR_DETAILS
- foreign key (ERROR_DETAILS_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-create index ACT_IDX_INC_JOB_DEF on ACT_RU_INCIDENT(JOB_DEF_ID_);
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_JOB_DEF
- foreign key (JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_USER
- unique (USER_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_GROUP
- unique (GROUP_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_UNIQ_VARIABLE
- unique (VAR_SCOPE_, NAME_);
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-create index ACT_IDX_BATCH_SEED_JOB_DEF ON ACT_RU_BATCH(SEED_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_SEED_JOB_DEF
- foreign key (SEED_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_MONITOR_JOB_DEF ON ACT_RU_BATCH(MONITOR_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_MONITOR_JOB_DEF
- foreign key (MONITOR_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_JOB_DEF ON ACT_RU_BATCH(BATCH_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_JOB_DEF
- foreign key (BATCH_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
--- indexes for deadlock problems - https://app.camunda.com/jira/browse/CAM-2567 --
-create index ACT_IDX_INC_CAUSEINCID on ACT_RU_INCIDENT(CAUSE_INCIDENT_ID_);
-create index ACT_IDX_INC_EXID on ACT_RU_INCIDENT(EXECUTION_ID_);
-create index ACT_IDX_INC_PROCDEFID on ACT_RU_INCIDENT(PROC_DEF_ID_);
-create index ACT_IDX_INC_PROCINSTID on ACT_RU_INCIDENT(PROC_INST_ID_);
-create index ACT_IDX_INC_ROOTCAUSEINCID on ACT_RU_INCIDENT(ROOT_CAUSE_INCIDENT_ID_);
--- index for deadlock problem - https://app.camunda.com/jira/browse/CAM-4440 --
-create index ACT_IDX_AUTH_RESOURCE_ID on ACT_RU_AUTHORIZATION(RESOURCE_ID_);
--- index to prevent deadlock on fk constraint - https://app.camunda.com/jira/browse/CAM-5440 --
-create index ACT_IDX_EXT_TASK_EXEC on ACT_RU_EXT_TASK(EXECUTION_ID_);
-
--- indexes to improve deployment
-create index ACT_IDX_BYTEARRAY_NAME on ACT_GE_BYTEARRAY(NAME_);
-create index ACT_IDX_DEPLOYMENT_NAME on ACT_RE_DEPLOYMENT(NAME_);
-create index ACT_IDX_DEPLOYMENT_TENANT_ID on ACT_RE_DEPLOYMENT(TENANT_ID_);
-create index ACT_IDX_JOBDEF_PROC_DEF_ID ON ACT_RU_JOBDEF(PROC_DEF_ID_);
-create index ACT_IDX_JOB_HANDLER_TYPE ON ACT_RU_JOB(HANDLER_TYPE_);
-create index ACT_IDX_EVENT_SUBSCR_EVT_NAME ON ACT_RU_EVENT_SUBSCR(EVENT_NAME_);
-create index ACT_IDX_PROCDEF_DEPLOYMENT_ID ON ACT_RE_PROCDEF(DEPLOYMENT_ID_);
-create index ACT_IDX_PROCDEF_TENANT_ID ON ACT_RE_PROCDEF(TENANT_ID_);
-create index ACT_IDX_PROCDEF_VER_TAG ON ACT_RE_PROCDEF(VERSION_TAG_);
--- create case definition table --
-create table ACT_RE_CASE_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case execution table --
-create table ACT_RU_CASE_EXECUTION (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- SUPER_EXEC_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- ACT_ID_ varchar(255),
- PREV_STATE_ integer,
- CURRENT_STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case sentry part table --
-
-create table ACT_RU_CASE_SENTRY_PART (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- CASE_EXEC_ID_ varchar(64),
- SENTRY_ID_ varchar(255),
- TYPE_ varchar(255),
- SOURCE_CASE_EXEC_ID_ varchar(64),
- STANDARD_EVENT_ varchar(255),
- SOURCE_ varchar(255),
- VARIABLE_EVENT_ varchar(255),
- VARIABLE_NAME_ varchar(255),
- SATISFIED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create index on business key --
-create index ACT_IDX_CASE_EXEC_BUSKEY on ACT_RU_CASE_EXECUTION(BUSINESS_KEY_);
-
--- create foreign key constraints on ACT_RU_CASE_EXECUTION --
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_VARIABLE --
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
--- create foreign key constraints on ACT_RU_TASK --
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_CASE_SENTRY_PART --
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_EXEC
- foreign key (CASE_EXEC_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-create index ACT_IDX_CASE_DEF_TENANT_ID on ACT_RE_CASE_DEF(TENANT_ID_);
-create index ACT_IDX_CASE_EXEC_TENANT_ID on ACT_RU_CASE_EXECUTION(TENANT_ID_);
--- create decision definition table --
-create table ACT_RE_DECISION_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create decision requirements definition table --
-create table ACT_RE_DECISION_REQ_DEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) NOT NULL,
- VERSION_ integer NOT NULL,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_RE_DECISION_DEF
- add constraint ACT_FK_DEC_REQ
- foreign key (DEC_REQ_ID_)
- references ACT_RE_DECISION_REQ_DEF(ID_);
-
-create index ACT_IDX_DEC_DEF_TENANT_ID on ACT_RE_DECISION_DEF(TENANT_ID_);
-create index ACT_IDX_DEC_DEF_REQ_ID on ACT_RE_DECISION_DEF(DEC_REQ_ID_);
-create index ACT_IDX_DEC_REQ_DEF_TENANT_ID on ACT_RE_DECISION_REQ_DEF(TENANT_ID_);
-create table ACT_HI_PROCINST (
- ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- START_USER_ID_ varchar(255),
- START_ACT_ID_ varchar(255),
- END_ACT_ID_ varchar(255),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- DELETE_REASON_ varchar(4000),
- TENANT_ID_ varchar(64),
- STATE_ varchar(255),
- primary key (ID_),
- unique (PROC_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- EXECUTION_ID_ varchar(64) not null,
- ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- ACT_NAME_ varchar(255),
- ACT_TYPE_ varchar(255) not null,
- ASSIGNEE_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- ACT_INST_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_TASKINST (
- ID_ varchar(64) not null,
- TASK_DEF_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- DELETE_REASON_ varchar(4000),
- PRIORITY_ integer,
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_VARINST (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(100),
- REV_ integer,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_DETAIL (
- ID_ varchar(64) not null,
- TYPE_ varchar(255) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- VAR_INST_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(255),
- REV_ integer,
- TIME_ datetime(3) not null,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- OPERATION_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_IDENTITYLINK (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- GROUP_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- OPERATION_TYPE_ varchar(64),
- ASSIGNER_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_COMMENT (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TIME_ datetime(3) not null,
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTION_ varchar(255),
- MESSAGE_ varchar(4000),
- FULL_MSG_ LONGBLOB,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ATTACHMENT (
- ID_ varchar(64) not null,
- REV_ integer,
- USER_ID_ varchar(255),
- NAME_ varchar(255),
- DESCRIPTION_ varchar(4000),
- TYPE_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- URL_ varchar(4000),
- CONTENT_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_OP_LOG (
- ID_ varchar(64) not null,
- DEPLOYMENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- JOB_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- BATCH_ID_ varchar(64),
- USER_ID_ varchar(255),
- TIMESTAMP_ timestamp(3) not null,
- OPERATION_TYPE_ varchar(64),
- OPERATION_ID_ varchar(64),
- ENTITY_TYPE_ varchar(30),
- PROPERTY_ varchar(64),
- ORG_VALUE_ varchar(4000),
- NEW_VALUE_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_INCIDENT (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CREATE_TIME_ timestamp(3) not null,
- END_TIME_ timestamp(3) null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- ACTIVITY_ID_ varchar(255),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- INCIDENT_STATE_ integer,
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_JOB_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- JOB_ID_ varchar(64) not null,
- JOB_DUEDATE_ timestamp(3) NULL,
- JOB_RETRIES_ integer,
- JOB_PRIORITY_ bigint NOT NULL DEFAULT 0,
- JOB_EXCEPTION_MSG_ varchar(4000),
- JOB_EXCEPTION_STACK_ID_ varchar(64),
- JOB_STATE_ integer,
- JOB_DEF_ID_ varchar(64),
- JOB_DEF_TYPE_ varchar(255),
- JOB_DEF_CONFIGURATION_ varchar(255),
- ACT_ID_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_BATCH (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_EXT_TASK_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- EXT_TASK_ID_ varchar(64) not null,
- RETRIES_ integer,
- TOPIC_NAME_ varchar(255),
- WORKER_ID_ varchar(255),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- STATE_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_PRO_INST_END on ACT_HI_PROCINST(END_TIME_);
-create index ACT_IDX_HI_PRO_I_BUSKEY on ACT_HI_PROCINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_PRO_INST_TENANT_ID on ACT_HI_PROCINST(TENANT_ID_);
-create index ACT_IDX_HI_PRO_INST_PROC_DEF_KEY on ACT_HI_PROCINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_ACT_INST_START on ACT_HI_ACTINST(START_TIME_);
-create index ACT_IDX_HI_ACT_INST_END on ACT_HI_ACTINST(END_TIME_);
-create index ACT_IDX_HI_ACT_INST_PROCINST on ACT_HI_ACTINST(PROC_INST_ID_, ACT_ID_);
-create index ACT_IDX_HI_ACT_INST_COMP on ACT_HI_ACTINST(EXECUTION_ID_, ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_ACT_INST_STATS on ACT_HI_ACTINST(PROC_DEF_ID_, ACT_ID_, END_TIME_, ACT_INST_STATE_);
-create index ACT_IDX_HI_ACT_INST_TENANT_ID on ACT_HI_ACTINST(TENANT_ID_);
-create index ACT_IDX_HI_ACT_INST_PROC_DEF_KEY on ACT_HI_ACTINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_TASK_INST_TENANT_ID on ACT_HI_TASKINST(TENANT_ID_);
-create index ACT_IDX_HI_TASK_INST_PROC_DEF_KEY on ACT_HI_TASKINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_DETAIL_PROC_INST on ACT_HI_DETAIL(PROC_INST_ID_);
-create index ACT_IDX_HI_DETAIL_ACT_INST on ACT_HI_DETAIL(ACT_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_INST on ACT_HI_DETAIL(CASE_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_EXEC on ACT_HI_DETAIL(CASE_EXECUTION_ID_);
-create index ACT_IDX_HI_DETAIL_TIME on ACT_HI_DETAIL(TIME_);
-create index ACT_IDX_HI_DETAIL_NAME on ACT_HI_DETAIL(NAME_);
-create index ACT_IDX_HI_DETAIL_TASK_ID on ACT_HI_DETAIL(TASK_ID_);
-create index ACT_IDX_HI_DETAIL_TENANT_ID on ACT_HI_DETAIL(TENANT_ID_);
-create index ACT_IDX_HI_DETAIL_PROC_DEF_KEY on ACT_HI_DETAIL(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_IDENT_LNK_USER on ACT_HI_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_HI_IDENT_LNK_GROUP on ACT_HI_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_HI_IDENT_LNK_TENANT_ID on ACT_HI_IDENTITYLINK(TENANT_ID_);
-create index ACT_IDX_HI_IDENT_LNK_PROC_DEF_KEY on ACT_HI_IDENTITYLINK(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
-create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
-create index ACT_IDX_HI_CASEVAR_CASE_INST on ACT_HI_VARINST(CASE_INST_ID_);
-create index ACT_IDX_HI_VAR_INST_TENANT_ID on ACT_HI_VARINST(TENANT_ID_);
-create index ACT_IDX_HI_VAR_INST_PROC_DEF_KEY on ACT_HI_VARINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_INCIDENT_TENANT_ID on ACT_HI_INCIDENT(TENANT_ID_);
-create index ACT_IDX_HI_INCIDENT_PROC_DEF_KEY on ACT_HI_INCIDENT(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_JOB_LOG_PROCINST on ACT_HI_JOB_LOG(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROCDEF on ACT_HI_JOB_LOG(PROCESS_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_TENANT_ID on ACT_HI_JOB_LOG(TENANT_ID_);
-create index ACT_IDX_HI_JOB_LOG_JOB_DEF_ID on ACT_HI_JOB_LOG(JOB_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROC_DEF_KEY on ACT_HI_JOB_LOG(PROCESS_DEF_KEY_);
-
-create index ACT_HI_EXT_TASK_LOG_PROCINST on ACT_HI_EXT_TASK_LOG(PROC_INST_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROCDEF on ACT_HI_EXT_TASK_LOG(PROC_DEF_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROC_DEF_KEY on ACT_HI_EXT_TASK_LOG(PROC_DEF_KEY_);
-create index ACT_HI_EXT_TASK_LOG_TENANT_ID on ACT_HI_EXT_TASK_LOG(TENANT_ID_);
-
-create index ACT_IDX_HI_OP_LOG_PROCINST on ACT_HI_OP_LOG(PROC_INST_ID_);
-create index ACT_IDX_HI_OP_LOG_PROCDEF on ACT_HI_OP_LOG(PROC_DEF_ID_);
-create table ACT_HI_CASEINST (
- ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64) not null,
- CREATE_TIME_ datetime(3) not null,
- CLOSE_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- CREATE_USER_ID_ varchar(255),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_),
- unique (CASE_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_CASEACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- CASE_ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- CASE_ACT_NAME_ varchar(255),
- CASE_ACT_TYPE_ varchar(255),
- CREATE_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_CAS_I_CLOSE on ACT_HI_CASEINST(CLOSE_TIME_);
-create index ACT_IDX_HI_CAS_I_BUSKEY on ACT_HI_CASEINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_CAS_I_TENANT_ID on ACT_HI_CASEINST(TENANT_ID_);
-create index ACT_IDX_HI_CAS_A_I_CREATE on ACT_HI_CASEACTINST(CREATE_TIME_);
-create index ACT_IDX_HI_CAS_A_I_END on ACT_HI_CASEACTINST(END_TIME_);
-create index ACT_IDX_HI_CAS_A_I_COMP on ACT_HI_CASEACTINST(CASE_ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_CAS_A_I_CASEINST on ACT_HI_CASEACTINST(CASE_INST_ID_, CASE_ACT_ID_);
-create index ACT_IDX_HI_CAS_A_I_TENANT_ID on ACT_HI_CASEACTINST(TENANT_ID_);
--- create history decision instance table --
-create table ACT_HI_DECINST (
- ID_ varchar(64) NOT NULL,
- DEC_DEF_ID_ varchar(64) NOT NULL,
- DEC_DEF_KEY_ varchar(255) NOT NULL,
- DEC_DEF_NAME_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- EVAL_TIME_ datetime(3) not null,
- COLLECT_VALUE_ double,
- USER_ID_ varchar(255),
- ROOT_DEC_INST_ID_ varchar(64),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision input table --
-create table ACT_HI_DEC_IN (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision output table --
-create table ACT_HI_DEC_OUT (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- RULE_ID_ varchar(64),
- RULE_ORDER_ integer,
- VAR_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-
-create index ACT_IDX_HI_DEC_INST_ID on ACT_HI_DECINST(DEC_DEF_ID_);
-create index ACT_IDX_HI_DEC_INST_KEY on ACT_HI_DECINST(DEC_DEF_KEY_);
-create index ACT_IDX_HI_DEC_INST_PI on ACT_HI_DECINST(PROC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_CI on ACT_HI_DECINST(CASE_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT on ACT_HI_DECINST(ACT_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT_INST on ACT_HI_DECINST(ACT_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_TIME on ACT_HI_DECINST(EVAL_TIME_);
-create index ACT_IDX_HI_DEC_INST_TENANT_ID on ACT_HI_DECINST(TENANT_ID_);
-create index ACT_IDX_HI_DEC_INST_ROOT_ID on ACT_HI_DECINST(ROOT_DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_ID on ACT_HI_DECINST(DEC_REQ_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_KEY on ACT_HI_DECINST(DEC_REQ_KEY_);
-
-
-create index ACT_IDX_HI_DEC_IN_INST on ACT_HI_DEC_IN(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_IN_CLAUSE on ACT_HI_DEC_IN(DEC_INST_ID_, CLAUSE_ID_);
-
-create index ACT_IDX_HI_DEC_OUT_INST on ACT_HI_DEC_OUT(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_OUT_RULE on ACT_HI_DEC_OUT(RULE_ORDER_, CLAUSE_ID_);
-
-
--- mariadb identity:
-
-create table ACT_ID_GROUP (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- TYPE_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_MEMBERSHIP (
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (USER_ID_, GROUP_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_USER (
- ID_ varchar(64),
- REV_ integer,
- FIRST_ varchar(255),
- LAST_ varchar(255),
- EMAIL_ varchar(255),
- PWD_ varchar(255),
- SALT_ varchar(255),
- PICTURE_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_INFO (
- ID_ varchar(64),
- REV_ integer,
- USER_ID_ varchar(64),
- TYPE_ varchar(64),
- KEY_ varchar(255),
- VALUE_ varchar(255),
- PASSWORD_ LONGBLOB,
- PARENT_ID_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT_MEMBER (
- ID_ varchar(64) not null,
- TENANT_ID_ varchar(64) not null,
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_USER
- unique (TENANT_ID_, USER_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_GROUP
- unique (TENANT_ID_, GROUP_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB
- foreign key (TENANT_ID_)
- references ACT_ID_TENANT (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
+++ /dev/null
-USE camundabpmn;
-
-INSERT INTO `act_id_group` (`ID_`, `REV_`, `NAME_`, `TYPE_`) VALUES ('camunda-admin',1,'camunda BPM Administrators','SYSTEM');
-
-INSERT INTO `act_id_user` (`ID_`, `REV_`, `FIRST_`, `LAST_`, `EMAIL_`, `PWD_`, `SALT_`, `PICTURE_ID_`) VALUES ('admin',1,'admin','user','camundaadmin@onap.org','{SHA-512}n5jUw7fvXM9sZBcrIkLiAOCqiPHutaqEkbg6IQVQdylVP1im8SczBJf4f2xL7cvWwIAZjkcSSQzgFTsdaJSEiA==','ftTn4gNgMcq07wdSD0lEJQ==',NULL);
-
-INSERT INTO `act_id_membership` (`USER_ID_`, `GROUP_ID_`) VALUES ('admin','camunda-admin');
-
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b0e028-a3c6-11e7-b0ec-0242ac120003',1,1,NULL,'admin',1,'admin',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b525e9-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'camunda-admin',2);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b8814a-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,0,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49baa42b-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,1,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bd8a5c-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bfd44d-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,3,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c1f72e-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,4,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c41a0f-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,5,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c77570-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,6,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ca5ba1-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,7,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49cca592-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,8,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ceef83-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,9,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d11264-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,10,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d38365-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,11,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d5a646-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,12,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d83e57-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,13,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49da3a28-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,14,'*',2147483647);
+++ /dev/null
-
- alter table HEAT_TEMPLATE_PARAMS
- drop
- foreign key FK_p3ol1xcvp831glqohrlu6o07o;
-
- alter table MODEL_RECIPE
- drop
- foreign key FK_c23r0puyqug6n44jg39dutm1c;
-
- alter table SERVICE
- drop
- foreign key FK_l3qy594u2xr1tfpmma3uigsna;
-
- alter table SERVICE_RECIPE
- drop
- foreign key FK_i3r1b8j6e7dg9hkp49evnnm5y;
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- drop
- foreign key FK_kiddaay6cfe0aob1f1jaio1bb;
-
- alter table VF_MODULE
- drop
- foreign key FK_12jptc9it7gs3pru08skobxxc;
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- drop
- foreign key FK_iff1ayhb1hrp5jhea3vvikuni;
-
- drop table if exists ALLOTTED_RESOURCE;
-
- drop table if exists ALLOTTED_RESOURCE_CUSTOMIZATION;
-
- drop table if exists HEAT_ENVIRONMENT;
-
- drop table if exists HEAT_FILES;
-
- drop table if exists HEAT_NESTED_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE_PARAMS;
-
- drop table if exists MODEL;
-
- drop table if exists MODEL_RECIPE;
-
- drop table if exists NETWORK_RECIPE;
-
- drop table if exists NETWORK_RESOURCE;
-
- drop table if exists NETWORK_RESOURCE_CUSTOMIZATION;
-
- drop table if exists SERVICE;
-
- drop table if exists SERVICE_RECIPE;
-
- drop table if exists SERVICE_TO_ALLOTTED_RESOURCES;
-
- drop table if exists SERVICE_TO_NETWORKS;
-
- drop table if exists SERVICE_TO_RESOURCE_CUSTOMIZATIONS;
-
- drop table if exists TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP;
-
- drop table if exists TOSCA_CSAR;
-
- drop table if exists VF_MODULE;
-
- drop table if exists VF_MODULE_CUSTOMIZATION;
-
- drop table if exists VF_MODULE_TO_HEAT_FILES;
-
- drop table if exists VNF_COMPONENTS;
-
- drop table if exists VNF_COMPONENTS_RECIPE;
-
- drop table if exists VNF_RECIPE;
-
- drop table if exists VNF_RESOURCE;
-
- drop table if exists VNF_RESOURCE_CUSTOMIZATION;
-
- drop table if exists VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM;
-
- create table ALLOTTED_RESOURCE (
- MODEL_UUID varchar(255) not null,
- MODEL_INVARIANT_UUID varchar(255),
- MODEL_VERSION varchar(255),
- MODEL_NAME varchar(255),
- TOSCA_NODE_TYPE varchar(255),
- SUBCATEGORY varchar(255),
- DESCRIPTION varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table ALLOTTED_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- AR_MODEL_UUID varchar(255),
- PROVIDING_SERVICE_MODEL_INVARIANT_UUID varchar(255),
- TARGET_NETWORK_ROLE varchar(255),
- NF_FUNCTION varchar(255),
- NF_TYPE varchar(255),
- NF_ROLE varchar(255),
- NF_NAMING_CODE varchar(255),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table HEAT_ENVIRONMENT (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(100) not null,
- VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- BODY longtext not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD',
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_FILES (
- ARTIFACT_UUID varchar(255) not null,
- DESCRIPTION varchar(255),
- NAME varchar(255),
- VERSION varchar(255),
- BODY longtext,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(255),
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_NESTED_TEMPLATE (
- PARENT_HEAT_TEMPLATE_UUID varchar(200) not null,
- CHILD_HEAT_TEMPLATE_UUID varchar(200) not null,
- PROVIDER_RESOURCE_FILE varchar(100),
- primary key (PARENT_HEAT_TEMPLATE_UUID, CHILD_HEAT_TEMPLATE_UUID)
- );
-
- create table HEAT_TEMPLATE (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- BODY longtext not null,
- TIMEOUT_MINUTES integer,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD' not null,
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_TEMPLATE_PARAMS (
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(255) not null,
- PARAM_NAME varchar(255) not null,
- IS_REQUIRED bit not null,
- PARAM_TYPE varchar(20),
- PARAM_ALIAS varchar(45),
- primary key (HEAT_TEMPLATE_ARTIFACT_UUID, PARAM_NAME)
- );
-
- create table MODEL (
- id integer not null auto_increment,
- MODEL_TYPE varchar(20) not null,
- MODEL_VERSION_ID varchar(40) not null,
- MODEL_INVARIANT_ID varchar(40),
- MODEL_NAME varchar(40) not null,
- MODEL_VERSION varchar(20),
- MODEL_CUSTOMIZATION_ID varchar(40),
- MODEL_CUSTOMIZATION_NAME varchar(40),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table MODEL_RECIPE (
- id integer not null auto_increment,
- MODEL_ID integer not null,
- ACTION varchar(20) not null,
- SCHEMA_VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- MODEL_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RECIPE (
- id integer not null auto_increment,
- MODEL_NAME varchar(20) not null,
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- SERVICE_TYPE varchar(45),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- NETWORK_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20),
- TOSCA_NODE_TYPE varchar(200),
- NEUTRON_NETWORK_TYPE varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) default 2.5 not null,
- AIC_VERSION_MAX varchar(20) default 2.5,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table NETWORK_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- NETWORK_RESOURCE_MODEL_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- NETWORK_TECHNOLOGY varchar(255),
- NETWORK_TYPE varchar(255),
- NETWORK_SCOPE varchar(255),
- NETWORK_ROLE varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- TOSCA_CSAR_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- MODEL_INVARIANT_UUID varchar(200) default 'MANUAL_RECORD' not null,
- SERVICE_TYPE varchar(20),
- SERVICE_ROLE varchar(20),
- primary key (MODEL_UUID)
- );
-
- create table SERVICE_RECIPE (
- id integer not null auto_increment,
- SERVICE_MODEL_UUID varchar(200) not null,
- ACTION varchar(40) not null,
- ORCHESTRATION_URI varchar(256) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- VERSION_STR varchar(20),
- DESCRIPTION varchar(1200),
- SERVICE_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- SERVICE_TIMEOUT_INTERIM integer,
- primary key (id)
- );
-
- create table SERVICE_TO_ALLOTTED_RESOURCES (
- SERVICE_MODEL_UUID varchar(200) not null,
- AR_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, AR_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_NETWORKS (
- SERVICE_MODEL_UUID varchar(200) not null,
- NETWORK_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, NETWORK_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_RESOURCE_CUSTOMIZATIONS (
- MODEL_TYPE varchar(20) not null,
- RESOURCE_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- SERVICE_MODEL_UUID varchar(200) not null,
- primary key (MODEL_TYPE, RESOURCE_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP (
- NETWORK_RESOURCE_MODEL_NAME varchar(200) not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) not null,
- AIC_VERSION_MAX varchar(20),
- primary key (NETWORK_RESOURCE_MODEL_NAME)
- );
-
- create table TOSCA_CSAR (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- ARTIFACT_CHECKSUM varchar(200) not null,
- URL varchar(200) not null,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (ARTIFACT_UUID)
- );
-
- create table VF_MODULE (
- MODEL_UUID varchar(200) not null,
- VNF_RESOURCE_MODEL_UUID varchar(200),
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200) not null,
- DESCRIPTION varchar(1200),
- IS_BASE integer not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- VOL_HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VF_MODULE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_MODEL_UUID varchar(200) not null,
- VOL_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- HEAT_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- INITIAL_COUNT integer,
- AVAILABILITY_ZONE_COUNT integer,
- LABEL varchar(200),
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VF_MODULE_TO_HEAT_FILES (
- VF_MODULE_MODEL_UUID varchar(200) not null,
- HEAT_FILES_ARTIFACT_UUID varchar(200) not null,
- primary key (VF_MODULE_MODEL_UUID, HEAT_FILES_ARTIFACT_UUID)
- );
-
- create table VNF_COMPONENTS (
- VNF_ID integer not null,
- COMPONENT_TYPE varchar(20) not null,
- HEAT_TEMPLATE_ID integer,
- HEAT_ENVIRONMENT_ID integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_ID, COMPONENT_TYPE)
- );
-
- create table VNF_COMPONENTS_RECIPE (
- id integer not null auto_increment,
- VNF_TYPE varchar(200),
- VF_MODULE_MODEL_UUID varchar(100),
- VNF_COMPONENT_TYPE varchar(45) not null,
- ACTION varchar(20) not null,
- SERVICE_TYPE varchar(45),
- VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_COMPONENT_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RECIPE (
- id integer not null auto_increment,
- VF_MODULE_ID varchar(100),
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45) default null,
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200),
- TOSCA_NODE_TYPE varchar(200),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20) not null,
- AIC_VERSION_MIN varchar(20),
- AIC_VERSION_MAX varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VNF_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(200) not null,
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- AVAILABILITY_ZONE_MAX_COUNT integer,
- NF_FUNCTION varchar(200),
- NF_TYPE varchar(200),
- NF_ROLE varchar(200),
- NF_NAMING_CODE varchar(200),
- VNF_RESOURCE_MODEL_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM (
- VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID, VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID)
- );
-
- alter table MODEL
- add constraint UK_rra00f1rk6eyy7g00k9raxh2v unique (MODEL_TYPE, MODEL_VERSION_ID);
-
- alter table MODEL_RECIPE
- add constraint UK_b4g8j9wtqrkxfycyi3ursk7gb unique (MODEL_ID, ACTION);
-
- alter table NETWORK_RECIPE
- add constraint UK_pbsa8i44m8p10f9529jdgfuk9 unique (MODEL_NAME, ACTION, VERSION_STR);
-
- alter table SERVICE_RECIPE
- add constraint UK_2lr377dpqnvl5aqlp5dtj2fcp unique (SERVICE_MODEL_UUID, ACTION);
-
- alter table VNF_COMPONENTS_RECIPE
- add constraint UK_g3je95aaxxiuest25f0qoy2u8 unique (VNF_TYPE, VF_MODULE_MODEL_UUID, VNF_COMPONENT_TYPE, ACTION, SERVICE_TYPE, VERSION);
-
- alter table VNF_RECIPE
- add constraint UK_f3tvqau498vrifq3cr8qnigkr unique (VF_MODULE_ID, ACTION, VERSION_STR);
-
- alter table HEAT_TEMPLATE_PARAMS
- add constraint FK_p3ol1xcvp831glqohrlu6o07o
- foreign key (HEAT_TEMPLATE_ARTIFACT_UUID)
- references HEAT_TEMPLATE (ARTIFACT_UUID);
-
- alter table MODEL_RECIPE
- add constraint FK_c23r0puyqug6n44jg39dutm1c
- foreign key (MODEL_ID)
- references MODEL (id);
-
- alter table SERVICE
- add constraint FK_l3qy594u2xr1tfpmma3uigsna
- foreign key (TOSCA_CSAR_ARTIFACT_UUID)
- references TOSCA_CSAR (ARTIFACT_UUID);
-
- alter table SERVICE_RECIPE
- add constraint FK_i3r1b8j6e7dg9hkp49evnnm5y
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- add constraint FK_kiddaay6cfe0aob1f1jaio1bb
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table VF_MODULE
- add constraint FK_12jptc9it7gs3pru08skobxxc
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- add constraint FK_iff1ayhb1hrp5jhea3vvikuni
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
+++ /dev/null
-
- drop table if exists INFRA_ACTIVE_REQUESTS;
-
- drop table if exists SITE_STATUS;
-
- create table INFRA_ACTIVE_REQUESTS (
- REQUEST_ID varchar(45) not null,
- CLIENT_REQUEST_ID varchar(45),
- ACTION varchar(45) not null,
- REQUEST_STATUS varchar(20),
- STATUS_MESSAGE varchar(2000),
- PROGRESS bigint,
- START_TIME datetime,
- END_TIME datetime,
- SOURCE varchar(45),
- VNF_ID varchar(45),
- VNF_NAME varchar(80),
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45),
- AIC_NODE_CLLI varchar(11),
- TENANT_ID varchar(45),
- PROV_STATUS varchar(20),
- VNF_PARAMS longtext,
- VNF_OUTPUTS longtext,
- REQUEST_BODY longtext,
- RESPONSE_BODY longtext,
- LAST_MODIFIED_BY varchar(50),
- MODIFY_TIME datetime,
- REQUEST_TYPE varchar(20),
- VOLUME_GROUP_ID varchar(45),
- VOLUME_GROUP_NAME varchar(45),
- VF_MODULE_ID varchar(45),
- VF_MODULE_NAME varchar(200),
- VF_MODULE_MODEL_NAME varchar(200),
- AAI_SERVICE_ID varchar(50),
- AIC_CLOUD_REGION varchar(11),
- CALLBACK_URL varchar(200),
- CORRELATOR varchar(80),
- SERVICE_INSTANCE_ID varchar(45),
- SERVICE_INSTANCE_NAME varchar(80),
- REQUEST_SCOPE varchar(20),
- REQUEST_ACTION varchar(45) not null,
- NETWORK_ID varchar(45),
- NETWORK_NAME varchar(80),
- NETWORK_TYPE varchar(80),
- REQUESTOR_ID varchar(80),
- primary key (REQUEST_ID)
- );
-
- create table SITE_STATUS (
- SITE_NAME varchar(255) not null,
- STATUS bit,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SITE_NAME)
- );
- create table OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- SERVICE_NAME varchar(255),
- OPERATION_TYPE varchar(255),
- USER_ID varchar(255),
- RESULT varchar(255),
- OPERATION_CONTENT varchar(255),
- PROGRESS varchar(255),
- REASON varchar(255),
- OPERATE_AT datetime,
- FINISHED_AT datetime,
- primary key (SERVICE_ID,OPERATION_ID)
- );
- create table RESOURCE_OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- RESOURCE_TEMPLATE_UUID varchar(255) not null,
- OPER_TYPE varchar(255),
- RESOURCE_INSTANCE_ID varchar(255),
- JOB_ID varchar(255),
- STATUS varchar(255),
- PROGRESS varchar(255),
- ERROR_CODE varchar(255) ,
- STATUS_DESCRIPOTION varchar(255) ,
- primary key (SERVICE_ID,OPERATION_ID,RESOURCE_TEMPLATE_UUID)
- );
- alter table INFRA_ACTIVE_REQUESTS
- add constraint UK_bhu6w8p7wvur4pin0gjw2d5ak unique (CLIENT_REQUEST_ID);
name: confd-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: docker-entry-initd-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: automated-tests-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: bulkload-default-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: demo-dns-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: demo-vfw-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: scripts-camunda-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: main-schemas-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
\ No newline at end of file
release: {{ .Release.Name }}
spec:
hostname: mariadb
+ initContainers:
+ - name: {{ include "common.name" . }}-inject-testlab-project
+ command:
+ - /bin/bash
+ - -c
+ - >
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/volumes/mariadb/docker-entrypoint-initdb.d to /docker-entrypoint-initdb.d";
+ cp -rf /tmp/gerrit/volumes/mariadb/docker-entrypoint-initdb.d/* /docker-entrypoint-initdb.d;
+ echo "Done.";
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: docker-entrypoint-initdb-d
+ mountPath: "/docker-entrypoint-initdb.d"
containers:
- - name: {{ .Chart.Name }}
- image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- ports:
- - containerPort: {{ .Values.service.internalPort }}
- # disable liveness probe when breakpoints set in debugger
- # so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{end -}}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
- env:
- - name: MYSQL_ROOT_PASSWORD
- valueFrom:
- secretKeyRef:
- name: {{ template "common.fullname" . }}
- key: db-root-password
- volumeMounts:
- - mountPath: /var/lib/mysql
- name: mariadb-data
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /etc/mysql/conf.d
- name: mariadb-conf
- - mountPath: /docker-entrypoint-initdb.d/02-load-additional-changes.sh
- name: mariadb-docker-entrypoint-initdb
- subPath: 02-load-additional-changes.sh
- - mountPath: /docker-entrypoint-initdb.d/01-load-default-sql-files.sh
- name: mariadb-docker-entrypoint-initdb
- subPath: 01-load-default-sql-files.sh
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests
- name: mariadb-docker-entrypoint-automated-tests
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default
- name: mariadb-docker-entrypoint-bulkload-default
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns
- name: mariadb-docker-entrypoint-demo-dns
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
- name: mariadb-docker-entrypoint-demo-vfw
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/camunda
- name: mariadb-docker-entrypoint-camunda
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/main-schemas
- name: mariadb-docker-entrypoint-main-schemas
- resources:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ volumeMounts:
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /etc/mysql/conf.d
+ name: mariadb-conf
+ - name: docker-entrypoint-initdb-d
+ mountPath: "/docker-entrypoint-initdb.d"
+ resources:
{{ toYaml .Values.resources | indent 12 }}
- {{- if .Values.nodeSelector }}
- nodeSelector:
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
{{ toYaml .Values.nodeSelector | indent 10 }}
- {{- end -}}
- {{- if .Values.affinity }}
- affinity:
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
{{ toYaml .Values.affinity | indent 10 }}
- {{- end }}
+ {{- end }}
volumes:
+ - name: mariadb-data
{{- if .Values.persistence.enabled }}
- - name: mariadb-data
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
{{- else }}
- emptyDir: {}
+ emptyDir: {}
{{- end }}
- - name: mariadb-conf
- configMap:
- name: confd-configmap
- - name: mariadb-docker-entrypoint-initdb
- configMap:
- name: docker-entry-initd-configmap
- - name: mariadb-docker-entrypoint-automated-tests
- configMap:
- name: automated-tests-configmap
- - name: mariadb-docker-entrypoint-bulkload-default
- configMap:
- name: bulkload-default-configmap
- - name: mariadb-docker-entrypoint-demo-dns
- configMap:
- name: demo-dns-configmap
- - name: mariadb-docker-entrypoint-demo-vfw
- configMap:
- name: demo-vfw-configmap
- - name: mariadb-docker-entrypoint-camunda
- configMap:
- name: scripts-camunda-configmap
- - name: mariadb-docker-entrypoint-main-schemas
- configMap:
- name: main-schemas-configmap
- - name: localtime
- hostPath:
- path: /etc/localtime
+ - name: mariadb-conf
+ configMap:
+ name: confd-configmap
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: docker-entrypoint-initdb-d
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
ports:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
{{- end}}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
\ No newline at end of file
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
+ readinessRepository: oomk8s
+ ubuntuInitRepository: registry.hub.docker.com
# application image
repository: nexus3.onap.org:10001
image: mariadb:10.1.11
pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
# application configuration
config:
mariadbRootPassword: password
-
-# override chart name (mariadb) to share a common namespace
-# suffix with parent chart (so)
-nsSuffix: so
+ # gerrit branch where the latest heat code is checked in
+ gerritBranch: master
+ # gerrit project where the latest heat code is checked in
+ gerritProject: http://gerrit.onap.org/r/so/docker-config.git
# default number of instances
# probe configuration parameters
liveness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 90
periodSeconds: 10
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
enabled: true
readiness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 90
periodSeconds: 10
## Persist data to a persitent volume
service:
type: NodePort
- name: mariadb
- externalPort: 52
+ portName: mariadb
internalPort: 3306
+ nodePort: 52
ingress:
enabled: false
+++ /dev/null
-Bag Attributes
- friendlyName: aaiopenecomp
- localKeyID: 54 69 6D 65 20 31 35 31 30 30 33 33 31 37 31 38 39 32
-subject=/C=US/ST=NJ/L=Bedminister/O=ONAP/CN=aai.api.simpledemo.openecomp.org/emailAddress=aai-host@api.simpledemo.openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIDyzCCArMCCQDrA8zzZKXznDANBgkqhkiG9w0BAQsFADCBrTELMAkGA1UEBhMC
-VVMxCzAJBgNVBAgMAk5KMRMwEQYDVQQHDApCZWRtaW5zdGVyMRIwEAYDVQQKDAlP
-cGVuRUNPTVAxEzARBgNVBAsMCnNpbXBsZWRlbW8xKjAoBgNVBAMMIU9wZW5FQ09N
-UCBzaW1wbGVkZW1vIFNlcnZlciBDQSBYMTEnMCUGCSqGSIb3DQEJARYYc2ltcGxl
-ZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE3MTEwMzIzNDUzNVoXDTE4MTIwNjIzNDUz
-NVowgaAxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOSjEUMBIGA1UEBwwLQmVkbWlu
-aXN0ZXIxDTALBgNVBAoMBE9OQVAxKTAnBgNVBAMMIGFhaS5hcGkuc2ltcGxlZGVt
-by5vcGVuZWNvbXAub3JnMTQwMgYJKoZIhvcNAQkBFiVhYWktaG9zdEBhcGkuc2lt
-cGxlZGVtby5vcGVuZWNvbXAub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEA6gFktbGZVt4o78kU6oeCdqx04yPNTd1qRmJ06CD87fgrIDCTXVC+PE7R
-hHd1V71aNnoElBzn+mwetn4qG4T9IqAJvFIXxrzLpS7WlKBxStFhe4GNXl+RDqWc
-UM+47+s32TwZ3czQrhMVR9VNENUHo2d6XylGaUDcVgrMYWbFYWfmIJ4tO1latW9n
-h+perB0nNBxNDK9nYtjLHQk6ukTmONSnldvCgu/TFX5C34qB49cI0LmCf5Lwk9tv
-8dmTZ6Um8A0EbQen+uPaaHeEXm/EtFy0FSVzoKmxuQS0g4JNhfnfNCHVDO7zGE+N
-pCb9VfUI2fXIZvjNBAemKN/b2i5d6QIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBh
-93eaeAw0aA4ukAPpuWIODxxAnZlFfDH4uzwnv6smDJzO1biRwQ5BBZfL8qSVozrp
-aDKeIPWP7fZvjl3mGfCp8mLkI6WkfXVcZy5IlJGDTnW+G8Cpohq910W/Ibp1J9zx
-Ki4IdgKx7FbSYLpgwH2g2EPshHXQX2qFdxYvnEH0PzJjYBKeyyHV3N2kNr6+kM3Q
-HpXXIiLNbNcqLT+9zOmuJszN8ILLV56vu8Clzwxld+ru0tiO2OJk2eT+mtw2PI1/
-jcYqEEdOIZycrQiytxXgvte7A9VFQP/1Tl22BBYrAW2BhyW67kopATeiSunK1FmO
-DLcT7mR+59F964RV9BJR
------END CERTIFICATE-----
-Bag Attributes
- friendlyName: root
- 2.16.840.1.113894.746875.1.1: <Unsupported tag 6>
-subject=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Root Certification Authority/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIFpTCCA42gAwIBAgIJAJqx8dKnCZZoMA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
-VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
-BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
-bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
-MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
-ODIxMTQyNloXDTIxMTEyNzIxMTQyNlowga0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
-DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
-EQYDVQQLDApzaW1wbGVkZW1vMSowKAYDVQQDDCFPcGVuRUNPTVAgc2ltcGxlZGVt
-byBTZXJ2ZXIgQ0EgWDExJzAlBgkqhkiG9w0BCQEWGHNpbXBsZWRlbW9Ab3BlbmVj
-b21wLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr4rivKQuRk
-YNf5Ig40e1nqj6s6LB1vgMOYbKfRziOFpPcUpsHPOhusHowiUsrU1vdFSzPz6Ej7
-PjlmNSg2Qka8YCn9kd6QgM7U0KcPJvIucBp+qjifH3EvP0jgDPhDeVRYxzV454dv
-5kQ9uCpswJP7YAnX51dkWeH8nwPUoagt31bOl9LXENSrgxEThxdLYMJnQJWk2CmV
-otXM4tT1dxyJxFUrZ6uJCEAYw5VtlplqihHf8lHy+sWQavtsLz/4dc+sGeXSTfoI
-voKvoh3uZ5gEhGV8yfJxk1veX5y5/AxP80vQ+smWYjTnQL5QQ57y4bciez4XVBmQ
-SWimWtOi4e8CAwEAAaOBtTCBsjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
-AwIBhjAdBgNVHQ4EFgQUTqdsYgGNGubdJHq9tsaJhM9HE5wwcAYDVR0gBGkwZzBl
-BgRVHSAAMF0wWwYIKwYBBQUHAgIwTxpNSWYgeW91IHRydXN0IHRoaXMgY2VydCB0
-aGVuIHdlIGhhdmUgYSBicmlkZ2UgdGhhdCB5b3UgbWlnaHQgYmUgaW50ZXJlc3Rl
-ZCBpbi4wDQYJKoZIhvcNAQELBQADggIBAKNNlRqFuE/JgV1BHyYK0xoSXH4aZP/7
-IoHtDVcSaZAOOuFOUrwVMUbzRBebbb6RpFwt/X+NLFUGysd+XNLF7W7lzxKtmFNX
-n4OpNkBe0y5O7yurus8rERHzu3jiOSgVo+WzDlGpYSRnG3hI2qPWqD+Puzx/WwI8
-XUTuzEQQ3gUSyVFfXHpay3VpYmLZiLJ9WKY5SDw7Ie6Sxrju4Qm1HwnFY8wHZGcs
-2KMQzorJ1ZNQf523yUTghbT0rKaSFaD8zugPtI2ONfFG/QgrkQXo78opzPsHnHwa
-SxGSiAgeLbwAUCvPNl27zr6k6+7TcNjV0VUivAs0OG3VEAdgi7UWYB+30KfWwHwE
-zGmvd4IAGqIqlqLcSVArN5z8JK1B5nfjQn5UrclU1vK+dnuiKE2X4rKuBTRYRFR/
-km+mj4koYFPKFHndmJl1uv2OCJK9l5CSIuKWeI1qv8BASKqgNdoT/SKBXqxgYlCb
-o+j4IDjxrxChRO+e5vl9lA7INfRrbljCkUjfLRa+v2q9tWQ3+EQUwwnSrSfihh2T
-j0Tksr6b8dDsvMlCdOKG1B+JPcEXORSFKNXVTEfjqpJG8s16kFAocWt3S6xO0k1t
-qbQp+3tWQgW2TGnX0rMZzB6NGRNfWhlYmq2zHgXkiCIZ26Ztgt/LNbwEvN3+VlLo
-z/Rd+SKtlrfb
------END CERTIFICATE-----
{
"mso_config_path": "/etc/mso/config.d/",
+ "mso-topology-config":
+ {
+ "msb-server-ip": "{{.Values.config.msb.serviceName}}",
+ "msb-server-port": "{{.Values.config.msb.port}}"
+ },
+
"mso-api-handler-infra-config":
{
- "bpelURL": "http://so:8080",
+ "bpelURL": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}",
"bpelAuth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "camundaURL": "http://so:8080",
- "camundaAuth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
+ "camundaURL": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}",
+ "camundaAuth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
+ "aaiEndpoint": "https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}",
+ "aaiAuth": "2630606608347B7124C244AB0FE34F6F",
+ "msoKey": "07a7159d3bf51a0e53be7a8f89699be7"
+ },
+
+ "mso-asdc-controller-config":
+ {
+ "aaiEndpoint": "https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}",
+ "aaiAuth": "2630606608347B7124C244AB0FE34F6F",
+ "msoKey": "07a7159d3bf51a0e53be7a8f89699be7"
},
"asdc-connections":
"consumerGroup": "sdc-OpenSource-Env1",
"consumerId": "sdc-COpenSource-Env11",
"environmentName": "{{ .Values.config.dmaapTopic }}",
- "asdcAddress": "sdc-be:8443",
+ "asdcAddress": "{{.Values.config.sdc.serviceName}}:{{.Values.config.sdc.port}}",
"password": "613AF3483E695524F9857643B697FA51C7A9A0951094F53791485BF3458F9EADA37DBACCCEBD0CB242B85B4062745247",
"pollingInterval": 60,
"pollingTimeout": 60,
+ "watchDogTimeout": "300",
+ "messageBusAddress": [
+ "{{.Values.config.messagerouter.serviceName}}"
+ ],
"relevantArtifactTypes": "HEAT,HEAT_ENV,HEAT_VOL",
"activateServerTLSAuth": "false",
"keyStorePassword": "",
{
"sdncurls":
[
- "http://sdnhost:8282/restconf/operations/L3SDN-API:",
- "http://sdnhost:8282/restconf/config/L3SDN-API:",
- "http://sdnhost:8282/restconf/operations/Firewall-API:",
- "http://sdnhost:8282/restconf/config",
- "http://sdnhost:8282/restconf/operations/VNF-API:",
- "http://sdnhost:8282/restconf/operations/NBNC-API:",
- "http://sdnhost:8282/restconf/operations/NORTHBOUND-API:service-topology-operation",
- "http://sdnhost:8282/restconf/operations/GENERIC-RESOURCE-API:",
- "http://sdnhost:8282/restconf/operations/VNFTOPOLOGYAIC-API:"
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/L3SDN-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/config/L3SDN-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/Firewall-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/config",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/VNF-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/NBNC-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/NORTHBOUND-API:service-topology-operation",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/GENERIC-RESOURCE-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/VNFTOPOLOGYAIC-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/"
],
- "bpelurl": "http://so:8080/mso/SDNCAdapterCallbackService",
- "restbpelurl": "http://so:8080/mso/WorkflowMessage",
- "myurl": "http://so:8080/adapters/rest/SDNCNotify",
+ "bpelurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/SDNCAdapterCallbackService",
+ "restbpelurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/WorkflowMessage",
+ "myurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/adapters/rest/SDNCNotify",
"sdncauth": "263f7d5f944d4d0c76db74b4148bec67d0bc796a874bc0d2a2a12aae89a866aa69133f700f391f784719a37f6a68d29bf5a2fbae1dab0402db7788c800c5ba73",
"bpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
"sdncconnecttime": "5000"
},
+
"mso-po-adapter-config":
{
"identity_services":
"mso-workflow-message-adapter-config":
{
- "wmbpelurl": "http://so:8080/mso/WorkflowMessage",
+ "wmbpelurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/WorkflowMessage",
"wmbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
},
"ueb_consumer_id": "testuser",
"ueb_topic": "queuetopic",
"ueb_polling_interval": "30",
- "ueb_polling_interval": "30",
"ueb_user": "user",
"ueb_password": "1ec0d74615d4e4639f991c0590c83b88",
"bpel_url": "http://localhost:18080",
"versionIdL3ToHigherLayerDeleteBonding": "52dbec20-47aa-42e4-936c-331d8e350d44",
"infraCustomerId": "21014aa2-526b-11e6-beb8-9e71128cae77",
"sniroAuth": "test:testpwd",
- "sniroEndpoint": "http://sniro-emulator:8080/sniro/api/v2/placement",
+ "sniroEndpoint": "http://{{.Values.config.sniro.serviceName}}:{{.Values.config.sniro.port}}/sniro/api/v2/placement",
"sniroTimeout": "PT30M",
- "serviceAgnosticSniroHost": "http://sniro-emulator:8080",
+ "serviceAgnosticSniroHost": "http://{{.Values.config.sniro.serviceName}}:{{.Values.config.sniro.port}}",
"serviceAgnosticSniroEndpoint": "/sniro/api/v2/placement",
- "aaiEndpoint": "https://aai-service:8443",
+ "oofAuth": "test:testpwd",
+ "oofEndpoint": "http://{{.Values.config.oof.serviceName}}:{{.Values.config.oof.port}}/api/oof/v1/placement",
+ "oofTimeout": "PT30M",
+ "serviceAgnosticOofHost": "http://{{.Values.config.oof.serviceName}}:{{.Values.config.oof.port}}",
+ "serviceAgnosticOofEndpoint": "/api/oof/v1/placement",
+ "aaiEndpoint": "https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}",
"aaiAuth": "2630606608347B7124C244AB0FE34F6F",
"adaptersNamespace": "http://org.openecomp.mso",
- "adaptersCompletemsoprocessEndpoint": "http://so:8080/CompleteMsoProcess",
- "adaptersDbEndpoint": "http://so:8080/dbadapters/MsoRequestsDbAdapter",
- "adaptersOpenecompDbEndpoint": "http://so:8080/dbadapters/RequestsDbAdapter",
- "catalogDbEndpoint": "http://so:8080/ecomp/mso/catalog",
- "adaptersSdncEndpoint": "http://so:8080/adapters/SDNCAdapter",
- "adaptersSdncRestEndpoint": "http://so:8080/adapters/rest/v1/sdnc",
- "adaptersTenantEndpoint": "http://so:8080/tenants/TenantAdapter",
+ "adaptersCompletemsoprocessEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/CompleteMsoProcess",
+ "adaptersDbEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/dbadapters/MsoRequestsDbAdapter",
+ "adaptersOpenecompDbEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/dbadapters/RequestsDbAdapter",
+ "catalogDbEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/ecomp/mso/catalog",
+ "adaptersSdncEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/adapters/SDNCAdapter",
+ "adaptersSdncRestEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/adapters/rest/v1/sdnc",
+ "adaptersTenantEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/tenants/TenantAdapter",
"adaptersDbAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
- "adaptersWorkflowMessageEndpoint": "http://so:8080/workflows/messages/message",
- "workflowMessageEndpoint": "http://so:8080/mso/WorkflowMessage",
- "workflowSdncAdapterCallback": "http://so:8080/mso/SDNCAdapterCallbackService",
+ "adaptersWorkflowMessageEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/workflows/messages/message",
+ "workflowMessageEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/WorkflowMessage",
+ "workflowSdncAdapterCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/SDNCAdapterCallbackService",
"workflowSdncReplicationDelay": "PT5S",
"workflowAaiDistributionDelay": "PT30S",
"msoKey": "07a7159d3bf51a0e53be7a8f89699be7",
"adaptersPoAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
"sdncTimeout": "PT5M",
"rollback": "true",
- "adaptersNetworkEndpoint": "http://so:8080/networks/NetworkAdapter",
- "adaptersNetworkRestEndpoint": "http://so:8080/networks/rest/v1/networks",
- "adaptersVnfAsyncEndpoint": "http://so:8080/vnfs/VnfAdapterAsync",
- "workflowVnfAdapterDeleteCallback": "http://so:8080/mso/vnfAdapterNotify",
- "workflowVnfAdapterCreateCallback": "http://so:8080/mso/vnfAdapterNotify",
- "adaptersVnfRestEndpoint": "http://so:8080/vnfs/rest/v1/vnfs",
- "workflowVnfAdapterRestCallback": "http://so:8080/mso/vnfAdapterRestNotify",
+ "adaptersNetworkEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/networks/NetworkAdapter",
+ "adaptersNetworkRestEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/networks/rest/v1/networks",
+ "adaptersVnfAsyncEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/vnfs/VnfAdapterAsync",
+ "workflowVnfAdapterDeleteCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/vnfAdapterNotify",
+ "workflowVnfAdapterCreateCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/vnfAdapterNotify",
+ "adaptersVnfRestEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/vnfs/rest/v1/vnfs",
+ "workflowVnfAdapterRestCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/vnfAdapterRestNotify",
"poTimeout": "PT5M",
"sdncFirewallYangModel": "http://com/att/svc/mis/firewall-lite-gui",
"sdncFirewallYangModelVersion": "2015-05-15",
"sdncTimeoutFirewall": "20",
"callbackRetryAttempts": "30",
"callbackRetrySleepTime": "1000",
+ "appcClientTopicRead": "APPC-LCM-READ",
+ "appcClientTopicWrite": "APPC-LCM-WRITE",
+ "appcClientTopicSdncRead": "SDNC-LCM-READ",
+ "appcClientTopicSdncWrite": "SDNC-LCM-WRITE",
+ "appcClientTopicReadTimeout": "360000",
+ "appcClientResponseTime": "360000",
+ "appcClientPoolMembers": "{{.Values.config.messagerouter.serviceName}}:{{.Values.config.messagerouter.port}}",
+ "appcClientKey": "VIlbtVl6YLhNUrtU",
+ "appcClientSecret": "64AG2hF4pYeG2pq7CT6XwUOT",
+ "appcClientService": "ueb",
+ "sdncSiSvcTypes": "PORT-MIRROR,PPROBE",
"workflowL3ToHigherLayerAddBondingModelName" : "WAN Bonding",
"workflowL3ToHigherLayerAddBondingModelVersion" : "2.0"
}
"mso-config": "~> 1.0.0"
}
}
-
--- /dev/null
+-----BEGIN CERTIFICATE-----
+MIIFPjCCAyagAwIBAgIJAJ6u7cCnzrWdMA0GCSqGSIb3DQEBCwUAMCwxDjAMBgNV
+BAsMBU9TQUFGMQ0wCwYDVQQKDARPTkFQMQswCQYDVQQGEwJVUzAeFw0xODA0MDUx
+NDE1MjhaFw0zODAzMzExNDE1MjhaMCwxDjAMBgNVBAsMBU9TQUFGMQ0wCwYDVQQK
+DARPTkFQMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
+ggIBAMA5pkgRs7NhGG4ew5JouhyYakgYUyFaG121+/h8qbSdt0hVQv56+EA41Yq7
+XGie7RYDQK9NmAFF3gruE+6X7wvJiChp+Cyd7sFMnb65uWhxEdxWTM2BJFrgfzUn
+H8ZCxgaCo3XH4PzlKRy2LQQJEJECwl/RZmRCXijMt5e9h8XoZY/fKkKcZZUsWNCM
+pTo266wjvA9MXLmdgReRj0+vrCjrNqy+htwJDztoiHWiYPqT6o8EvGcgjNqjlZx7
+NUNf8MfLDByqKF6+wRbHv1GKjn3/Vijd45Fv8riyRYROiFanvbV6jIfBkv8PZbXg
+2VDWsYsgp8NAvMxK+iV8cO+Ck3lBI2GOPZbCEqpPVTYbLUz6sczAlCXwQoPzDIZY
+wYa3eR/gYLY1gP2iEVHORag3bLPap9ZX5E8DZkzTNTjovvLk8KaCmfcaUMJsBtDd
+ApcUitz10cnRyZc1sX3gE1f3DpzQM6t9C5sOVyRhDcSrKqqwb9m0Ss04XAS9FsqM
+P3UWYQyqDXSxlUAYaX892u8mV1hxnt2gjb22RloXMM6TovM3sSrJS0wH+l1nznd6
+aFXftS/G4ZVIVZ/LfT1is4StoyPWZCwwwly1z8qJQ/zhip5NgZTxQw4mi7ww35DY
+PdAQOCoajfSvFjqslQ/cPRi/MRCu079heVb5fQnnzVtnpFQRAgMBAAGjYzBhMB0G
+A1UdDgQWBBRTVTPyS+vQUbHBeJrBKDF77+rtSTAfBgNVHSMEGDAWgBRTVTPyS+vQ
+UbHBeJrBKDF77+rtSTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAN
+BgkqhkiG9w0BAQsFAAOCAgEAPx/IaK94n02wPxpnYTy+LVLIxwdq/kawNd6IbiMz
+L87zmNMDmHcGbfoRCj8OkhuggX9Lx1/CkhpXimuYsZOFQi5blr/u+v4mIbsgbmi9
+7j+cUHDP0zLycvSvxKHty51LwmaX9a4wkJl5zBU4O1sd/H9tWcEmwJ39ltKoBKBx
+c94Zc3iMm5ytRWGj+0rKzLDAXEWpoZ5bE5PLJauA6UDCxDLfs3FwhbS7uDggxYvf
+jySF5FCNET94oJ+m8s7VeHvoa8iPGKvXrIqdd7XDHnqJJlVKr7m9S0fMbyEB8ci2
+RtOXDt93ifY1uhoEtEykn4dqBSp8ezvNMnwoXdYPDvTd9uCAFeWFLVreBAWxd25h
+PsBTkZA5hpa/rA+mKv6Af4VBViYr8cz4dZCsFChuioVebe9ighrfjB//qKepFjPF
+CyjzKN1u0JKm/2x/ORqxkTONG8p3uDwoIOyimUcTtTMv42bfYD88RKakqSFXE9G+
+Z0LlaKABqfjK49o/tsAp+c5LoNlYllKhnetO3QAdraHwdmC36BhoghzR1jpX751A
+cZn2VH3Q4XKyp01cJNCJIrua+A+bx6zh3RyW6zIIkbRCbET+UD+4mr8WIcSE3mtR
+ZVlnhUDO4z9//WKMVzwS9Rh8/kuszrGFI1KQozXCHLrce3YP6RYZfOed79LXaRwX
+dYY=
+-----END CERTIFICATE-----
--- /dev/null
+-----BEGIN CERTIFICATE-----
+MIIFpTCCA42gAwIBAgIJAJqx8dKnCZZoMA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
+VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
+BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
+bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
+MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
+ODIxMTQyNloXDTIxMTEyNzIxMTQyNlowga0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
+DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
+EQYDVQQLDApzaW1wbGVkZW1vMSowKAYDVQQDDCFPcGVuRUNPTVAgc2ltcGxlZGVt
+byBTZXJ2ZXIgQ0EgWDExJzAlBgkqhkiG9w0BCQEWGHNpbXBsZWRlbW9Ab3BlbmVj
+b21wLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr4rivKQuRk
+YNf5Ig40e1nqj6s6LB1vgMOYbKfRziOFpPcUpsHPOhusHowiUsrU1vdFSzPz6Ej7
+PjlmNSg2Qka8YCn9kd6QgM7U0KcPJvIucBp+qjifH3EvP0jgDPhDeVRYxzV454dv
+5kQ9uCpswJP7YAnX51dkWeH8nwPUoagt31bOl9LXENSrgxEThxdLYMJnQJWk2CmV
+otXM4tT1dxyJxFUrZ6uJCEAYw5VtlplqihHf8lHy+sWQavtsLz/4dc+sGeXSTfoI
+voKvoh3uZ5gEhGV8yfJxk1veX5y5/AxP80vQ+smWYjTnQL5QQ57y4bciez4XVBmQ
+SWimWtOi4e8CAwEAAaOBtTCBsjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
+AwIBhjAdBgNVHQ4EFgQUTqdsYgGNGubdJHq9tsaJhM9HE5wwcAYDVR0gBGkwZzBl
+BgRVHSAAMF0wWwYIKwYBBQUHAgIwTxpNSWYgeW91IHRydXN0IHRoaXMgY2VydCB0
+aGVuIHdlIGhhdmUgYSBicmlkZ2UgdGhhdCB5b3UgbWlnaHQgYmUgaW50ZXJlc3Rl
+ZCBpbi4wDQYJKoZIhvcNAQELBQADggIBAKNNlRqFuE/JgV1BHyYK0xoSXH4aZP/7
+IoHtDVcSaZAOOuFOUrwVMUbzRBebbb6RpFwt/X+NLFUGysd+XNLF7W7lzxKtmFNX
+n4OpNkBe0y5O7yurus8rERHzu3jiOSgVo+WzDlGpYSRnG3hI2qPWqD+Puzx/WwI8
+XUTuzEQQ3gUSyVFfXHpay3VpYmLZiLJ9WKY5SDw7Ie6Sxrju4Qm1HwnFY8wHZGcs
+2KMQzorJ1ZNQf523yUTghbT0rKaSFaD8zugPtI2ONfFG/QgrkQXo78opzPsHnHwa
+SxGSiAgeLbwAUCvPNl27zr6k6+7TcNjV0VUivAs0OG3VEAdgi7UWYB+30KfWwHwE
+zGmvd4IAGqIqlqLcSVArN5z8JK1B5nfjQn5UrclU1vK+dnuiKE2X4rKuBTRYRFR/
+km+mj4koYFPKFHndmJl1uv2OCJK9l5CSIuKWeI1qv8BASKqgNdoT/SKBXqxgYlCb
+o+j4IDjxrxChRO+e5vl9lA7INfRrbljCkUjfLRa+v2q9tWQ3+EQUwwnSrSfihh2T
+j0Tksr6b8dDsvMlCdOKG1B+JPcEXORSFKNXVTEfjqpJG8s16kFAocWt3S6xO0k1t
+qbQp+3tWQgW2TGnX0rMZzB6NGRNfWhlYmq2zHgXkiCIZ26Ztgt/LNbwEvN3+VlLo
+z/Rd+SKtlrfb
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIGQTCCBCmgAwIBAgIJANSi/bsXEOI5MA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
+VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
+BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
+bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
+MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
+ODIxMTQyNVoXDTI2MTEyNjIxMTQyNVowgb0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
+DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
+EQYDVQQLDApzaW1wbGVkZW1vMTowOAYDVQQDDDFPcGVuRUNPTVAgc2ltcGxlZGVt
+byBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MScwJQYJKoZIhvcNAQkBFhhz
+aW1wbGVkZW1vQG9wZW5lY29tcC5vcmcwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
+ggIKAoICAQDLgdDTCZX5xlMFIo+tjj5DItAwbutQE3NMchx/CRIuYwRCBOEO0yOs
+AdnZAuheYrjv/Dw4wKNzcvtIlYbfiPsGWVvx5j6+xoGBLLwIOnDyzD2B62uCvMs9
+47MAuiqpPojPwDDb9fF5EIhlC+cBzSYKm7D5ihYxmUCnh9yHIPEMq0IoVj2illlK
+eCTLW+bZKeaKoWdkFxyyzykOoMFgZTUm01EhDIt1DHTve675Qq80UgzrZdSK6Zjv
+3wLV7tkJSGmCkbUELpxsTLKYuaGUkE0m5n3SMUcvBDa6WNQpWlUbZlTwWotOrxfN
+Gib3nGiqyCmQXrVvuuBDzmZifZaJpBGiiGiOxp0j79E/OZkfk/9V3Hvfy78Ss9H5
+uhf/ACGKsUq9nN25u+Wpz7EzAQm/OBubBrBCMP/8pm+y1jCfQ6Bwd0Nm48KrJkTe
+ySkferISNmpQZ2dyZXQVXMarbRfagQ6XdJw6EVnDwydVzb5LAqam3JUXjsHIj7Gv
+2DmXwJtwV+cnKB/OxRsP/JWwlyC9pFGy17HWc7EwPqXm1UNdDM36UaoBDzsh3DcI
+vg5+BOOtYPmiZ2+CMD2JxAXmtCMAmQA1mSsW7beTuHKy+7EdCAWcregE60PE3w2l
+G8n50YSXb0WZ2IaQUsBhhpZmu6VVTEcoi5eMglI6QyO21y0oKPYWPQIDAQABo0Iw
+QDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmmQF
+QD3oWZUOVE81Qc9WSfcyqwwwDQYJKoZIhvcNAQELBQADggIBAE1ArwZwMVVJe1Pj
+p1R9+Q766Qhzh4EN9RFCsktCcf4pB23lPtFhMhIZJP5eZKLB4MUIvtmleU+DmOWf
+jcEcgauMrc9Ihacra+IRJsr4JQjQSDHoEgl/yR6VUd9vbGH66ElIg9nP7XWAE6h5
+DTAxA8X1qyUOVGsKAps2uhBwNtl8RdX6GrZahkSOUMOq3H4wyEEPQlpU2AewZqOU
+p0vdbQ/is6cbJh6dgxFrSzBti/MKj/EPM6yJwlO+RfGlJmEI7J7bLEYIeNssLnv6
+FGiOgyWQ+gmwVK827F4Jwoght2BCcNsG/oPkAPbdw4yRIyi92QSWMEBKibECypQE
+a1DYvfHWGQLQifGzFuJTOca9vgu2B/BQ+0Ii4DqMS8hc2rw1CAD5zHAT/BIgAKM6
+ygL5Oyvrj8AQLgOkjhFh0HFKneh4j7wBtibpmDnBoSv227PAtdytCoRgivjhmF5B
+Ryx7BswcTEtZHWHxD/i2wlMEGNqGbcRmCCy9hhCxitAz70aq3Y/pC46n7w5bOmvJ
+Ap9D+WmTJ9PdpDjiwCXCkMD3QaTuUV1W3Zr4mLLj6gRLb6ycgDrsqXnY6/JB/AOd
+gxFK9q1vjhm02FAABIa+kL10CKPuRdlE/GsWl03WKMeT5bY3MTO3odsNXhKWA19h
+wUAp0gnljuFHPX7jWwruZ1eD8mQv
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIFPjCCAyagAwIBAgIJAJ6u7cCnzrWdMA0GCSqGSIb3DQEBCwUAMCwxDjAMBgNV
+BAsMBU9TQUFGMQ0wCwYDVQQKDARPTkFQMQswCQYDVQQGEwJVUzAeFw0xODA0MDUx
+NDE1MjhaFw0zODAzMzExNDE1MjhaMCwxDjAMBgNVBAsMBU9TQUFGMQ0wCwYDVQQK
+DARPTkFQMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
+ggIBAMA5pkgRs7NhGG4ew5JouhyYakgYUyFaG121+/h8qbSdt0hVQv56+EA41Yq7
+XGie7RYDQK9NmAFF3gruE+6X7wvJiChp+Cyd7sFMnb65uWhxEdxWTM2BJFrgfzUn
+H8ZCxgaCo3XH4PzlKRy2LQQJEJECwl/RZmRCXijMt5e9h8XoZY/fKkKcZZUsWNCM
+pTo266wjvA9MXLmdgReRj0+vrCjrNqy+htwJDztoiHWiYPqT6o8EvGcgjNqjlZx7
+NUNf8MfLDByqKF6+wRbHv1GKjn3/Vijd45Fv8riyRYROiFanvbV6jIfBkv8PZbXg
+2VDWsYsgp8NAvMxK+iV8cO+Ck3lBI2GOPZbCEqpPVTYbLUz6sczAlCXwQoPzDIZY
+wYa3eR/gYLY1gP2iEVHORag3bLPap9ZX5E8DZkzTNTjovvLk8KaCmfcaUMJsBtDd
+ApcUitz10cnRyZc1sX3gE1f3DpzQM6t9C5sOVyRhDcSrKqqwb9m0Ss04XAS9FsqM
+P3UWYQyqDXSxlUAYaX892u8mV1hxnt2gjb22RloXMM6TovM3sSrJS0wH+l1nznd6
+aFXftS/G4ZVIVZ/LfT1is4StoyPWZCwwwly1z8qJQ/zhip5NgZTxQw4mi7ww35DY
+PdAQOCoajfSvFjqslQ/cPRi/MRCu079heVb5fQnnzVtnpFQRAgMBAAGjYzBhMB0G
+A1UdDgQWBBRTVTPyS+vQUbHBeJrBKDF77+rtSTAfBgNVHSMEGDAWgBRTVTPyS+vQ
+UbHBeJrBKDF77+rtSTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAN
+BgkqhkiG9w0BAQsFAAOCAgEAPx/IaK94n02wPxpnYTy+LVLIxwdq/kawNd6IbiMz
+L87zmNMDmHcGbfoRCj8OkhuggX9Lx1/CkhpXimuYsZOFQi5blr/u+v4mIbsgbmi9
+7j+cUHDP0zLycvSvxKHty51LwmaX9a4wkJl5zBU4O1sd/H9tWcEmwJ39ltKoBKBx
+c94Zc3iMm5ytRWGj+0rKzLDAXEWpoZ5bE5PLJauA6UDCxDLfs3FwhbS7uDggxYvf
+jySF5FCNET94oJ+m8s7VeHvoa8iPGKvXrIqdd7XDHnqJJlVKr7m9S0fMbyEB8ci2
+RtOXDt93ifY1uhoEtEykn4dqBSp8ezvNMnwoXdYPDvTd9uCAFeWFLVreBAWxd25h
+PsBTkZA5hpa/rA+mKv6Af4VBViYr8cz4dZCsFChuioVebe9ighrfjB//qKepFjPF
+CyjzKN1u0JKm/2x/ORqxkTONG8p3uDwoIOyimUcTtTMv42bfYD88RKakqSFXE9G+
+Z0LlaKABqfjK49o/tsAp+c5LoNlYllKhnetO3QAdraHwdmC36BhoghzR1jpX751A
+cZn2VH3Q4XKyp01cJNCJIrua+A+bx6zh3RyW6zIIkbRCbET+UD+4mr8WIcSE3mtR
+ZVlnhUDO4z9//WKMVzwS9Rh8/kuszrGFI1KQozXCHLrce3YP6RYZfOed79LXaRwX
+dYY=
+-----END CERTIFICATE-----
<subsystem xmlns="urn:jboss:domain:datasources:4.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/mso-requests" pool-name="mso-requests" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://{{ .Release.Name }}-mariadb:3306/mso_requests?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
+ <connection-url>jdbc:mariadb://{{ .Values.mariadb.nameOverride }}:3306/mso_requests?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
<driver>mariadb</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<pool>
</timeout>
</datasource>
<datasource jndi-name="java:jboss/datasources/mso-catalog" pool-name="mso-catalog" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://{{ .Release.Name }}-mariadb:3306/mso_catalog?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
+ <connection-url>jdbc:mariadb://{{ .Values.mariadb.nameOverride }}:3306/mso_catalog?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
<driver>mariadb</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<pool>
</timeout>
</datasource>
<datasource jta="true" jndi-name="java:jboss/datasources/ProcessEngine" pool-name="ProcessEngine" enabled="true" use-java-context="true" use-ccm="true">
- <connection-url>jdbc:mariadb://{{ .Release.Name }}-mariadb:3306/camundabpmn?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
+ <connection-url>jdbc:mariadb://{{ .Values.mariadb.nameOverride }}:3306/camundabpmn?autoReconnect=true&connectTimeout=60000&socketTimeout=60000</connection-url>
<driver>mariadb</driver>
<new-connection-sql>set autocommit=1</new-connection-sql>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- /root/ready.py
args:
- --container-name
- - mariadb
+ - {{ .Values.mariadb.nameOverride }}
env:
- name: NAMESPACE
valueFrom:
- name: {{ .Chart.Name }}
command:
- /tmp/start-jboss-server.sh
- image: "{{ .Values.repository | default .Values.global.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
- containerPort: {{ .Values.service.internalPort4 }}
- containerPort: {{ .Values.service.internalPort5 }}
# disable liveness probe when breakpoints set in debugger
- # so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
livenessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
+ {{ end }}
readinessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
- mountPath: /opt/jboss/standalone/configuration/standalone-full-ha-mso.xml
name: so-config
subPath: standalone-full-ha-mso.xml
-
- mountPath: /var/log/onap
name: so-logs
- mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.network.xml
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
-
+
# side car containers
- name: filebeat-onap
image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
- key: mso-docker.json
path: mso-docker.json
mode: 0755
- - key: aai.crt
- path: aai.crt
+ - key: onap-ca.crt
+ path: onap-ca.crt
+ mode: 0755
+ - key: onap-ca-new.crt
+ path: onap-ca-new.crt
mode: 0755
- key: encryption.key
path: encryption.key
apiVersion: v1
kind: Service
metadata:
- name: so
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
annotations:
msb.onap.org/service-info: '[
{
- "serviceName": "so",
+ "serviceName": "{{ include "common.servicename" . }}",
"version": "v1",
"url": "/ecomp/mso/infra",
"protocol": "REST"
ports:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort }}
- name: {{ .Values.service.name }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort2 }}
- name: {{ .Values.service.name }}2
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
- port: {{ .Values.service.internalPort3 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort3 }}
- name: {{ .Values.service.name }}3
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
- port: {{ .Values.service.internalPort4 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort4 }}
- name: {{ .Values.service.name }}4
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
- port: {{ .Values.service.internalPort5 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort5 }}
- name: {{ .Values.service.name }}5
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
+ name: {{ .Values.service.portName }}5
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.externalPort2 }}
targetPort: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName }}2
- port: {{ .Values.service.externalPort3 }}
targetPort: {{ .Values.service.internalPort3 }}
- name: {{ .Values.service.name }}3
+ name: {{ .Values.service.portName }}3
- port: {{ .Values.service.externalPort4 }}
targetPort: {{ .Values.service.internalPort4 }}
- name: {{ .Values.service.name }}4
+ name: {{ .Values.service.portName }}4
- port: {{ .Values.service.externalPort5 }}
targetPort: {{ .Values.service.internalPort5 }}
- name: {{ .Values.service.name }}5
+ name: {{ .Values.service.portName }}5
{{- end}}
selector:
app: {{ include "common.name" . }}
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
# application image
repository: nexus3.onap.org:10001
-image: openecomp/mso:1.2-STAGING-latest
+image: openecomp/mso:1.2.1
pullPolicy: Always
# flag to enable debugging - application support required
openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
logstashServiceName: log-ls
logstashPort: 5044
+ sniro:
+ serviceName: sniro-emulator
+ port: 80
+ aai:
+ serviceName: aai
+ port: 8443
+ messagerouter:
+ serviceName: message-router
+ port: 3904
+ msb:
+ serviceName: msb-iag
+ port: 80
+ oof:
+ serviceName: oof-has-api
+ port: 8091
+ sdnc:
+ serviceName: sdnc
+ port: 8282
+ sdc:
+ serviceName: sdc-be
+ port: 8443
+
+# subchart configuration
+mariadb:
+ nameOverride: so-db
# default number of instances
replicaCount: 1
service:
type: NodePort
name: so
- externalPort: 23
+ portName: so
internalPort: 8080
- externalPort2: 25
+ nodePort: 23
internalPort2: 3904
- externalPort3: 24
+ nodePort2: 25
internalPort3: 3905
- externalPort4: 22
+ nodePort3: 24
internalPort4: 9990
- externalPort5: 50
+ nodePort4: 22
internalPort5: 8787
+ nodePort5: 50
ingress:
enabled: false
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP uui
name: uui
-version: 1.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP uui server
+name: uui-server
+version: 2.0.0
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: {{tpl .Values.msbaddr .}}
+ - name: MR_ADDR
+ value: {{tpl .Values.mraddr .}}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "usecaseui-server",
+ "version": "v1",
+ "url": "/api/usecaseui/server/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.internalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.uuiPortPrefix | default .Values.uuiPortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for uui.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ uuiPortPrefix: 303
+ readinessRepository: oomk8s
+subChartsOnly:
+ enabled: true
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/usecase-ui/usecase-ui-server:latest
+pullPolicy: Always
+
+# application configuration
+
+msbaddr: msb-iag.{{include "common.namespace" .}}:80
+mraddr: message-router.{{include "common.namespace" .}}:3904
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: uui-server
+ portName: uui-server
+ internalPort: 8082
+ nodePort: 99
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: uui
- name: uui
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "usecaseui-gui",
- "version": "v1",
- "url": "/usecase-ui",
- "path":"/iui/usecaseui",
- "protocol": "UI"
- "port": "8080",
- "visualRange":"1|0"
- }
- ]'
-spec:
- ports:
- - name: uui
- nodePort: {{ .Values.uuiPortPrefix }}98
- port: 8080
- selector:
- app: uui
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableUuiServer }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: uui-server
- name: uui-server
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "usecaseui-server",
- "version": "v1",
- "url": "/api/usecaseui/server/v1",
- "protocol": "UI"
- "port": "8080",
- "visualRange":"1|0"
- }
- ]'
-spec:
- ports:
- - name: uui-server
- nodePort: {{ .Values.uuiPortPrefix }}99
- port: 8082
- selector:
- app: uui-server
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /bin/bash
+ - -c
+ - /home/uui/tomcat/bin/catalina.sh run
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "usecaseui-ui",
+ "version": "v1",
+ "url": "/usecase-ui",
+ "path":"/iui/usecaseui",
+ "protocol": "UI",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.uuiPortPrefix | default .Values.uuiPortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: uui
- name: uui
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.uuiReplicas }}
- selector:
- matchLabels:
- app: uui
- template:
- metadata:
- labels:
- app: uui
- name: uui
- spec:
- containers:
- - image: {{ .Values.image.uuiImage }}:{{ .Values.image.uuiVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - /bin/bash
- - -c
- - /home/uui/tomcat/bin/catalina.sh run
- name: uui
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: uui-server
- name: uui-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.uuiServerReplicas }}
- selector:
- matchLabels:
- app: uui-server
- template:
- metadata:
- labels:
- app: uui-server
- name: uui-server
- spec:
- containers:
- - image: {{ .Values.uuiserver.image }}:{{ .Values.uuiserver.version }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: uui-server
- env:
- - name: MSB_ADDR
- value: {{tpl .Values.msbaddr .}}
- - name: MR_ADDR
- value: {{tpl .Values.mraddr .}}
- ports:
- - containerPort: 8082
- readinessProbe:
- tcpSocket:
- port: 8082
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+# Default values for uui.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ uuiPortPrefix: 303
+ readinessRepository: oomk8s
+subChartsOnly:
+ enabled: true
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/usecase-ui:latest
pullPolicy: Always
-uuiPortPrefix: 303
-msbaddr: msb-iag.{{ .Values.nsPrefix }}:80
-mraddr: dmaap.{{ .Values.nsPrefix }}:3904
-uuiReplicas: 1
-uuiServerReplicas: 1
-image:
- uuiImage: nexus3.onap.org:10001/onap/usecase-ui
- uuiVersion: v1.0.1
-uuiserver:
- image: nexus3.onap.org:10001/onap/usecase-ui/usecase-ui-server
- version: v1.0.1
+
+# application configuration
+
+msbaddr: msb-iag.{{include "common.namespace" .}}:80
+mraddr: message-router.{{include "common.namespace" .}}:3904
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: uui
+ portName: uui
+ internalPort: 8080
+ nodePort: 98
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Virtual Function Controller (VF-C)
name: vfc
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Catalog
+name: vfc-catalog
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ catalog:
+ handlers: [cataloglocal_handler, catalog_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ cataloglocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_catalog.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ catalog_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/catalog/runtime_catalog.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/catalog/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "catalog",
+ "version": "v1",
+ "url": "/api/catalog/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/catalog:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-catalog
+ portName: vfc-catalog
+ externalPort: 8806
+ internalPort: 8806
+# nodePort: 30806
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - EMS Driver
+name: vfc-ems-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ - name: VES_ADDR
+ value: "{{ .Values.config.vescollectorServiceName }}:{{ .Values.config.vescollectorPort }}"
+ - name: VES_AUTHINFO
+ value: "{{ .Values.config.vescollectorUser }}:{{ .Values.config.vescollectorPassword }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "emsdriver",
+ "version": "v1",
+ "url": "/api/emsdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/emsdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ vescollectorServiceName: dcae-ves-collector
+ vescollectorPort: 8080
+ vescollectorUser: ""
+ vescollectorPassword: ""
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-ems-driver
+ portName: vfc-ems-driver
+ externalPort: 8206
+ internalPort: 8206
+# nodePort: 30296
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Generic VNFM Driver
+name: vfc-generic-vnfm-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ driver:
+ handlers: [gvnfmdriverlocal_handler, gvnfmdriver_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ gvnfmdriverlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_gvnfmdriver.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ gvnfmdriver_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfmdriver/runtime_gvnfmdriver.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfmdriver/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "gvnfmdriver",
+ "version": "v1",
+ "url": "/api/gvnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/gvnfmdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-generic-vnfm-driver
+ portName: vfc-generic-vnfm-driver
+ externalPort: 8484
+ internalPort: 8484
+# nodePort: 30484
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Huawei VNFM Driver
+name: vfc-huawei-vnfm-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+###############################################################################
+# Copyright 2016, Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###############################################################################
+log4j.rootLogger=INFO,root
+log4j.appender.root.Append=true
+
+#Log Directory
+logDir=/var/log/onap
+componentName=vfc
+subComponentName=huaweivnfmdriver
+log4j.appender.root.File=${logDir}/${componentName}/${subComponentName}/vnfmadapterservice.log
+
+log4j.appender.root.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
+log4j.appender.root.layout=org.apache.log4j.PatternLayout
+log4j.appender.root.MaxBackupIndex=50
+log4j.appender.root.MaxFileSize=20MB
+log4j.appender.root=org.apache.log4j.RollingFileAppender
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/hwvnfmdriver/config/log4j.properties
+ subPath: log4j.properties
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "huaweivnfmdriver",
+ "version": "v1",
+ "url": "/api/huaweivnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.portName }}
+ port: {{ .Values.service.internalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ - name: {{ .Values.service.portName }}2
+ port: {{ .Values.service.internalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/nfvo/svnfm/huawei:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-huawei-vnfm-driver
+ portName: vfc-huawei-vnfm-driver
+ externalPort: 8482
+ internalPort: 8482
+ externalPort2: 8483
+ internalPort2: 8483
+# nodePort: 30482
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Juju VNFM Driver
+name: vfc-juju-vnfm-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+###############################################################################
+# Copyright 2016 Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###############################################################################
+log4j.rootLogger=INFO,root
+log4j.logger.org.openo.nfvo=DEBUG,stdout
+log4j.appender.root.Append=true
+
+#Log Directory
+logDir=/var/log/onap
+componentName=vfc
+subComponentName=jujudriver
+log4j.appender.root.File=${logDir}/${componentName}/${subComponentName}/jujuvnfmadapterservice.log
+
+log4j.appender.root.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
+log4j.appender.root.layout=org.apache.log4j.PatternLayout
+log4j.appender.root.MaxBackupIndex=50
+log4j.appender.root.MaxFileSize=20MB
+log4j.appender.root=org.apache.log4j.RollingFileAppender
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName}}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/jujudriver/config/log4j.properties
+ subPath: log4j.properties
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "jujuvnfmdriver",
+ "version": "v1",
+ "url": "/api/jujuvnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/jujudriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-juju-vnfm-driver
+ portName: vfc-juju-vnfm-driver
+ externalPort: 8483
+ internalPort: 8483
+# nodePort: 30483
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - MultiVIM Proxy
+name: vfc-multivim-proxy
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "multivimproxy",
+ "version": "v1",
+ "url": "/api/multivimproxy/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/multivimproxy:1.0.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-multivim-proxy
+ portName: vfc-multivim-proxy
+ externalPort: 8481
+ internalPort: 8481
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Nokia V2VNFM Driver
+name: vfc-nokia-v2vnfm-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "NokiaSVNFM",
+ "version": "v1",
+ "url": "/api/NokiaSVNFM/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/nfvo/svnfm/nokiav2:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-nokia-v2vnfm-driver
+ portName: vfc-nokia-v2vnfm-driver
+ externalPort: 8089
+ internalPort: 8089
+# nodePort: 13
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Nokia VNFM Driver
+name: vfc-nokia-vnfm-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+ <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
+ <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern>
+ <charset>UTF-8</charset>
+ </encoder>
+ </appender>
+ <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>/var/log/onap/vfc/svnfm/nokiavnfmdriver.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>/var/log/onap/vfc/svnfm/nokiavnfmdriver.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>10MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %X{req.method} %X{req.remoteHost} %X{req.requestURI} [%t] %-5level %logger{50} %line - %m%n</pattern>
+ <charset>UTF-8</charset>
+ </encoder>
+ </appender>
+ <root level="INFO">
+ <appender-ref ref="CONSOLE"></appender-ref>
+ <appender-ref ref="FILE"></appender-ref>
+ </root>
+</configuration>
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /opt/vfc/nokiavnfmdriver/config/logback.xml
+ subPath: logback.xml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "nokiavnfmdriver",
+ "version": "v1",
+ "url": "/api/nokiavnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/nfvo/svnfm/nokia:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-nokia-vnfm-driver
+ portName: vfc-nokia-vnfm-driver
+ externalPort: 8486
+ internalPort: 8486
+# nodePort: 12
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - NS Life Cycle Management
+name: vfc-nslcm
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ nslcm:
+ handlers: [nslcmlocal_handler, nslcm_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ nslcmlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_nslcm.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ nslcm_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/nslcm/runtime_nslcm.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/nslcm/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "nslcm",
+ "version": "v1",
+ "url": "/api/nslcm/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/nslcm:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-nslcm
+ portName: vfc-nslcm
+ externalPort: 8403
+ internalPort: 8403
+# nodePort: 30403
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Resource Manager
+name: vfc-resmgr
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+###############################################################################
+# Copyright 2016, Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###############################################################################
+log4j.rootLogger=INFO,root
+log4j.appender.root.Append=true
+
+#Log Directory
+logDir=/var/log/onap
+componentName=vfc
+subComponentName=resmanagement
+log4j.appender.root.File=${logDir}/${componentName}/${subComponentName}/resmanagement.log
+
+log4j.appender.root.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
+log4j.appender.root.layout=org.apache.log4j.PatternLayout
+log4j.appender.root.MaxBackupIndex=50
+log4j.appender.root.MaxFileSize=20MB
+log4j.appender.root=org.apache.log4j.RollingFileAppender
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/resmgr/config/log4j.properties
+ subPath: log4j.properties
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "resmgr",
+ "version": "v1",
+ "url": "/api/resmgr/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/resmanagement:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-resmgr
+ portName: vfc-resmgr
+ externalPort: 8480
+ internalPort: 8480
+# nodePort: 30480
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - VNF Life Cycle Management
+name: vfc-vnflcm
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ mgr:
+ handlers: [vnfmgrlocal_handler, vnfmgr_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ vnfmgrlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_mgr.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ vnfmgr_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfm-vnfmgr/runtime_mgr.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfm-vnflcm/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "vnflcm",
+ "version": "v1",
+ "url": "/api/vnflcm/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/vnflcm:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-vnflcm
+ portName: vfc-vnflcm
+ externalPort: 8801
+ internalPort: 8801
+# nodePort: 30801
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - VNF Manager
+name: vfc-vnfmgr
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ mgr:
+ handlers: [vnfmgrlocal_handler, vnfmgr_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ vnfmgrlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_mgr.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ vnfmgr_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfm-vnfmgr/runtime_mgr.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfm-vnfmgr/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "vnfmgr",
+ "version": "v1",
+ "url": "/api/vnfmgr/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/vnfmgr:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-vnfmgr
+ portName: vfc-vnfmgr
+ externalPort: 8803
+ internalPort: 8803
+# nodePort: 30803
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - VNF Resource Manager
+name: vfc-vnfres
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ lcm:
+ handlers: [vnflcmlocal_handler, vnflcm_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ vnflcmlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_lcm.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ vnflcm_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfm-vnflcm/runtime_lcm.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfm-vnfres/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "vnfres",
+ "version": "v1",
+ "url": "/api/vnfres/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/vnfres:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-vnfres
+ portName: vfc-vnfres
+ externalPort: 8802
+ internalPort: 8802
+# nodePort: 30802
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Workflow Engine
+name: vfc-workflow-engine
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: SERVICE_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SERVICE_PORT
+ value: "{{ .Values.config.workflowPort }}"
+ - name: OPENPALETTE_MSB_IP
+ value: "{{ .Values.global.config.msbServiceName }}"
+ - name: OPENPALETTE_MSB_PORT
+ value: "{{ .Values.global.config.msbPort | default 80 }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "workflow-engine",
+ "version": "v1",
+ "url": "/activiti-rest",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/wfengine-activiti:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-workflow-engine
+ portName: vfc-workflow-engine
+ externalPort: 8080
+ internalPort: 8080
+# nodePort: 30807
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - Workflow
+name: vfc-workflow
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: SERVICE_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SERVICE_PORT
+ value: "{{ .Values.service.externalPort }}"
+ - name: OPENPALETTE_MSB_IP
+ value: "{{ .Values.global.config.msbServiceName }}"
+ - name: OPENPALETTE_MSB_PORT
+ value: "{{ .Values.global.config.msbPort | default 80 }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "workflow",
+ "version": "v1",
+ "url": "/api/workflow/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/wfengine-mgrservice:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-workflow
+ portName: vfc-workflow
+ externalPort: 10550
+ internalPort: 10550
+# nodePort: 30805
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - ZTE SDNC Driver
+name: vfc-zte-sdnc-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "ztesdncdriver",
+ "version": "v1",
+ "url": "/api/ztesdncdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/ztesdncdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-zte-sdnc-driver
+ portName: vfc-zte-sdnc-drive
+ externalPort: 8411
+ internalPort: 8411
+# nodePort: 30411
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: ONAP VFC - ZTE VNFM Driver
+name: vfc-zte-vnfm-driver
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ ztevnfmdriver:
+ handlers: [ztevnfmdriverlocal_handler, ztevnfmdriver_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ ztevnfmdriverlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_ztevnfmdriver.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ ztevnfmdriver_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/ztevnfmdriver/runtime_ztevnfmdriver.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ format:
+ "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
+ mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
+ datefmt: "%Y-%m-%d %H:%M:%S"
+ (): onaplogging.mdcformatter.MDCFormatter
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/ztevnfmdriver/config/log.yml
+ subPath: log.yml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "ztevnfmdriver",
+ "version": "v1",
+ "url": "/api/ztevnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vfc/ztevnfmdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: vfc-zte-vnfm-driver
+ portName: vfc-zte-vnfm-driver
+ externalPort: 8410
+ internalPort: 8410
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
--- /dev/null
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcNslcm }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-nslcm
- name: vfc-nslcm
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "nslcm",
- "version": "v1",
- "url": "/api/nslcm/v1",
- "protocol": "REST",
- "port": "{{.Values.nslcm.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-nslcm
- port: {{.Values.nslcm.port}}
- nodePort: {{.Values.nslcm.nodePort}}
- selector:
- app: vfc-nslcm
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcResmgr }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-resmgr
- name: vfc-resmgr
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "resmgr",
- "version": "v1",
- "url": "/api/resmgr/v1",
- "protocol": "REST",
- "port": "{{.Values.resmgr.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-resmgr
- port: {{.Values.resmgr.port}}
- nodePort: {{.Values.resmgr.nodePort}}
- selector:
- app: vfc-resmgr
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcGvnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-gvnfmdriver
- name: vfc-gvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "gvnfmdriver",
- "version": "v1",
- "url": "/api/gvnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.gvnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-gvnfmdriver
- port: {{.Values.gvnfmdriver.port}}
- nodePort: {{.Values.gvnfmdriver.nodePort}}
- selector:
- app: vfc-gvnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcztevnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-ztevnfmdriver
- name: vfc-ztevnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "ztevnfmdriver",
- "version": "v1",
- "url": "/api/ztevnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.ztevnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-ztevnfmdriver
- port: {{.Values.ztevnfmdriver.port}}
- nodePort: {{.Values.ztevnfmdriver.nodePort}}
- selector:
- app: vfc-ztevnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcNokiavnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-nokiavnfmdriver
- name: vfc-nokiavnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "nokiavnfmdriver",
- "version": "v1",
- "url": "/api/nokiavnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.nokiavnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-nokiavnfmdriver
- port: {{.Values.nokiavnfmdriver.port}}
- nodePort: {{.Values.nokiavnfmdriver.nodePort}}
- selector:
- app: vfc-nokiavnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-hwvnfmdriver
- name: vfc-hwvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "huaweivnfmdriver",
- "version": "v1",
- "url": "/api/huaweivnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.hwvnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-hwvnfmdriver
- port: {{.Values.hwvnfmdriver.port}}
- nodePort: {{.Values.hwvnfmdriver.nodePort}}
- selector:
- app: vfc-hwvnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcZtesdncdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-ztesdncdriver
- name: vfc-ztesdncdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "ztesdncdriver",
- "version": "v1",
- "url": "/api/ztesdncdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.ztesdncdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-ztesdncdriver
- port: {{.Values.ztesdncdriver.port}}
- nodePort: {{.Values.ztesdncdriver.nodePort}}
- selector:
- app: vfc-ztesdncdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcJujudriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-jujudriver
- name: vfc-jujudriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "jujuvnfmdriver",
- "version": "v1",
- "url": "/api/jujuvnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.jujudriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-jujudriver
- port: {{.Values.jujudriver.port}}
- nodePort: {{.Values.jujudriver.nodePort}}
- selector:
- app: vfc-jujudriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcVnflcm }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-vnflcm
- name: vfc-vnflcm
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "vnflcm",
- "version": "v1",
- "url": "/api/vnflcm/v1",
- "protocol": "REST",
- "port": "{{.Values.vnflcm.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-vnflcm
- port: {{.Values.vnflcm.port}}
- nodePort: {{.Values.vnflcm.nodePort}}
- selector:
- app: vfc-vnflcm
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcVnfres }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-vnfres
- name: vfc-vnfres
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "vnfres",
- "version": "v1",
- "url": "/api/vnfres/v1",
- "protocol": "REST",
- "port": "{{.Values.vnfres.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-vnfres
- port: {{.Values.vnfres.port}}
- nodePort: {{.Values.vnfres.nodePort}}
- selector:
- app: vfc-vnfres
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcVnfmgr }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-vnfmgr
- name: vfc-vnfmgr
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "vnfmgr",
- "version": "v1",
- "url": "/api/vnfmgr/v1",
- "protocol": "REST",
- "port": "{{.Values.vnfmgr.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-vnfmgr
- port: {{.Values.vnfmgr.port}}
- nodePort: {{.Values.vnfmgr.nodePort}}
- selector:
- app: vfc-vnfmgr
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcEmsdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-emsdriver
- name: vfc-emsdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "emsdriver",
- "version": "v1",
- "url": "/api/emsdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.emsdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-emsdriver
- port: {{.Values.emsdriver.port}}
- nodePort: {{.Values.emsdriver.nodePort}}
- selector:
- app: vfc-emsdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcWorkflow }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-workflow
- name: vfc-workflow
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "workflow",
- "version": "v1",
- "url": "/api/workflow/v1",
- "protocol": "REST",
- "port": "{{.Values.workflow.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-workflow
- port: {{.Values.workflow.port}}
- nodePort: {{.Values.workflow.nodePort}}
- selector:
- app: vfc-workflow
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcWorkflowEngineActiviti }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-workflowengineactiviti
- name: vfc-workflowengineactiviti
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "workflow",
- "version": "v1",
- "url": "/activiti-rest",
- "protocol": "REST",
- "port": "{{.Values.workflowengineactiviti.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-workflow
- port: {{.Values.workflowengineactiviti.port}}
- nodePort: {{.Values.workflowengineactiviti.nodePort}}
- selector:
- app: vfc-workflow
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcCatalog }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-catalog
- name: vfc-catalog
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "catalog",
- "version": "v1",
- "url": "/api/catalog/v1",
- "protocol": "REST",
- "port": "{{.Values.catalog.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-catalog
- port: {{.Values.catalog.port}}
- nodePort: {{.Values.catalog.nodePort}}
- selector:
- app: vfc-catalog
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/filebeat/*").AsConfig . | indent 2 }}
\ No newline at end of file
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcCatalog }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-catalog
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.catalog.replicas }}
- selector:
- matchLabels:
- app: vfc-catalog
- template:
- metadata:
- labels:
- app: vfc-catalog
- name: vfc-catalog
- spec:
- hostname: vfc-catalog
- containers:
- - args:
- image: {{.Values.catalog.image}}
- name: "vfc-catalog"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.catalog.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.catalog.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcEmsdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-emsdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.emsdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-emsdriver
- template:
- metadata:
- labels:
- app: vfc-emsdriver
- name: vfc-emsdriver
- spec:
- hostname: vfc-emsdriver
- containers:
- - args:
- image: {{.Values.emsdriver.image}}
- name: "vfc-emsdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.emsdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.emsdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcGvnfmdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-gvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.gvnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-gvnfmdriver
- template:
- metadata:
- labels:
- app: vfc-gvnfmdriver
- name: vfc-gvnfmdriver
- spec:
- hostname: vfc-gvnfmdriver
- containers:
- - args:
- image: {{.Values.gvnfmdriver.image}}
- name: "vfc-gvnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.gvnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.gvnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-hwvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.hwvnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-hwvnfmdriver
- template:
- metadata:
- labels:
- app: vfc-hwvnfmdriver
- name: vfc-hwvnfmdriver
- spec:
- hostname: vfc-hwvnfmdriver
- containers:
- - args:
- image: {{.Values.hwvnfmdriver.image}}
- name: "vfc-hwvnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.hwvnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.hwvnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcJujudriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-jujudriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.jujudriver.replicas }}
- selector:
- matchLabels:
- app: vfc-jujudriver
- template:
- metadata:
- labels:
- app: vfc-jujudriver
- name: vfc-jujudriver
- spec:
- hostname: vfc-jujudriver
- containers:
- - args:
- image: {{.Values.jujudriver.image}}
- name: "vfc-jujudriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.jujudriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.jujudriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcNokiaVnfmDriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-nokiavnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nokiavnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-nokiavnfmdriver
- template:
- metadata:
- labels:
- app: vfc-nokiavnfmdriver
- name: vfc-nokiavnfmdriver
- spec:
- hostname: vfc-nokiavnfmdriver
- containers:
- - args:
- image: {{.Values.nokiavnfmdriver.image}}
- name: "vfc-nokiavnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.nokiavnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.nokiavnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcNslcm }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-nslcm
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nslcm.replicas }}
- selector:
- matchLabels:
- app: vfc-nslcm
- template:
- metadata:
- labels:
- app: vfc-nslcm
- name: vfc-nslcm
- spec:
- hostname: vfc-nslcm
- containers:
- - args:
- image: {{.Values.nslcm.image}}
- name: "vfc-nslcm"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.nslcm.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.nslcm.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcResmgr }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-resmgr
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.resmgr.replicas }}
- selector:
- matchLabels:
- app: vfc-resmgr
- template:
- metadata:
- labels:
- app: vfc-resmgr
- name: vfc-resmgr
- spec:
- hostname: vfc-resmgr
- containers:
- - args:
- image: {{.Values.resmgr.image}}
- name: "vfc-resmgr"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.resmgr.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.resmgr.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcVnflcm }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-vnflcm
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vnflcm.replicas }}
- selector:
- matchLabels:
- app: vfc-vnflcm
- template:
- metadata:
- labels:
- app: vfc-vnflcm
- name: vfc-vnflcm
- spec:
- hostname: vfc-vnflcm
- containers:
- - args:
- image: {{.Values.vnflcm.image}}
- name: "vfc-vnflcm"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.vnflcm.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.vnflcm.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcVnfmgr }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-vnfmgr
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vnfmgr.replicas }}
- selector:
- matchLabels:
- app: vfc-vnfmgr
- template:
- metadata:
- labels:
- app: vfc-vnfmgr
- name: vfc-vnfmgr
- spec:
- hostname: vfc-vnfmgr
- containers:
- - args:
- image: {{.Values.vnfmgr.image}}
- name: "vfc-vnfmgr"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.vnfmgr.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.vnfmgr.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcVnfres }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-vnfres
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vnfres.replicas }}
- selector:
- matchLabels:
- app: vfc-vnfres
- template:
- metadata:
- labels:
- app: vfc-vnfres
- name: vfc-vnfres
- spec:
- hostname: vfc-vnfres
- containers:
- - args:
- image: {{.Values.vnfres.image}}
- name: "vfc-vnfres"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.vnfres.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.vnfres.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcWorkflow }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-workflow
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.workflow.replicas }}
- selector:
- matchLabels:
- app: vfc-workflow
- template:
- metadata:
- labels:
- app: vfc-workflow
- name: vfc-workflow
- spec:
- hostname: vfc-workflow
- containers:
- - args:
- image: {{.Values.workflow.image}}
- name: "vfc-workflow"
- env:
- - name: SERVICE_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: SERVICE_PORT
- value: "{{ .Values.workflow.port }}"
- - name: OPENPALETTE_MSB_IP
- value: msb-iag.{{ .Values.nsPrefix }}
- - name: OPENPALETTE_MSB_PORT
- value: "80"
- ports:
- - containerPort: {{ .Values.workflow.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.workflow.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcWorkflowEngineActiviti }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-workflowengineactiviti
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.workflowengineactiviti.replicas }}
- selector:
- matchLabels:
- app: vfc-workflowengineactiviti
- template:
- metadata:
- labels:
- app: vfc-workflowengineactiviti
- name: vfc-workflowengineactiviti
- spec:
- hostname: vfc-workflowengineactiviti
- containers:
- - args:
- image: {{.Values.workflowengineactiviti.image}}
- name: "vfc-workflowengineactiviti"
- env:
- - name: SERVICE_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: SERVICE_PORT
- value: "{{ .Values.workflow.port }}"
- - name: OPENPALETTE_MSB_IP
- value: msb-iag.{{ .Values.nsPrefix }}
- - name: OPENPALETTE_MSB_PORT
- value: "80"
- ports:
- - containerPort: {{ .Values.workflowengineactiviti.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.workflowengineactiviti.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcZtesdncdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-ztesdncdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.ztesdncdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-ztesdncdriver
- template:
- metadata:
- labels:
- app: vfc-ztesdncdriver
- name: vfc-ztesdncdriver
- spec:
- hostname: vfc-ztesdncdriver
- containers:
- - args:
- image: {{.Values.ztesdncdriver.image}}
- name: "vfc-ztesdncdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.ztesdncdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.ztesdncdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVfcVfcztevnfmdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-ztevnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.ztevnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-ztevnfmdriver
- template:
- metadata:
- labels:
- app: vfc-ztevnfmdriver
- name: vfc-ztevnfmdriver
- spec:
- hostname: vfc-ztevnfmdriver
- containers:
- - args:
- image: {{.Values.ztevnfmdriver.image}}
- name: "vfc-ztevnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.ztevnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.ztevnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: IfNotPresent
-msbaddr: msb-iag.{{ .Values.nsPrefix }}:80
-nslcm:
- image: nexus3.onap.org:10001/onap/vfc/nslcm:v1.0.2
- port: 8403
- nodePort: 30403
- replicas: 1
-resmgr:
- image: nexus3.onap.org:10001/onap/vfc/resmanagement:v1.0.0
- port: 8480
- nodePort: 30480
- replicas: 1
-gvnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/gvnfmdriver:v1.0.1
- port: 8484
- nodePort: 30484
- replicas: 1
-ztevnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/ztevnfmdriver:v1.0.2
- port: 8410
- nodePort: 30410
- replicas: 1
-hwvnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/nfvo/svnfm/huawei:v1.0.2
- port: 8482
- nodePort: 30482
- replicas: 1
-ztesdncdriver:
- image: nexus3.onap.org:10001/onap/vfc/ztesdncdriver:v1.0.0
- port: 8411
- nodePort: 30411
- replicas: 1
-nokiavnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/nfvo/svnfm/nokia:v1.0.2
- port: 8486
- nodePort: 30412
- replicas: 1
-jujudriver:
- image: nexus3.onap.org:10001/onap/vfc/jujudriver:v1.0.0
- port: 8483
- nodePort: 30483
- replicas: 1
-vnflcm:
- image: nexus3.onap.org:10001/onap/vfc/vnflcm:v1.0.1
- port: 8801
- nodePort: 30801
- replicas: 1
-vnfres:
- image: nexus3.onap.org:10001/onap/vfc/vnfres:v1.0.1
- port: 8802
- nodePort: 30802
- replicas: 1
-vnfmgr:
- image: nexus3.onap.org:10001/onap/vfc/vnfmgr:v1.0.1
- port: 8803
- nodePort: 30803
- replicas: 1
-emsdriver:
- image: nexus3.onap.org:10001/onap/vfc/emsdriver:v1.0.1
- port: 8206
- nodePort: 30296
- replicas: 1
-workflow:
- image: nexus3.onap.org:10001/onap/vfc/wfengine-mgrservice:v1.0.0
- port: 10550
- nodePort: 30805
- replicas: 1
-workflowengineactiviti:
- image: nexus3.onap.org:10001/onap/vfc/wfengine-activiti:v1.0.0
- port: 8080
- nodePort: 30807
- replicas: 1
-catalog:
- image: nexus3.onap.org:10001/onap/vfc/catalog:v1.0.2
- port: 8806
- nodePort: 30806
- replicas: 1
+global:
+ config:
+ msbServiceName: msb-iag
+ msbPort: 80
+
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+
+# sub-chart configuration
+vfc-workflow:
+ service:
+ externalPort: 10550
+
+vfc-workflow-engine:
+ config:
+ workflowPort: 10550
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Virtual Infrastructure Deployment
name: vid
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+description: VID MariaDB Service
+name: mariadb
+version: 2.0.0
--- /dev/null
+/* Copyright © 2017 AT&T, Amdocs, Bell Canada
+*
+* 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.
+*/
+
+CREATE TABLE IF NOT EXISTS `vid_openecomp_epsdk`.`schema_info` (
+ `SCHEMA_ID` VARCHAR(25) NOT NULL,
+ `SCHEMA_DESC` VARCHAR(75) NOT NULL,
+ `DATASOURCE_TYPE` VARCHAR(100) NULL DEFAULT NULL,
+ `CONNECTION_URL` VARCHAR(200) NOT NULL,
+ `USER_NAME` VARCHAR(45) NOT NULL,
+ `PASSWORD` VARCHAR(45) NULL DEFAULT NULL,
+ `DRIVER_CLASS` VARCHAR(100) NOT NULL,
+ `MIN_POOL_SIZE` INT(11) NOT NULL,
+ `MAX_POOL_SIZE` INT(11) NOT NULL,
+ `IDLE_CONNECTION_TEST_PERIOD` INT(11) NOT NULL)
+ ENGINE = InnoDB
+ DEFAULT CHARACTER SET = utf8;
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-lfconfig
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/lf_config/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_DATABASE
+ value: "{{ .Values.config.mysqldb }}"
+ - name: MYSQL_USER
+ value: "{{ .Values.config.mysqluser }}"
+ - name: MYSQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-password
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ - mountPath: /docker-entrypoint-initdb.d/vid-pre-init.sql
+ name: lfconfig
+ subPath: vid-pre-init.sql
+ - mountPath: /etc/mysql/my.cnf
+ name: lfconfig
+ subPath: my.cnf
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: mariadb-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: lfconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-lfconfig
+ defaultMode: 0755
+ items:
+ - key: vid-my.cnf
+ path: my.cnf
+ - key: vid-pre-init.sql
+ path: vid-pre-init.sql
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
+ db-password: {{ .Values.config.mariadbPassword | b64enc | quote }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+ persistence: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: library/mariadb:10
+pullPolicy: Always
+
+# application configuration
+config:
+ mysqldb: vid_openecomp_epsdk
+ mysqluser: vidadmin
+ mariadbRootPassword: LF+tp_1WqgSY
+ mariadbPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: vid/mariadb/data
+
+service:
+ name: vid-mariadb
+ portName: vid-mariadb
+ internalPort: 3306
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
+++ /dev/null
-/*-
- * ============LICENSE_START=======================================================
- * VID
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-CREATE TABLE IF NOT EXISTS `vid_openecomp_epsdk`.`schema_info` (
- `SCHEMA_ID` VARCHAR(25) NOT NULL,
- `SCHEMA_DESC` VARCHAR(75) NOT NULL,
- `DATASOURCE_TYPE` VARCHAR(100) NULL DEFAULT NULL,
- `CONNECTION_URL` VARCHAR(200) NOT NULL,
- `USER_NAME` VARCHAR(45) NOT NULL,
- `PASSWORD` VARCHAR(45) NULL DEFAULT NULL,
- `DRIVER_CLASS` VARCHAR(100) NOT NULL,
- `MIN_POOL_SIZE` INT(11) NOT NULL,
- `MAX_POOL_SIZE` INT(11) NOT NULL,
- `IDLE_CONNECTION_TEST_PERIOD` INT(11) NOT NULL)
- ENGINE = InnoDB
- DEFAULT CHARACTER SET = utf8;
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: vid-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: vid-mariadb
- port: 3306
- selector:
- app: vid-mariadb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableVidVidServer }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vid-server
- name: vid-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: vid-server
- nodePort: {{ .Values.nodePortPrefix }}00
- port: 8080
- selector:
- app: vid-server
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/vid/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.mariadb.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/usr/local/tomcat/webapps/vid/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ASDC_CLIENT_REST_HOST
+ value: sdc-be.{{ include "common.namespace" . }}
+ - name: ASDC_CLIENT_REST_AUTH
+ value: "{{ .Values.config.asdcclientrestauth }}"
+ - name: ASDC_CLIENT_REST_PORT
+ value: "{{ .Values.config.asdcclientrestport }}"
+ - name: VID_AAI_HOST
+ value: aai.{{ include "common.namespace" . }}
+ - name: VID_AAI_PORT
+ value: "{{ .Values.config.vidaaiport }}"
+ - name: VID_ECOMP_SHARED_CONTEXT_REST_URL
+ value: http://portal-app.{{ include "common.namespace" . }}:{{ .Values.config.onapport }}/ONAPPORTAL/context
+ - name: VID_MSO_SERVER_URL
+ value: http://so.{{ include "common.namespace" . }}:{{ .Values.config.msoport }}
+ - name: VID_MSO_PASS
+ value: "{{ .Values.config.vidmsopass }}"
+ - name: MSO_DME2_SERVER_URL
+ value: "{{ .Values.config.msodme2serverurl }}"
+ - name: MSO_DME2_ENABLED
+ value: {{ .Values.global.debugEnabled | default .Values.debugEnabled | quote }}
+ - name: VID_ECOMP_REDIRECT_URL
+ value: http://portal-app.{{ include "common.namespace" . }}:{{ .Values.config.onapport }}/ONAPPORTAL/login.htm
+ - name: VID_ECOMP_REST_URL
+ value: http://portal-app.{{ include "common.namespace" . }}:{{ .Values.config.onapport }}/ONAPPORTAL/auxapi
+ - name: VID_CONTACT_US_LINK
+ value: "{{ .Values.config.vidcontactuslink }}"
+ - name: VID_UEB_URL_LIST
+ value: message-router.{{ include "common.namespace" . }}
+ - name: VID_MYSQL_HOST
+ value: "{{ .Values.config.vidmysqlhost }}"
+ - name: VID_MYSQL_PORT
+ value: "{{ .Values.config.vidmysqlport }}"
+ - name: VID_MYSQL_DBNAME
+ value: "{{ .Values.config.vidmysqldbname }}"
+ - name: VID_MYSQL_USER
+ value: "{{ .Values.config.vidmysqluser }}"
+ - name: VID_MYSQL_PASS
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: vid-password
+ - name: VID_MYSQL_MAXCONNECTIONS
+ value: "{{ .Values.config.vidmysqlmaxconnections }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/log/onap
+ name: vid-logs
+ - mountPath: /tmp/logback.xml
+ name: vid-logback
+ subPath: logback.xml
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: vid-logs
+ - mountPath: /usr/share/filebeat/data
+ name: vid-data-filebeat
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: vid-logs
+ emptyDir: {}
+ - name: vid-data-filebeat
+ emptyDir: {}
+ - name: vid-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ vid-password: {{ .Values.config.vidmysqlpassword | b64enc | quote }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: vid-lfconfig-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/lf_config/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVidVidServer }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: vid-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/vid/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: vid-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: vid-mariadb
- name: vid-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vidMariaDbReplicas }}
- selector:
- matchLabels:
- app: vid-mariadb
- template:
- metadata:
- labels:
- app: vid-mariadb
- name: vid-mariadb
- spec:
- containers:
- - image: {{ .Values.image.mariadb }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vid-mariadb
- env:
- - name: MYSQL_DATABASE
- value: vid_openecomp_epsdk
- - name: MYSQL_USER
- value: vidadmin
- - name: MYSQL_PASSWORD
- value: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
- - name: MYSQL_ROOT_PASSWORD
- value: LF+tp_1WqgSY
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/lib/mysql
- name: vid-mariadb-data
- - mountPath: /docker-entrypoint-initdb.d/vid-pre-init.sql
- name: vid-lfconfig
- subPath: vid-pre-init.sql
- - mountPath: /etc/mysql/my.cnf
- name: vid-lfconfig
- subPath: my.cnf
- ports:
- - containerPort: 3306
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: vid-mariadb-data
- persistentVolumeClaim:
- claimName: vid-db
- - name: vid-lfconfig
- configMap:
- name: vid-lfconfig-configmap
- defaultMode: 0755
- items:
- - key: vid-my.cnf
- path: my.cnf
- - key: vid-pre-init.sql
- path: vid-pre-init.sql
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-*/}}
-
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-vid"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-vid"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/vid/mariadb/data
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: vid-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-vid"
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVidVidServer }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: vid-server
- name: vid-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vidServerReplicas }}
- selector:
- matchLabels:
- app: vid-server
- template:
- metadata:
- labels:
- app: vid-server
- name: vid-server
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - vid-mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vid-server-readiness
- containers:
- - env:
- - name: ASDC_CLIENT_REST_HOST
- value: sdc-be.{{ .Values.nsPrefix }}
- - name: ASDC_CLIENT_REST_AUTH
- value: Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=
- - name: ASDC_CLIENT_REST_PORT
- value: "8080"
- - name: VID_AAI_HOST
- value: aai-service.{{ .Values.nsPrefix }}
- - name: VID_AAI_PORT
- value: "8443"
- - name: VID_ECOMP_SHARED_CONTEXT_REST_URL
- value: http://portalapps.{{ .Values.nsPrefix }}:8989/ONAPPORTAL/context
- - name: VID_MSO_SERVER_URL
- value: http://mso.{{ .Values.nsPrefix }}:8080
- - name: VID_MSO_PASS
- value: OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz
- - name: MSO_DME2_SERVER_URL
- value: http://localhost:8081
- - name: MSO_DME2_ENABLED
- value: "false"
- - name: VID_ECOMP_REDIRECT_URL
- value: http://portalapps.{{ .Values.nsPrefix }}:8989/ONAPPORTAL/login.htm
- - name: VID_ECOMP_REST_URL
- value: http://portalapps.{{ .Values.nsPrefix }}:8989/ONAPPORTAL/auxapi
- - name: VID_CONTACT_US_LINK
- value: https://todo_contact_us_link.com
- - name: VID_UEB_URL_LIST
- value: dmaap.{{ .Values.nsPrefix }}
- - name: VID_MYSQL_HOST
- value: vid-mariadb
- - name: VID_MYSQL_PORT
- value: "3306"
- - name: VID_MYSQL_DBNAME
- value: vid_openecomp_epsdk
- - name: VID_MYSQL_USER
- value: vidadmin
- - name: VID_MYSQL_PASS
- value: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
- - name: VID_MYSQL_MAXCONNECTIONS
- value: "5"
- image: {{ .Values.image.vid }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vid-server
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/usr/local/tomcat/webapps/vid/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 8080
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/log/onap
- name: vid-logs
- - mountPath: /tmp/logback.xml
- name: vid-logback
- subPath: logback.xml
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: vid-logs
- - mountPath: /usr/share/filebeat/data
- name: vid-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: vid-filebeat-configmap
- - name: vid-logs
- emptyDir: {}
- - name: vid-data-filebeat
- emptyDir: {}
- - name: vid-logback
- configMap:
- name: vid-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+# Default values for vid.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+subChartsOnly:
+ enabled: true
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vid:1.2.1
pullPolicy: Always
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-vidMariaDbReplicas: 1
-vidServerReplicas: 1
-image:
- readiness: oomk8s/readiness-check:1.1.0
- mariadb: nexus3.onap.org:10001/library/mariadb:10
- vid: nexus3.onap.org:10001/openecomp/vid:v1.1.1
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
config:
+ vidmysqlpassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ asdcclientrestauth: "Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+ asdcclientrestport: "8080"
+ vidaaiport: "8443"
+ onapport: "8989"
+ msoport: "8080"
+ vidmsopass: OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz
+ msodme2serverurl: http://localhost:8081
+ vidcontactuslink: https://todo_contact_us_link.com
+ vidmysqlhost: vid-mariadb
+ vidmysqlport: "3306"
+ vidmysqldbname: vid_openecomp_epsdk
+ vidmysqluser: vidadmin
+ vidmysqlmaxconnections: "5"
logstashServiceName: log-ls
logstashPort: 5044
+
+
+# subchart configuration
+mariadb:
+ nameOverride: vid-mariadb
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: vid
+ portName: vid
+ externalPort: "00"
+ nodePort: "00"
+ internalPort: 8080
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP VNF SDK
name: vnfsdk
-version: 1.1.0
+version: 2.0.0
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: postgres
+ version: ~2.0.0
+ repository: '@local'
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVnfsdkPostgres }}
-apiVersion: v1
-kind: Service
-metadata:
- name: postgres
- namespace: {{ .Values.nsPrefix }}
- labels:
- app: postgres
-spec:
- ports:
- - name: postgres-port
- port: 5432
- selector:
- app: postgres
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableVnfsdkRefrepo }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: refrepo
- name: refrepo
- namespace: {{ .Values.nsPrefix }}
-spec:
- ports:
- - name: "refrepo-port"
- port: 8702
- nodePort: {{ .Values.nodePortPrefix }}97
- selector:
- app: refrepo
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "{{ .Values.postgres.nameOverride }}"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy}}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.pullPolicy | default .Values.global.pullPolicy }}
+ name: {{ include "common.name" . }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVnfsdkPostgres }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vnfsdk-postgres
- namespace: {{ .Values.nsPrefix }}
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: postgres
- template:
- metadata:
- labels:
- app: postgres
- name: vnfsdk-postgres
- spec:
- hostname: postgres
- containers:
- - args:
- image: {{ .Values.image.postgresImage }}:{{ .Values.image.postgresVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "postgres"
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
+++ /dev/null
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#{{ if not .Values.disableVnfsdkRefrepo }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: refrepo
- name: vnfsdk-refrepo
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: refrepo
- template:
- metadata:
- labels:
- app: refrepo
- name: vnfsdk-refrepo
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - postgres
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnfsdk-readiness
- containers:
- - image: {{ .Values.image.refrepoImage }}:{{ .Values.image.refrepoVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: refrepo
- readinessProbe:
- tcpSocket:
- port: 8702
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
--- /dev/null
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName | default "http" }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repository: nexus3.onap.org:10001
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/vnfsdk/refrepo:1.1-STAGING-latest
pullPolicy: Always
-nodePortPrefix: 302
-image:
- readiness: oomk8s/readiness-check
- readinessVersion: 1.1.0
- postgresImage: nexus3.onap.org:10001/onap/refrepo/postgres
- postgresVersion: latest
- refrepoImage: nexus3.onap.org:10001/onap/refrepo
- refrepoVersion: 1.0-STAGING-latest
+
+postgres:
+ nameOverride: vnfsdk-postgres
+ service:
+ name: vnfsdk-dbset
+ name2: vnfsdk-dbpri
+ name3: vnfsdk-dbrep
+ nfsprovisionerPrefix: vnfsdk
+ persistence:
+ mountSubPath: vnfsdk/data
+ mountInitPath: vnfsdk
+ enabled: true
+ disableNfsProvisioner: true
+ container:
+ name:
+ primary: vnfsdk-dbpri
+ replica: vnfsdk-dbrep
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: refrepo
+ portName: refrepo
+ nodePort: 97
+ internalPort: 8702
+
+ingress:
+ enabled: false