This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
vims_functional_testing [2015/03/13 22:40] Martin Taylor [Deployment and Test Process] |
vims_functional_testing [2015/03/19 13:55] Martin Taylor [Software Components of the vIMS] |
||
---|---|---|---|
Line 16: | Line 16: | ||
===== Software Components of the vIMS ===== | ===== Software Components of the vIMS ===== | ||
The software components to be deployed as the VNF, and the software that performs the functional testing of the VNF, are all open source. They form part of [[http://www.projectclearwater.org|Project Clearwater]]. The following software elements will be deployed for the purposes of the vIMS functional test: | The software components to be deployed as the VNF, and the software that performs the functional testing of the VNF, are all open source. They form part of [[http://www.projectclearwater.org|Project Clearwater]]. The following software elements will be deployed for the purposes of the vIMS functional test: | ||
- | * Bono - SIP edge proxy, corresponds to Proxy Call Session Control Function (P-CSCF) in IMS terminology. | + | * [[https://github.com/Metaswitch/sprout|Bono]] - SIP edge proxy, corresponds to Proxy Call Session Control Function (P-CSCF) in IMS terminology. |
- | * Sprout - SIP registrar and message router. Together with Homestead, corresponds to Interrogating CSCF (I-CSCF) and Serving CSCF (S-CSCF) in IMS terminology. | + | * [[https://github.com/Metaswitch/sprout|Sprout]] - SIP registrar and message router. Together with Homestead, corresponds to Interrogating CSCF (I-CSCF) and Serving CSCF (S-CSCF) in IMS terminology. |
- | * Homestead - repository of subscriber credentials and service profiles. | + | * [[https://github.com/Metaswitch/homestead|Homestead]] - repository of subscriber credentials and service profiles. |
- | * Homer - repository of subscriber-controlled call service setttings. | + | * [[https://github.com/Metaswitch/crest|Homer]] - repository of subscriber-controlled call service setttings. |
- | * Ellis - provides a provisioning API enabling subscribers to be configured in Homestead and Homer. | + | * [[https://github.com/Metaswitch/ellis|Ellis]] - provides a provisioning API enabling subscribers to be configured in Homestead and Homer. |
- | * Clearwater-live-test - emulates SIP endpoints to enable automated functional testing of vIMS. | + | * [[https://github.com/Metaswitch/clearwater-live-test|Clearwater-live-test]] - emulates SIP endpoints to enable automated functional testing of vIMS. |
+ | * [[https://www.isc.org/downloads/bind/|BIND]] - provides a DNS server to enable the components of Clearwater to find each other. | ||
Each of these components will be instantiated as a single virtual machine. | Each of these components will be instantiated as a single virtual machine. | ||
- | |||
===== Deployment and Test Process ===== | ===== Deployment and Test Process ===== | ||
We will use OpenStack Heat to automate the deployment of the vIMS and test components, via the following steps: | We will use OpenStack Heat to automate the deployment of the vIMS and test components, via the following steps: | ||
- | * Heat will call Nova to instantiate the required number of VMs, with Ubuntu as their base OS | + | * Heat will call Nova to instantiate the required number of VMs, with Ubuntu as their base OS, using a set of [[https://github.com/Metaswitch/clearwater-heat|Heat templates]] |
* Cloud-init will perform first-stage initialization of the VMs | * Cloud-init will perform first-stage initialization of the VMs | ||
* We will run [[https://docs.chef.io/chef_solo.html|chef-solo]] on each node to pull in the required Clearwater packages and configure them | * We will run [[https://docs.chef.io/chef_solo.html|chef-solo]] on each node to pull in the required Clearwater packages and configure them | ||
Line 33: | Line 33: | ||
Once the VMs are all up and running, Clearwater-live-test will provision a small number of subscribers on the vIMS. Essentially this involves injecting pairs of SIP identity and password into the Homestead and Homer repositories via the API exposed by Ellis. | Once the VMs are all up and running, Clearwater-live-test will provision a small number of subscribers on the vIMS. Essentially this involves injecting pairs of SIP identity and password into the Homestead and Homer repositories via the API exposed by Ellis. | ||
- | Clearwater-live test will then perform a set of functional tests. At the least, these tests will include: | + | Clearwater-live-test will then perform a set of functional tests. At the least, these tests will include: |
* Performing registration of SIP endpoints with the vIMS | * Performing registration of SIP endpoints with the vIMS | ||
* Establishing SIP dialogs between and among pairs of SIP endpoints | * Establishing SIP dialogs between and among pairs of SIP endpoints | ||
- | The test framework will report success or failure of these tests. | + | Finally, Clearwater-live-test will report success or failure of these tests. |