diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/csit/tests/policy/suite1/Policy-CSIT.robot | 52 | ||||
-rw-r--r-- | test/csit/tests/policy/suite1/sdncnamingpolicy_vFW.template | 11 | ||||
-rw-r--r-- | test/csit/tests/policy/suite1/sdncnamingpolicy_vPG.template | 11 | ||||
-rw-r--r-- | test/mocks/pnfsimulator/README.md | 2 | ||||
-rw-r--r-- | test/mocks/pnfsimulator/docker-compose.yml | 3 | ||||
-rw-r--r-- | test/mocks/pnfsimulator/ssh/ssh_host_rsa_key | 103 |
6 files changed, 120 insertions, 62 deletions
diff --git a/test/csit/tests/policy/suite1/Policy-CSIT.robot b/test/csit/tests/policy/suite1/Policy-CSIT.robot index 5909abd29..785619f9d 100644 --- a/test/csit/tests/policy/suite1/Policy-CSIT.robot +++ b/test/csit/tests/policy/suite1/Policy-CSIT.robot @@ -17,6 +17,8 @@ ${CREATE_CONFIG_VDNS_TEMPLATE} ${CURDIR}/configpolicy_vDNS_R1.template ${CREATE_CONFIG_VCPE_TEMPLATE} ${CURDIR}/configpolicy_vCPE_R1.template ${CREATE_OPS_VFW_TEMPLATE} ${CURDIR}/opspolicy_VFW_R1.template ${CREATE_OOF_HPA_TEMPLATE} ${CURDIR}/oofpolicy_HPA_R1.template +${CREATE_SDNC_VFW_TEMPLATE} ${CURDIR}/sdncnamingpolicy_vFW.template +${CREATE_SDNC_VPG_TEMPLATE} ${CURDIR}/sdncnamingpolicy_vPG.template ${PUSH_POLICY_TEMPLATE} ${CURDIR}/pushpolicy.template ${CREATE_OPS_VDNS_TEMPLATE} ${CURDIR}/opspolicy_VDNS_R1.template ${DEL_POLICY_TEMPLATE} ${CURDIR}/deletepolicy.template @@ -38,6 +40,8 @@ ${OPS_POLICY_VOLTE_NAME} VoLTE ${OPS_POLICY_VOLTE_TYPE} BRMS_PARAM ${OOF_POLICY_HPA_NAME} HPA ${OOF_POLICY_HPA_TYPE} Optimization +${SDNC_POLICY_VFW_NAME} ONAP_vFW_Naming +${SDNC_POLICY_VPG_NAME} ONAP_vPG_Naming ${file_path} ../testsuite/robot/assets/templates/ControlLoopDemo__closedLoopControlName.drl ${RESOURCE_PATH_UPLOAD} /pdp/api/policyEngineImport?importParametersJson=%7B%22serviceName%22%3A%22Manyu456%22%2C%20%22serviceType%22%3A%22BRMSPARAM%22%7D ${CREATE_OPS_VCPE_TEMPLATE} ${CURDIR}/opspolicy_vCPE_R1.template @@ -80,6 +84,16 @@ VOLTE Ops Policy Push Ops Policy ${OPS_POLICY_VOLTE_NAME} ${OPS_POLICY_VOLTE_TYPE} #VOLTE Policy Tests +VFW SDNC Naming Policy + ${SDNC_POLICY_VFW_NAME}= Create VFW SDNC Naming Policy + Push Config Policy ${SDNC_POLICY_VFW_NAME} ${CONFIG_POLICY_VFW_TYPE} + #VFW Policy Tests + +VPG SDNC Naming Policy + ${SDNC_POLICY_VPG_NAME}= Create VPG SDNC Naming Policy + Push Config Policy ${SDNC_POLICY_VPG_NAME} ${CONFIG_POLICY_VFW_TYPE} + #VPG Policy Tests + HPA OOF Policy ${OOF_POLICY_HPA_NAME}= Create OOF HPA Policy Push Config Policy ${OOF_POLICY_HPA_NAME} ${OOF_POLICY_HPA_TYPE} @@ -109,6 +123,8 @@ VFW Policy Tests Get Configs VFW Policy ${OPS_POLICY_VFW_NAME}= Create Ops VFW Policy Push Ops Policy ${OPS_POLICY_VFW_NAME} ${OPS_POLICY_VFW_TYPE} + ${SDNC_POLICY_VFW_NAME}= Create VFW SDNC Naming Policy + Push Config Policy ${CONFIG_POLICY_VFW_NAME} ${CONFIG_POLICY_VFW_TYPE} VDNS Policy Tests ${CONFIG_POLICY_VDNS_NAME}= Create Config VDNS Policy @@ -123,6 +139,10 @@ VCPE Policy Tests Get Configs VCPE Policy ${OPS_POLICY_VCPE_NAME}= Create Ops VCPE Policy Push Ops Policy ${OPS_POLICY_VCPE_NAME} ${OPS_POLICY_VCPE_TYPE} + +VPG Policy Tests + ${SDNC_POLICY_VPG_NAME}= Create VPG SDNC Naming Policy + Push Config Policy ${SDNC_POLICY_VPG_NAME} ${CONFIG_POLICY_VFW_TYPE} VOLTE Policy Tests ${OPS_POLICY_VOLTE_NAME}= Create Ops VOLTE Policy @@ -172,7 +192,29 @@ Create Config VFW Policy Should Be Equal As Strings ${put_resp.status_code} 200 [Return] ${policyname1} - Create Policy Name +Create VPG SDNC Naming Policy + [Documentation] Create VPG SDNC Naming Policy + ${randompolicyname} = Create Policy Name + ${policyname1}= Catenate com.${randompolicyname}_ONAP_vPG_Naming + ${SDNC_POLICY_VPG_NAME}= Set Test Variable ${policyname1} + ${sdncpolicy}= Create Dictionary policy_name=${policyname1} + ${output} = Fill JSON Template File ${CREATE_SDNC_VPG_TEMPLATE} ${sdncpolicy} + ${put_resp} = Run Policy Put Request ${RESOURCE_PATH_CREATE} ${output} + Should Be Equal As Strings ${put_resp.status_code} 200 + [Return] ${policyname1} + +Create VFW SDNC Naming Policy + [Documentation] Create VFW SDNC Naming Policy + ${randompolicyname} = Create Policy Name + ${policyname1}= Catenate com.${randompolicyname}_ONAP_vFW_Naming + ${SDNC_POLICY_VFW_NAME}= Set Test Variable ${policyname1} + ${sdncpolicy}= Create Dictionary policy_name=${policyname1} + ${output} = Fill JSON Template File ${CREATE_SDNC_VFW_TEMPLATE} ${sdncpolicy} + ${put_resp} = Run Policy Put Request ${RESOURCE_PATH_CREATE} ${output} + Should Be Equal As Strings ${put_resp.status_code} 200 + [Return] ${policyname1} + +Create Policy Name [Documentation] Generate Policy Name [Arguments] ${prefix}=CSIT_ ${random}= Generate Random String 15 [LOWER][NUMBERS] @@ -180,7 +222,7 @@ Create Config VFW Policy [Return] ${policyname} Create Ops VFW Policy - [Documentation] Create Opertional Policy + [Documentation] Create Operational Policy ${randompolicyname} = Create Policy Name ${policyname1}= Catenate com.${randompolicyname}_vFirewall ${OPS_POLICY_VFW_NAME}= Set Test Variable ${policyname1} @@ -254,7 +296,7 @@ Create Config VDNS Policy [Return] ${policyname1} Create Ops VDNS Policy - [Documentation] Create Opertional Policy + [Documentation] Create Operational Policy ${randompolicyname} = Create Policy Name ${policyname1}= Catenate com.${randompolicyname}_vLoadBalancer ${OPS_POLICY_VDNS_NAME}= Set Test Variable ${policyname1} @@ -285,7 +327,7 @@ Get Configs VCPE Policy Should Be Equal As Strings ${get_resp.status_code} 200 Create Ops vCPE Policy - [Documentation] Create Opertional Policy + [Documentation] Create Operational Policy ${randompolicyname} = Create Policy Name ${policyname1}= Catenate com.${randompolicyname}_vCPE ${OPS_POLICY_VCPE_NAME}= Set Test Variable ${policyname1} @@ -297,7 +339,7 @@ Create Ops vCPE Policy [Return] ${policyname1} Create Ops VolTE Policy - [Documentation] Create Opertional Policy + [Documentation] Create Operational Policy ${randompolicyname} = Create Policy Name ${policyname1}= Catenate com.${randompolicyname}_VoLTE ${dict}= Create Dictionary policy_name=${policyname1} diff --git a/test/csit/tests/policy/suite1/sdncnamingpolicy_vFW.template b/test/csit/tests/policy/suite1/sdncnamingpolicy_vFW.template new file mode 100644 index 000000000..d9c773d1c --- /dev/null +++ b/test/csit/tests/policy/suite1/sdncnamingpolicy_vFW.template @@ -0,0 +1,11 @@ +{ + "configBody": "{\"service\":\"SDNC-GenerateName\",\"version\":\"CSIT\",\"content\":{\"policy-instance-name\":\"ONAP_VFW_NAMING_TIMESTAMP\",\"naming-models\":[{\"naming-properties\":[{\"property-name\":\"AIC_CLOUD_REGION\"},{\"property-name\":\"nfRole\"},{\"property-name\":\"TIMESTAMP\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNF\",\"nfRole\":\"vFW\",\"naming-recipe\":\"AIC_CLOUD_REGION|DELIMITER|nfRole|DELIMITER|TIMESTAMP\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"ENTIRETY\",\"start-value\":\"001\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}},{\"property-name\":\"NFC_NAMING_CODE\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNFC\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|NFC_NAMING_CODE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"},{\"property-name\":\"VF_MODULE_LABEL\"},{\"property-name\":\"VF_MODULE_TYPE\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"PRECEEDING\",\"start-value\":\"01\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}}],\"naming-type\":\"VF-MODULE\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|VF_MODULE_LABEL|DELIMITER|VF_MODULE_TYPE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"}],\"naming-type\":\"KEY\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"protected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"protected_private_net_id\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"unprotected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"unprotected_private_net_id\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"}]}}", + "policyName": "${policy_name}", + "policyConfigType": "MicroService", + "onapName": "SDNC", + "riskLevel": "4", + "riskType": "test", + "guard": "false", + "priority": "4", + "description": "ONAP_VFW_NAMING_TIMESTAMP" +}
\ No newline at end of file diff --git a/test/csit/tests/policy/suite1/sdncnamingpolicy_vPG.template b/test/csit/tests/policy/suite1/sdncnamingpolicy_vPG.template new file mode 100644 index 000000000..9bae20a13 --- /dev/null +++ b/test/csit/tests/policy/suite1/sdncnamingpolicy_vPG.template @@ -0,0 +1,11 @@ +{ + "configBody": "{\"service\":\"SDNC-GenerateName\",\"version\":\"CSIT\",\"content\":{\"policy-instance-name\":\"ONAP_VPG_NAMING_TIMESTAMP\",\"naming-models\":[{\"naming-properties\":[{\"property-name\":\"AIC_CLOUD_REGION\"},{\"property-name\":\"nfRole\"},{\"property-name\":\"TIMESTAMP\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNF\",\"nfRole\":\"vPG\",\"naming-recipe\":\"AIC_CLOUD_REGION|DELIMITER|nfRole|DELIMITER|TIMESTAMP\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"ENTIRETY\",\"start-value\":\"001\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}},{\"property-name\":\"NFC_NAMING_CODE\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNFC\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|NFC_NAMING_CODE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"},{\"property-name\":\"VF_MODULE_LABEL\"},{\"property-name\":\"VF_MODULE_TYPE\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"PRECEEDING\",\"start-value\":\"01\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}}],\"naming-type\":\"VF-MODULE\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|VF_MODULE_LABEL|DELIMITER|VF_MODULE_TYPE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"}],\"naming-type\":\"KEY\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"protected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"protected_private_net_id\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"unprotected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"unprotected_private_net_id\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"}]}}", "policyName": "${policy_name}", + "policyName": "${policy_name}", + "policyConfigType": "MicroService", + "onapName": "SDNC", + "riskLevel": "4", + "riskType": "test", + "guard": "false", + "priority": "4", + "description": "ONAP_VPG_NAMING_TIMESTAMP" +}
\ No newline at end of file diff --git a/test/mocks/pnfsimulator/README.md b/test/mocks/pnfsimulator/README.md index b1ff56035..14b62eecc 100644 --- a/test/mocks/pnfsimulator/README.md +++ b/test/mocks/pnfsimulator/README.md @@ -17,7 +17,7 @@ The message that is being sent to VES is built inside the simulator and it's con Proper config must contain *simulatorParams*, *commonEventHeaderParams* and *pnfRegistrationParams* or notificationParams. ###Running simulator -The recommended way is to checkout PNF Simulator project from ONAP Git repository and use *simulator*.sh script +The recommended way is to checkout PNF Simulator project from ONAP Git repository and use *simulator*.sh script. If you copy *simulator.sh* script to another location, keep in mind to copy also *docker-compose.yml* and directories: *config,json_schema and netconf*. In order to run simulator, invoke ./simulator.sh start Script downloads if necessary needed Docker images and runs instances of these images. diff --git a/test/mocks/pnfsimulator/docker-compose.yml b/test/mocks/pnfsimulator/docker-compose.yml index f3500d248..3d23e00c9 100644 --- a/test/mocks/pnfsimulator/docker-compose.yml +++ b/test/mocks/pnfsimulator/docker-compose.yml @@ -45,12 +45,11 @@ services: image: stilliard/pure-ftpd:latest ports: - "2221:21" -# - "30000-30009:30000-30009" volumes: - ./ftpes/userpass/:/etc/pure-ftpd/passwd/ - ./ftpes/tls/:/etc/ssl/private/ + - ./ftpes/files:/home/onap environment: PUBLICHOST: localhost ADDED_FLAGS: --tls=2 -# entrypoint: /run.sh -c 5 -C 5 -l puredb:/etc/pure-ftpd/pureftpd.pdb -E -j -R -p 30000:30009 restart: on-failure
\ No newline at end of file diff --git a/test/mocks/pnfsimulator/ssh/ssh_host_rsa_key b/test/mocks/pnfsimulator/ssh/ssh_host_rsa_key index 1a3c49e37..1163ba248 100644 --- a/test/mocks/pnfsimulator/ssh/ssh_host_rsa_key +++ b/test/mocks/pnfsimulator/ssh/ssh_host_rsa_key @@ -1,54 +1,49 @@ ------BEGIN RSA PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: AES-128-CBC,242034B2C46EE5D70C6017C29024CFAE - -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 ------END RSA PRIVATE KEY----- +-----BEGIN OPENSSH PRIVATE KEY----- +b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAACFwAAAAdzc2gtcn +NhAAAAAwEAAQAAAgEAomSWiX45o52iah03GBvA5K1NTK+1gJhke9EFXeJg8ZjObz5tupzr +97gztLEsIz/7Axslc5WscJZ3wX1WcCWzDH+rBDzDQi7wUsE+BOr3/aysF6lCM4/IWbrzne +0T6duNWdvQpC+mnqekDUpNzTpbuJsRjL/licMqA6vMmvnjxF0IJeUIqWmwJlxTipNcdec/ +bXLPQ8OSbypAqY6Se8wHfbZJroq2pkvTpRE8vASdEJDI97nDbqg7FJFM7yp51h1XMpJmnC +WN79w/UuAaKi3NV2U1QeKEYNBpTgqjjEHlSz/48bc1WIiuRLB2wueaoQvYvCGmksnjeuoY +FsCIehR4TzB6+NL0SspYmRitGgT/qWktFdT7zVFvfrG92Qwf+5rv9MqdOshqaiQABUUAmc +zaolm20MtbP/h0G7VMFa+4J2No4YQL/G3AT8E7SHLYP6zv1g1iSbC87hZ2+3xpBS/hKgLd +KqMw0i+Ww8yYMpYNNGOhjNXm7wZbjRPu9Z9U4oCJ5SLylhyrawLYh0MFyzkv792hKHqYCS +osAAb2F4gdkDV6sZG65xaE+Pm8oZmpBt0lZgwg1JW0KAyaSi3pMLeXXs0rgzXRXgtU8VGo +X7AXDjhtUzsa7AiiVPmaDF1V7KLgALIaVokmRmUdoplxS3EXw1eRSNm0WT7/lgA87s7H5C +cAAAc4uISan7iEmp8AAAAHc3NoLXJzYQAAAgEAomSWiX45o52iah03GBvA5K1NTK+1gJhk +e9EFXeJg8ZjObz5tupzr97gztLEsIz/7Axslc5WscJZ3wX1WcCWzDH+rBDzDQi7wUsE+BO +r3/aysF6lCM4/IWbrzne0T6duNWdvQpC+mnqekDUpNzTpbuJsRjL/licMqA6vMmvnjxF0I +JeUIqWmwJlxTipNcdec/bXLPQ8OSbypAqY6Se8wHfbZJroq2pkvTpRE8vASdEJDI97nDbq +g7FJFM7yp51h1XMpJmnCWN79w/UuAaKi3NV2U1QeKEYNBpTgqjjEHlSz/48bc1WIiuRLB2 +wueaoQvYvCGmksnjeuoYFsCIehR4TzB6+NL0SspYmRitGgT/qWktFdT7zVFvfrG92Qwf+5 +rv9MqdOshqaiQABUUAmczaolm20MtbP/h0G7VMFa+4J2No4YQL/G3AT8E7SHLYP6zv1g1i +SbC87hZ2+3xpBS/hKgLdKqMw0i+Ww8yYMpYNNGOhjNXm7wZbjRPu9Z9U4oCJ5SLylhyraw +LYh0MFyzkv792hKHqYCSosAAb2F4gdkDV6sZG65xaE+Pm8oZmpBt0lZgwg1JW0KAyaSi3p +MLeXXs0rgzXRXgtU8VGoX7AXDjhtUzsa7AiiVPmaDF1V7KLgALIaVokmRmUdoplxS3EXw1 +eRSNm0WT7/lgA87s7H5CcAAAADAQABAAACAQCHQLAApBjtpQT4zIxuj+8AhzaygEXzbPmE +Bnspzrpffp2xGZXar4f5MnoeLNJOKaOu2pU+x5Jv02K6zOGJVlziNBMD3HfkT6PpyPkWr3 +0M0xwiON7igwajdYoiJqtHQ41fIi2MEgP8cDO6vgA+xjROdRkQ2WMccmgz1or7KNYDXljC +9xdXwqbrzEnoSQPhT1EMn2rxTZpQ7CgfEJgAc9ZpZcHIlc+6gb0s5kZncpA+k9hOO3ICYC +uU3c/uArqnEpjljfnYY47sD8zOAcjJCIzWFX1d+oO2/t42GbZNwzRukEGPUMAllPFQVIkV +nEC1kWBakMxjxbKpVP/rM0B4LURlnDEk08qm16Oy6P65du29trxR4GoBUO0DOltFDOexWG +4zf5aUlcnnjDRP9Olfm7Uw1FYyYsKvYwM/pkGFz18IE1OuD4I5xiQGALdJX/6upa3LC46s +h8wvGF2G1Ciif1fxp+icju46iUtyZkOUsbpUUEh7jVjCi8SvAVvHkNmNmD06MQkal1Pamk +X662iezWm/vtdelbSGT1FcUL4hBxG9blaNu5wsIq7yMzwRil1iFJ0Ksnr5UxamzHpyRR/F +8BfrdHjAc8ZoAc/geox952u5GBlCVidrnfCnl1rYCuP+H9MNsf8688pew4GH7KZypEz5wy +wMOo5bsSbIV+3c62ElwQAAAQEAvz94YWAY/xvtgxzXbZ8a2RFFURc8JrFEfECssXt5GETz +hiY12H5YMuo2HKalYnHokpi30nE/f6rSSgjVd0aSPuaPUp1/ge+svGi7fLv/KZ4nh/6dEd +9SY4GByivowDWKUfieiT6/y6d7kXXdirg44nQlSTtxb9y0VJHGrp6pIeVox4UJeDeYvvus +tEqJ5jkGvVahTmgNql2NFwnwKGwbqylOZx5qw48SFjSBQqIHzZeiQ8TKrQyGu9tlwjK0YW +fUkMDbQq1TgdTOY4t+VE7q2zQO8l/5/SFaaLVwQmjolhUXfbvzAgjpCjui/bqaIT5gjoyo +WM540akWScKwBTwo9QAAAQEA1m0Ah/EfmbCigwUKJvwhRrQPoEt62Fi1gjyf1lbllwufhg +8z34d/6s+YBMPKYc3fdZcgeotg5ow2gsvWygDnFT4FWkU29A16Oozh8U8MDlXlpWobn+WZ +97wW8+f8onQVAYHRPZq0hgBsQPq9DcpkmgTkc6SJJmY51T6q0pAqKJJiakyPhQfMiATSAa +yB5n7l2VMaHP2wlBCJ5N67JkbkevuX8JisXKaCjzBDgRHgcY+62wsdi0c5d4qVmwFDAhp5 +hkB7PZnwMJ3b28rbsKuC0lk5UCz9X6oSdpOpy8SpTWh0te3fs7ev0NtWQZIZdpKq+InAxO +KHAXoTDonehNjstQAAAQEAweDw4N7MoOeMRJr0trJHZDLSN9wZncEIaPSGk2neON9cq2zg +iysKiYBwDyeqSXJh0b5Udju7UvQTrXyMtb4LgOCGrWVTVl1rNZNNEhnPiGf1dwtjzUOUVU +zZkcYm3muwaho7FSrp9kAadFyveduaWLqUsig1mkl4SVTQT/ieJWn5JJ23f3IokA+HP8Ge +nZRGRXtHrDFrvbrnsmHeGjy0W5beaZhOd45yWpKmB4+zQvRV1ev5iRf6PIII/weLLoAbD3 +GOKG9t0NkQ+/Bi2V31toK8m5qEQ+hwGUgfh95Jgbw4Z2uzMIGGHiTnYpKesviEKnlVP4Fi +4f+Ou0QhngZy6wAAAAAB +-----END OPENSSH PRIVATE KEY----- |