diff --git a/VERSION b/VERSION
index ee4646b..f9595dd 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.12.43
+2.12.44
diff --git a/resources/docker.rst b/resources/docker.rst
index 4e4c977..98c38ef 100644
--- a/resources/docker.rst
+++ b/resources/docker.rst
@@ -5,85 +5,29 @@
 - Images are built by jenkins then consumed as dogfood by testing.
 
 .. list-table:: VOLTHA Docker Images
-   :widths: 20, 5, 40
+   :widths: 20, 110
    :header-rows: 1
 
    * - Image
-     - Date
      - Description
    * - `Search=voltha* <https://hub.docker.com/search?q=voltha>`_
-     -
      - All Docker images with prefix='voltha'
-                      https://hub.docker.com/r/voltha/bbsim
-   * - `voltha/bbsim <https://hub.docker.com/r/voltha/bbsim>`_
-     -
-     -
-   * - `voltha/bbsim-sadis-server <https://hub.docker.com/r/voltha/bbsim-sadis-server>`_
-     -
-     -
-   * - `volthacore/voltha-rw-core <https://hub.docker.com/r/volthacore/voltha-rw-core>`_
-     -
-     -
-   * - `voltha/voltha-adapter-simulated-olt <https://hub.docker.com/r/voltha/voltha-adapter-simulated-olt>`_
-     -
-     -
-   * - `voltha/voltha-adapter-simulated-onu <https://hub.docker.com/r/voltha/voltha-adapter-simulated-onu>`_
-     -
-     -
-   * - `voltha/voltha-afrouter <https://hub.docker.com/r/voltha/voltha-afrouter>`_
-     -
-     -
-   * - `voltha/voltha-afrouterd <https://hub.docker.com/r/voltha/voltha-afrouterd>`_
-     -
-     -
-   * - `voltha/voltha-bbsim <https://hub.docker.com/r/voltha/voltha-bbsim>`_
-     -
-     -
-   * - `voltha/voltha-ci-tools <https://hub.docker.com/r/voltha/voltha-ci-tools>`_
-     -
-     -
-   * - `voltha/voltha-cli <https://hub.docker.com/r/voltha/voltha-cli>`_
-     -
-     -
-   * - `voltha/voltha-dashd <https://hub.docker.com/r/voltha/voltha-dashd>`_
-     -
-     -
-   * - `voltha/voltha-envoy <https://hub.docker.com/r/voltha/voltha-envoy>`_
-     -
-     -
-   * - `voltha/voltha-netconf <https://hub.docker.com/r/voltha/voltha-netconf>`_
-     -
-     -
-   * - `voltha/voltha-ofagent-go <https://hub.docker.com/r/voltha/voltha-ofagent-go>`_
-     -
-     -
-   * - `voltha/voltha-ofagent <https://hub.docker.com/r/voltha/voltha-ofagent>`_
-     -
-     -
-   * - `voltha/voltha-onos <https://hub.docker.com/r/voltha/voltha-onos>`_
-     -
-     -
-   * - `voltha/voltha-openolt-adapter <https://hub.docker.com/r/voltha/voltha-openolt-adapter>`_
-     -
-     -
-   * - `voltha/voltha-openonu-adapter-go <https://hub.docker.com/r/voltha/voltha-openonu-adapter-go>`_
-     -
-     -
-   * - `voltha/voltha-ponsim <https://hub.docker.com/r/voltha/voltha-ponsim>`_
-     -
-     -
-   * - `voltha/voltha-ro-core <https://hub.docker.com/r/voltha/voltha-ro-core>`_
-     -
-     -
-   * - `voltha/voltha-rw-core <https://hub.docker.com/r/voltha/voltha-rw-core>`_
-     -
-     -
-   * - `voltha/voltha-shovel <https://hub.docker.com/r/voltha/voltha-shovel>`_
-     -
-     -
-   * - `voltha/voltha-tester <https://hub.docker.com/r/voltha/voltha-tester>`_
-     -
-     -
-   * - `voltha/voltha-voltha <https://hub.docker.com/r/voltha/voltha-voltha>`_
-     -
-     -
+   * - `bbsim <:vol-docker:'bbsim'>`_
+     - BroadBand Simulator (BBSim) is a tool to simulate a PON network with OLTs, ONUs and RGs.
+   * - `bbsim-sadis-server <:vol-docker:'bbsim-sadis-server'>`_
+     - BBSim Sadis Server.
+       Designed to aggregate Sadis entries from multiple BBSim instances running on the same kubernetes cluster.
+   * - `voltha-rw-core <:vol-docker:'voltha-rw-core'>`_
+     - Voltha Core
+   * - `voltha-openolt-adapter <:vol-docker:'voltha-openolt-adapter'>`_
+     - Open OLT adapter
+   * - `voltha-openonu-adapter-go <:vol-docker:'voltha-openonu-adapter-go'>`_
+     - Open ONU adapter
+   * - `voltha-ci-tools <:vol-docker:'voltha-ci-tools'>`_
+     - Versioned containers for running CI process on VOLTHA codebase
+   * - `voltha-cli <:vol-docker:'voltha-cli'>`_
+     - Provides SSH access to the VOLTHA CLI
+   * - `voltha-ofagent-go <:vol-docker:'voltha-ofagent-go'>`_
+     - OpenFlow management interface for Voltha
+   * - `voltha-onos <:vol-docker:'voltha-onos'>`_
+     - Provides a version of ONOS with the required VOLTHA control plane applications installed
diff --git a/resources/repositories.rst b/resources/repositories.rst
index 5825435..a11eeb4 100644
--- a/resources/repositories.rst
+++ b/resources/repositories.rst
@@ -1,72 +1,66 @@
 Source Code Repositories
 ========================
 
