--- /dev/null
+{
+  "pdpGroup": "default",
+  "policyComponent" : "PDP",
+  "policyName": "com.BRMSParamvFirewall",
+  "policyType": "BRMS_Param"
+}
 
--- /dev/null
+{
+  "pdpGroup": "default",
+  "policyName": "com.BRMSParamvFirewall",
+  "policyType": "BRMS_Param"
+}
 
 Resource        test_templates/model_test_template.robot
 Resource        test_templates/vnf_orchestration_test_template.robot
 Resource        asdc_interface.robot
+Resource        mso_interface.robot
 Resource        vid/vid_interface.robot
+Resource       policy_interface.robot
 
 Library                UUID
 Library                Collections
     Save For Delete
     Log to Console   Customer Name=${CUSTOMER_NAME}
     Log to Console   VNF Module Name=${vf_module_name}
+    ${model_invariant_id}=   Run MSO Get ModelInvariantId   ${SUITE_SERVICE_MODEL_NAME} 
+    Log to Console   ModelInvariantID=${model_invariant_id}
+    Update vVFWCL Policy   ${model_invariant_id}
+    APPC Mount Point    ${vf_module_name}
+    
+    
+    
+
 
 Save For Delete
     [Documentation]   Create a variable file to be loaded for save for delete
     \    ${comma}=   Catenate   ,
     ${vars}=    Catenate  ${vars}]\n
     OperatingSystem.Create File   ${FILE_CACHE}/${STACK_NAME}.py   ${vars}
+    OperatingSystem.Create File   ${FILE_CACHE}/lastVNF4HEATBRIGE.py   ${vars}
 
 
 
 ${GLOBAL_VID_UI_TIMEOUT_MEDIUM}    60s
 ${GLOBAL_VID_UI_TIMEOUT_LONG}    120s
 ${GLOBAL_VM_PRIVATE_KEY}   ${EXECDIR}/robot/assets/keys/robot_ssh_private_key.pvt
+${GLOBAL_ONAP_PRIVATE_KEY}   ${EXECDIR}/robot/assets/keys/onap_dev.pvt
 ${GLOBAL_AAI_ZONE_ID}    nova1
 ${GLOBAL_AAI_ZONE_NAME}    nova
 ${GLOBAL_AAI_DESIGN_TYPE}    integration
 
     ${resp}=   Get Request     mso     ${MSO_HEALTH_CHECK_PATH}     headers=${headers}
     Should Be Equal As Strings         ${resp.status_code}     200
 
+Run MSO Get ModelInvariantId
+    [Documentation]    Runs an MSO Get ModelInvariantID for ClosedLoop Polieis 
+    [Arguments]    ${service_model_name}    
+    ${param_dict}=    Create Dictionary    serviceModelName    ${service_model_name}
+    ${param}=   Evaluate   urllib.urlencode(${param_dict})    urllib
+    ${data_path}=   Catenate   SEPARATOR=     /ecomp/mso/catalog/v2/serviceVnfs?  ${param}
+    ${resp}=    Run MSO Get Request    ${data_path}
+    Log    ${resp.json()}
+    [Return]   ${resp.json()['serviceVnfs'][0]['modelInfo']['modelInvariantUuid']}
+    
 Run MSO Get Request
     [Documentation]    Runs an MSO get request
     [Arguments]    ${data_path}    ${accept}=application/json
 
 ${POLICY_HEALTH_CHECK_PATH}        /healthcheck
 ${POLICY_ENDPOINT}     ${GLOBAL_POLICY_SERVER_PROTOCOL}://${GLOBAL_INJECTED_POLICY_IP_ADDR}:${GLOBAL_POLICY_SERVER_PORT}
 ${POLICY_HEALTHCHECK_ENDPOINT}     ${GLOBAL_POLICY_SERVER_PROTOCOL}://${GLOBAL_INJECTED_POLICY_IP_ADDR}:${GLOBAL_POLICY_HEALTHCHECK_PORT}
+${POLICY_TEMPLATES}        robot/assets/templates/policy
 
 *** Keywords ***
 
 
 Update vVFWCL Policy
     [Arguments]   ${resource_id}
-    Delete vFWCL Policy
+    Run Keyword and Ignore Error    Delete vFWCL Policy
     Sleep    20s
     Create vFWCL Policy     ${resource_id}
     Sleep    5s
 
     ${service_name}=    Catenate    Service_Ete_Name${uuid}
     ${service_type}=    Set Variable    ${service}
     ${service_model_type}     ${vnf_type}    ${vf_modules}   ${catalog_resources}=    Model Distribution For Directory    ${service}
+    Set Suite Variable    ${SUITE_SERVICE_MODEL_NAME}   ${service_model_type}
     Run Keyword If   '${service}' == 'vVG'    Create VVG Server    ${uuid}
     Create Customer For VNF    ${CUSTOMER_NAME}    ${CUSTOMER_NAME}    INFRA    ${service_type}    ${GLOBAL_AAI_CLOUD_OWNER}
     Setup Browser
 
     [Tags]   instantiateVFWCL
     Instantiate VNF   vFWCL
 
+
 Delete Instantiated VNF
     [Documentation]   This test assumes all necessary variables are loaded via the variable file create in  Save For Delete
     ...    The Teardown VNF needs to be in the teardown step of the test case...