[COMAC-196] Add ProgRAN in COMAC profile

Change-Id: I33b7ae5e62f2287a003464d2a23a3c54fccd85fa
diff --git a/xos-profiles/comac/templates/_tosca.tpl b/xos-profiles/comac/templates/_tosca.tpl
index 7b0f000..e50701d 100644
--- a/xos-profiles/comac/templates/_tosca.tpl
+++ b/xos-profiles/comac/templates/_tosca.tpl
@@ -306,6 +306,9 @@
   - custom_types/mcordsubscriberservice.yaml
   - custom_types/onosservice.yaml
   - custom_types/vrouterservice.yaml
+{{- if .Values.progran.enabled }}
+   - custom_types/progranservice.yaml
+{{- end }}
 {{- if .Values.residentialService.enabled }}
   - custom_types/rcordservice.yaml
   - custom_types/voltservice.yaml
@@ -343,6 +346,14 @@
         name: mcord
         must-exist: true
 
+{{ if .Values.progran.enabled }}
+    service#progran:
+      type: tosca.nodes.ProgranService
+      properties:
+        name: progran
+        must-exist: true
+{{ end }}
+
 {{- if .Values.residentialService.enabled }}
     service#rcord:
       type: tosca.nodes.RCORDService
@@ -479,6 +490,44 @@
     # --
 {{- end }}
 
+{{ if .Values.progran.enabled }}
+    service_dependency#mcord_progran:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#progran
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#mcord
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#progran_epc_cp:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#omec-cp
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#progran
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#progran_epc_up:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#omec-up
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#progran
+            relationship: tosca.relationships.BelongsToOne
+
+{{ else }}
     service_dependency#mcord_epc_cp:
       type: tosca.nodes.ServiceDependency
       properties:
@@ -502,6 +551,7 @@
         - provider_service:
             node: service#mcord
             relationship: tosca.relationships.BelongsToOne
+{{ end }}
 
     service_dependency#epc_cp_epc_up:
       type: tosca.nodes.ServiceDependency
@@ -542,5 +592,5 @@
     constraints:
       type: tosca.nodes.ServiceGraphConstraint
       properties:
-        constraints: '[["mcord", null, null, "rcord"], [null, null, "att-workflow-driver", "volt"], ["omec-cp", "omec-up", "onos", "fabric-crossconnect"], [null, "cdn-local", "fabric", null], [null, "cdn-remote", "vrouter", null]]'
+        constraints: '[["mcord", null, null, "rcord"], ["progran", null, "att-workflow-driver", "volt"], ["omec-cp", "omec-up", "onos", "fabric-crossconnect"], [null, "cdn-local", "fabric", null], [null, "cdn-remote", "vrouter", null]]'
 {{- end -}}