Source Code Repositories
========================

- VOLTHA source code is hosted on Gerrit and Github.

.. list-table:: Gerrit
   :widths: 20, 20, 105
   :header-rows: 1

   * - GERRIT Repository
     - GIT Repository
     - Description
   * - :vol-ger:`bbsim gerrit<bbsim>`
     - :vol-git:`bbsim git<bbsim>`
     - BroadBand Simulator (BBSim) is a tool to simulate a PON network with OLTs, ONUs and RGs.
   * - :vol-ger:`bbsim-sadis-server gerrit<bbsim-sadis-server>`
     - :vol-git:`bbsim-sadis-server git<bbsim-sadis-server>`
     - BBSim Sadis Server.
       Designed to aggregate Sadis entries from multiple BBSim instances running on the same kubernetes cluster.
   * - :vol-ger:`voltha-core gerrit<voltha-go>`
     - :vol-git:`voltha-core git<voltha-go>`
     - Voltha Core
   * - :vol-ger:`voltha-openolt-adapter gerrit<voltha-openolt-adapter>`
     - :vol-git:`voltha-openolt-adapter git<voltha-openolt-adapter>`
     - Open OLT adapter
   * - :vol-ger:`voltha-openonu-adapter gerrit<voltha-openonu-adapter-go>`
     - :vol-git:`voltha-openonu-adapter git<voltha-openonu-adapter-go>`
     - Open ONU adapter
   * - :vol-ger:`omci-lib gerrit<omci-lib-go>`
     - :vol-git:`omci-lib git<omci-lib-go>`
     - OMCI Library
   * - :vol-ger:`voltha-cli gerrit<voltctl>`
     - :vol-git:`voltha-cli git<voltctl>`
     - A CLI tool for managing and operating VOLTHA components.
   * - :vol-ger:`voltha-ofagent gerrit<ofagent-go>`
     - :vol-git:`voltha-ofagent git<ofagent-go>`
     - OpenFlow management interface for Voltha
   * - :vol-ger:`voltha-onos gerrit<voltha-onos>`
     - :vol-git:`voltha-onos git<voltha-onos>`
     - VOLTHA ONOS Development Build Environment.
   * - :vol-ger:`voltha-lib gerrit<voltha-lib-go>`
     - :vol-git:`voltha-lib git<voltha-lib-go>`
     - Library for common VOLTHA functions
   * - :vol-ger:`voltha-protos gerrit<voltha-protos>`
     - :vol-git:`voltha-protos git<voltha-protos>`
     - Protobuf definitions for VOLTHA
   * - :vol-ger:`device-management-interface gerrit<device-management-interface>`
     - :vol-git:`device-management-interface git<device-management-interface>`
     - Device Management Interface
   * - :vol-ger:`voltha-helm-charts gerrit<voltha-helm-charts>`
     - :vol-git:`voltha-helm-charts git<voltha-helm-charts>`
     - Helm charts for deploying VOLTHA
   * - :vol-ger:`ci-management gerrit<ci-management>`
     - :vol-git:`ci-management git<ci-management>`
     - Configuration for the Jenkins testing infrastructure
   * - :vol-ger:`voltha-system-tests gerrit<voltha-system-tests>`
     - :vol-git:`voltha-system-tests git<voltha-system-tests>`
     - Automated test-suites to validate the stability/functionality of VOLTHA.
   * - :vol-ger:`pod-configs gerrit<pod-configs>`
     - :vol-git:`pod-configs git<pod-configs>`
     - Configuration files for VOLTHA labs
   * - :vol-ger:`voltha-docs gerrit<voltha-docs>`
     - :vol-git:`voltha-docs git<voltha-docs>`
     - VOLTHA Documentation
