Adding vRouter to M-CORD profile

Change-Id: I6892d15e28eb40dc6a83269ac6028d46890ed6fe
diff --git a/xos-profiles/mcord/Chart.yaml b/xos-profiles/mcord/Chart.yaml
index 78d0397..e02f060 100644
--- a/xos-profiles/mcord/Chart.yaml
+++ b/xos-profiles/mcord/Chart.yaml
@@ -17,7 +17,7 @@
 description: A Helm chart for the "mcord" profile
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 1.0.6
+version: 1.0.7
 
 # xosproject/tosca-loader version
 appVersion: 1.1.7
diff --git a/xos-profiles/mcord/requirements.yaml b/xos-profiles/mcord/requirements.yaml
index 53d8052..1a7f1ac 100644
--- a/xos-profiles/mcord/requirements.yaml
+++ b/xos-profiles/mcord/requirements.yaml
@@ -28,3 +28,6 @@
 - name: progran
   version: 2.0.5
   repository: file://../../xos-services/progran
+- name: vrouter
+  version: 2.0.5
+  repository: file://../../xos-services/vrouter
diff --git a/xos-profiles/mcord/templates/_tosca.tpl b/xos-profiles/mcord/templates/_tosca.tpl
index 220a6c1..62fce70 100644
--- a/xos-profiles/mcord/templates/_tosca.tpl
+++ b/xos-profiles/mcord/templates/_tosca.tpl
@@ -99,6 +99,7 @@
    - custom_types/mcordsubscriberservice.yaml
    - custom_types/onosservice.yaml
    - custom_types/progranservice.yaml
+   - custom_types/vrouterservice.yaml
    - custom_types/servicegraphconstraint.yaml
    - custom_types/servicedependency.yaml
    - custom_types/service.yaml
@@ -114,6 +115,12 @@
         name: progran
         must-exist: true
 
+    service#vrouter:
+      type: tosca.nodes.VRouterService
+      properties:
+        name: vrouter
+        must-exist: true
+
     service#mcord:
       type: tosca.nodes.MCordSubscriberService
       properties:
@@ -190,13 +197,25 @@
             node: service#onos
             relationship: tosca.relationships.BelongsToOne
 
+    service_dependency#vrouter_fabric:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#vrouter
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#fabric
+            relationship: tosca.relationships.BelongsToOne
+
     constraints:
       type: tosca.nodes.ServiceGraphConstraint
       properties:
 {{- if .Values.seba.enabled }}
         constraints: '[ ["mcord", null, "onos"], ["progran", null, "fabric"], ["epc-local", null, null] ["epc-remote", null, null] ]'
 {{ else }}
-        constraints: '[ ["mcord", "rcord", null], ["progran", "volt", "att-workflow-driver"], ["epc-local", "fabric-crossconnect", "onos"], ["epc-remote", null, "fabric"] ]'
+        constraints: '[ ["mcord", "rcord", null], ["progran", "volt", "att-workflow-driver"], ["epc-local", "fabric-crossconnect", "onos"], ["epc-remote", "vrouter", "fabric"] ]'
 {{- end -}}
 {{- end -}}
 
diff --git a/xos-profiles/mcord/templates/tosca-configmap.yaml b/xos-profiles/mcord/templates/tosca-configmap.yaml
index 4d92427..253d045 100644
--- a/xos-profiles/mcord/templates/tosca-configmap.yaml
+++ b/xos-profiles/mcord/templates/tosca-configmap.yaml
@@ -29,6 +29,8 @@
 {{ include "mcord.fixtureTosca" . | indent 4 }}
   040-progran-service.yaml: |
 {{ include "progran.serviceTosca" .Values.progran | indent 4 }}
+  050-vrouter-service.yaml: |
+{{ include "vrouter.serviceTosca" .Values.vrouter | indent 4 }}
   100-mcord-subscriber-service.yaml: |
 {{ include "mcord-subscriber.serviceTosca" (index .Values "mcord-subscriber") | indent 4 }}
   300-service-graph.yaml: |
diff --git a/xos-profiles/mcord/values.yaml b/xos-profiles/mcord/values.yaml
index a7a818b..4dfde1d 100644
--- a/xos-profiles/mcord/values.yaml
+++ b/xos-profiles/mcord/values.yaml
@@ -28,6 +28,13 @@
     tag: '{{ .Chart.AppVersion }}'
     pullPolicy: 'Always'
 
+# temporary hack
+vrouter:
+  image:
+    repository: 'matteoscandolo/vrouter-synchronizer'
+    tag: 'latest'
+# end of temporary hack
+
 global:
   registry: ""