-- VOLTHA images released to and hosted on Docker.
-- Images are built by jenkins then consumed as dogfood by testing.
+- VOLTHA source code is hosted on Gerrit and Github.
 
 .. list-table:: Gerrit
-   :widths: 40, 70
+   :widths: 20, 20, 105
    :header-rows: 1
 
-   * - Repository
+   * - GERRIT Repository
+     - GIT Repository
      - Description
-   * - `voltha/bbsim <https://gerrit.opencord.org/plugins/gitiles/voltha/bbsim>`_
-     -
-   * - `voltha/bbsim-sadis-server <https://gerrit.opencord.org/plugins/gitiles/voltha/bbsim-sadis-server>`_
-     -
-   * - `volthacore/voltha-rw-core <https://gerrit.opencord.org/plugins/gitiles/volthacore/voltha-rw-core>`_
-     -
-   * - `voltha/voltha-adapter-simulated-olt <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-adapter-simulated-olt>`_
-     -
-   * - `voltha/voltha-adapter-simulated-onu <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-adapter-simulated-onu>`_
-     -
-   * - `voltha/voltha-afrouter <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-afrouter>`_
-     -
-   * - `voltha/voltha-afrouterd <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-afrouterd>`_
-     -
-   * - `voltha/voltha-bbsim <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-bbsim>`_
-     -
-   * - `voltha/voltha-ci-tools <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-ci-tools>`_
-     -
-   * - `voltha/voltha-cli <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-cli>`_
-     -
-   * - `voltha/voltha-dashd <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-dashd>`_
-     -
-   * - `voltha/voltha-envoy <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-envoy>`_
-     -
-   * - `voltha/voltha-netconf <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-netconf>`_
-     -
-   * - `voltha/voltha-ofagent-go <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-ofagent-go>`_
-     -
-   * - `voltha/voltha-ofagent <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-ofagent>`_
-     -
-   * - `voltha/voltha-onos <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-onos>`_
-     -
-   * - `voltha/voltha-openolt-adapter <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-openolt-adapter>`_
-     -
-   * - `voltha/voltha-openonu-adapter <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-openonu-adapter>`_
-     -
-   * - `voltha/voltha-openonu-adapter-go <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-openonu-adapter-go>`_
-     -
-   * - `voltha/voltha-ponsim <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-ponsim>`_
-     -
-   * - `voltha/voltha-ro-core <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-ro-core>`_
-     -
-   * - `voltha/voltha-rw-core <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-rw-core>`_
-     -
-   * - `voltha/voltha-shovel <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-shovel>`_
-     -
-   * - `voltha/voltha-tester <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-tester>`_
-     -
-   * - `voltha/voltha-voltha <https://gerrit.opencord.org/plugins/gitiles/voltha/voltha-voltha>`_
-     -
+   * - `bbsim gerrit <:vol-ger:'bbsim'>`_
+     - `bbsim git <:vol-git:'bbsim'>`_
+     - BroadBand Simulator (BBSim) is a tool to simulate a PON network with OLTs, ONUs and RGs.
+   * - `bbsim-sadis-server gerrit <:vol-ger:'bbsim-sadis-server'>`_
+     - `bbsim-sadis-server git <:vol-git:'bbsim-sadis-server'>`_
+     - BBSim Sadis Server.
+       Designed to aggregate Sadis entries from multiple BBSim instances running on the same kubernetes cluster.
+   * - `voltha-core gerrit <:vol-ger:'voltha-go'>`_
+     - `voltha-core git <:vol-git:'voltha-go'>`_
+     - Voltha Core
+   * - `voltha-openolt-adapter gerrit <:vol-ger:'voltha-openolt-adapter'>`_
+     - `voltha-openolt-adapter git <:vol-git:'voltha-openolt-adapter'>`_
+     - Open OLT adapter
+   * - `voltha-openonu-adapter gerrit <:vol-ger:'voltha-openonu-adapter-go'>`_
+     - `voltha-openonu-adapter git <:vol-git:'voltha-openonu-adapter-go'>`_
+     - Open ONU adapter
+   * - `omci-lib gerrit <:vol-ger:'omci-lib-go'>`_
+     - `omci-lib git <:vol-git:'omci-lib-go'>`_
+     - OMCI Library
+   * - `voltha-cli gerrit <:vol-ger:'voltctl'>`_
+     - `voltha-cli git <:vol-git:'voltctl'>`_
+     - A CLI tool for managing and operating VOLTHA components.
+   * - `voltha-ofagent gerrit <:vol-ger:'ofagent-go'>`_
+     - `voltha-ofagent git <:vol-git:'ofagent-go'>`_
+     - OpenFlow management interface for Voltha
+   * - `voltha-onos gerrit <:vol-ger:'voltha-onos'>`_
+     - `voltha-onos git <:vol-git:'voltha-onos'>`_
+     - VOLTHA ONOS Development Build Environment.
+   * - `voltha-lib gerrit <:vol-ger:'voltha-lib-go'>`_
+     - `voltha-lib git <:vol-git:'voltha-lib-go'>`_
+     - Library for common VOLTHA functions
+   * - `voltha-protos gerrit <:vol-ger:'voltha-protos'>`_
+     - `voltha-protos git <:vol-git:'voltha-protos'>`_
+     - Protobuf definitions for VOLTHA
+   * - `device-management-interface gerrit <:vol-ger:'device-management-interface'>`_
+     - `device-management-interface git <:vol-git:'device-management-interface'>`_
+     - Device Management Interface
+   * - `voltha-helm-charts gerrit <:vol-ger:'voltha-helm-charts'>`_
+     - `voltha-helm-charts git <:vol-git:'voltha-helm-charts'>`_
+     - Helm charts for deploying VOLTHA
+   * - `ci-management gerrit <:vol-ger:'ci-management'>`_
+     - `ci-management git <:vol-git:'ci-management'>`_
+     - Configuration for the Jenkins testing infrastructure
+   * - `voltha-system-tests gerrit <:vol-ger:'voltha-system-tests'>`_
+     - `voltha-system-tests git <:vol-git:'voltha-system-tests'>`_
+     - Automated test-suites to validate the stability/functionality of VOLTHA.
+   * - `pod-configs gerrit <:vol-ger:'pod-configs'>`_
+     - `pod-configs git <:vol-git:'pod-configs'>`_
+     - Configuration files for VOLTHA labs
+   * - `voltha-docs gerrit <:vol-ger:'voltha-docs'>`_
+     - `voltha-docs git <:vol-git:'voltha-docs'>`_
+     - VOLTHA Documentation
 
 
-.. list-table:: Github
-   :widths: 40, 70
-   :header-rows: 1
-
-   * - Repository
-     - Description
-   * - filler
-     - filler
