Andrea Campanella | afc4653 | 2022-05-05 23:14:36 +0200 | [diff] [blame] | 1 | ================================= |
| 2 | Product Certification with VOLTHA |
| 3 | ================================= |
| 4 | |
| 5 | VOLTHA is part fo the `continuous certification program at ONF <https://opennetworking.org/continuous-certification-program/>`_. |
| 6 | You can see the currently certified products in the `ONF marketplace <https://opennetworking.org/marketplace/?_product_project=voltha>`_. |
| 7 | |
| 8 | The following document describes the procedure to include and certify an OLT or an ONU with VOLTHA. |
| 9 | The process of getting a product certified consists of several phases: |
| 10 | |
| 11 | - testing and validation with VOLTHA at the vendor premises |
| 12 | - showcase of successful integration with VOLTHA to the TST |
| 13 | - shipment and integration of the product (OLT/ONU) at a community lab (e.g. Berlin with DT) |
| 14 | - Creation of automated CI jobs in Jenkins that start nightly automation tests. |
| 15 | - Test maintenance. It's the Vendors and the VOLTHA community responsibility to maintain the created tests. |
| 16 | |
| 17 | Finally a brief Description of the device and a point of contact need to be sent to |
| 18 | `Michelle Roth @ ONF <michelle@opennetworking.org>`_ |
| 19 | to be showcased in the `marketplace <https://opennetworking.org/marketplace/?_product_project=voltha>`_ after successful verification. |
| 20 | |
| 21 | Once all these steps are completed the product will be certified for the next release of VOLTHA. |
| 22 | Let's describe each phase in detail. |
| 23 | |
| 24 | Vendor's premises Testing |
| 25 | ------------------------- |
| 26 | The first step is for the vendor to guarantee that the OLT or the ONU are VOLTHA compatible is complying got ONF's |
| 27 | automated sanity test. |
| 28 | To do so we suggest setting up a HW test pod according as described in the `physical setup guide <https://docs.voltha.org/master/overview/lab_setup.html>`_. |
| 29 | |
| 30 | Once the setup is running the next step is running the Sanity tests, as described in the `testing documentation <https://docs.voltha.org/master/voltha-system-tests/README.html#running-tests-on-physical-pod>`_. |
| 31 | If those pass the hardware is ready to be shown to the VOLTHA TST. |
| 32 | |
| 33 | Showcase to VOLTHA TST |
| 34 | ---------------------- |
| 35 | Once the OLT has passed tests in the Vendor lab it's ready to be showcased to the VOLTHA Technical Steering Team. |
| 36 | The request needs to be performed to the Technical TST leader or to `Timon Sloane <timon@opennetworking.org>`_ who will |
| 37 | forward the request appropriately. |
| 38 | During a scheduled TST meeting (Tuesday 8 AM PST) the vendor will showcase the OLT/ONU to the TST by starting from a |
| 39 | fresh VOLTHA instance, connecting the OLT and then performing the Sanity test. |
| 40 | With the test passing the TST will give approval for shipment of the device (ONU/OLT) to an ONF community lab. |
| 41 | |
| 42 | ONF's community lab integration |
| 43 | ------------------------------- |
| 44 | |
| 45 | Once the TST has given approval for device integration in VOLTHA nighly tests the Vendor needs to ship the device to |
| 46 | any one of the ONF community lab, including a wiring diagram (if needed) Currently there are two locations: |
| 47 | |
| 48 | - DT Office in Berlin, Germany. Address: Winterfeldtstraße 21, 10781 Berlin, Germany. Point of contact `Bjoern Nagel @ DT <NagelB@telekom.de>`_ |
| 49 | - Radisys Laboratory in Hilssboro, Oregon |
| 50 | |
| 51 | Once the OLT arrives the technicians will rack it and wire it according to the diagram shared. |
| 52 | For an OLT the NNI connection will be provided to the AGG switch and all the management will also be connected with |
| 53 | management IP assigned according to the network of the pod. |
| 54 | For an ONU it will be connected to one of the existing OLTs in the pod, according to space, |
| 55 | technology and topology requirements. |
| 56 | Once all the racking and wiring is complete the device will appear under the ONF network, accessible via VPN. |
| 57 | |
| 58 | Automated CI Jobs |
| 59 | ----------------- |
| 60 | Once the device in included in one of the community pods it's the responsibility of the vendor to integrate |
| 61 | it into the nightly VOLTHA tests. This process is done by submitting a series of patches to different repositories. |
| 62 | The process is different for ONUs and OLTs. |
| 63 | To create jenkins jobs see https://docs.voltha.org/master/testing/voltha_test_automation.html#hardware-or-physical-pod-jobs |
| 64 | |
| 65 | OLT |
| 66 | +++ |
| 67 | A new OLT needs a full new configuration, job and data. |
| 68 | The job can be created according to the desired workflow to be tested. Information can be found in the |
| 69 | `system tests information <https://docs.voltha.org/master/testing/voltha_test_automation.html#hardware-or-physical-pod-jobs>`_ |
| 70 | The required patches are: |
| 71 | |
| 72 | - ci-management. Creates the job that will run in jenkins. `Job Example <https://github.com/opencord/ci-management/blob/master/jjb/voltha-test/voltha-certification.yaml>`_ |
| 73 | - pod configs. Inserts information about the OLT and target ONUs data. `Data example <https://github.com/opencord/pod-configs/blob/master/deployment-configs/menlo-certification-pod-radisys-1600g-DT.yaml>`_ |
| 74 | and `kubernetes example <https://github.com/opencord/pod-configs/blob/master/kubernetes-configs/menlo-certification-pod-radisys-1600g.conf>`_ |
| 75 | - voltha-system-tests. Adds the sadis configuration for the OLT and the ONU. `Sadis Example <https://github.com/opencord/voltha-system-tests/blob/master/tests/data/menlo-certification-pod-radisys-1600g-sadis-DT.json>`_ |
| 76 | |
| 77 | Once these are created and merged the job will appear on jenkins and run accordingly. |
| 78 | |
| 79 | ONU |
| 80 | +++ |
| 81 | A new ONU it's attached to an existing OLT, so just the information for that ONU needs to be added to the proper |
| 82 | OLT files. |
| 83 | |
| 84 | The required patches are: |
| 85 | |
| 86 | - pod configs. Inserts information about the ONU into an existing pod. `Info and Target example <https://github.com/opencord/pod-configs/blob/master/deployment-configs/menlo-certification-pod-radisys-1600g-DT.yaml>`_ |
| 87 | - voltha-system-tests. Adds the sadis configuration for the ONU. Example `Sadis ONU example <https://github.com/opencord/voltha-system-tests/blob/master/tests/data/menlo-certification-pod-radisys-1600g-sadis-DT.json>`_ |
| 88 | |
| 89 | Job maintenance |
| 90 | --------------- |
| 91 | |
| 92 | It's the responsibility of the Vendor, the VOLTHA TST and the community at large to mantain, manage and update the job |
| 93 | to make sure the OLT gets certified for each of the following VOLTHA releases. |
| 94 | |
| 95 | |
| 96 | |
| 97 | ONF Contacts |
| 98 | ------------ |
| 99 | For any further information please contact: |
| 100 | `Timon Sloane <timon@opennetworking.org>`_ |
| 101 | `Michelle Roth <michelle@opennetworking.org>`_ |