diff --git a/VERSION b/VERSION
index 1700434..f9595dd 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.12.45-dev2
+2.12.44
diff --git a/howto/code/voltha-protos.rst b/howto/code/voltha-protos.rst
index 9420b0c..10834db 100644
--- a/howto/code/voltha-protos.rst
+++ b/howto/code/voltha-protos.rst
@@ -13,6 +13,7 @@
 -------------------------
 
 .. code:: bash
+
     git clone ssh://gerrit.opencord.org:29418/voltha-protos.git
     cd voltha-protos
     vi ...
@@ -106,6 +107,7 @@
   - From requirements.txt file entries, pip install failing versioned package.
 
 .. code:: bash
+
    :caption: Pip install debugging
 
    # Debug using virtualenv
@@ -123,6 +125,7 @@
 ^^^^^^^^^^^^^
 
 .. code:: bash
+
    :caption: Include missing header
 
    mkdir -p include
diff --git a/howto/release/components/onos_components.rst b/howto/release/components/onos_components.rst
index 0bc27bb..47d70fa 100644
--- a/howto/release/components/onos_components.rst
+++ b/howto/release/components/onos_components.rst
@@ -96,7 +96,7 @@
     - In the top right search for last part of the app name (eg: olt)
     - Enable checkbox for the versioned package (status: closed).
     - Click release (top left bar, small button)
-    - `Wait until artifacts are published <https://search.maven.org/search?q=g:org.opencord>`_
+    - `Wait until artifacts are published <https://central.sonatype.com/search?q=g:org.opencord&smo=true>`_
 
 - Release all other apps/components (dependency hierarch):
 
@@ -109,4 +109,3 @@
   - Verify expected dependent version has been released.
   - Modify pom.xml, update dep version(s) from x.z.y-SNAPSHOT to x.y.z
   - Commit and submit.
-
diff --git a/operations/software-upgrade.rst b/operations/software-upgrade.rst
index b7d27dc..0757dd7 100644
--- a/operations/software-upgrade.rst
+++ b/operations/software-upgrade.rst
@@ -76,7 +76,7 @@
 After changes in the code of ONOS apps are made and verified the following steps are needed:
 
 #. | obtain the .oar of the app, either via a local build with `mvn clean install` or, if the code has been upstreamed
-   | by downloading it from `maven central <https://search.maven.org/search?q=g:org.opencord>`_ or sonatype.
+   | by downloading it from `maven central <https://central.sonatype.com/search?q=g:org.opencord&smo=true>`_ or sonatype.
 #. Delete the old version of the ONOS app.
 #. Upload install and activate the new `oar` file.
 
diff --git a/overview/contributing/copyright.rst b/overview/contributing/copyright.rst
index 6d9eae7..08dabb0 100644
--- a/overview/contributing/copyright.rst
+++ b/overview/contributing/copyright.rst
@@ -9,6 +9,7 @@
   - Copyright notice should be dated to the last year sources were modified.
 
 .. code-block:: BASH
+
    :caption: Project Copyright Notice
 
    # -----------------------------------------------------------------------
@@ -39,4 +40,4 @@
 - `ONF CLA Information <https://wiki.opencord.org>`_
 - `Contributing License Agreement Manager <https://cla.opennetworking.org/>`_
 
-`Copyrights <copyright/copyright>`_
+:doc:`Copyrights <copyright/copyright>`
diff --git a/overview/release_process.rst b/overview/release_process.rst
index ae4d6e1..093842e 100644
--- a/overview/release_process.rst
+++ b/overview/release_process.rst
@@ -35,7 +35,7 @@
 
 If a repository is branched the :doc:`.gitreview <howto/release/post-release/gitreview.html>`
 file needs to be changed, adding `defaultorigin=voltha-X.Y` at the end.
-     
+
 .. note::
     Given the dependency of the containers on the protos and the library, if the voltha-protos and/or voltha-lib-go or
     omci-lib-go need to be released, it should be done first and then updated in the components:
@@ -116,8 +116,8 @@
 
 5. Wait until the artifacts are published
 
-   - https://search.maven.org/search?q=g:org.opencord
-   - https://search.maven.org/artifact/org.opencord/dhcpl2relay/2.9.0/pom
+   - https://central.sonatype.com/search?q=g:org.opencord&smo=true
+   - https://central.sonatype.com/artifact/org.opencord/dhcpl2relay/2.9.0?smo=true
 
 6. Iterate through apps:
 
diff --git a/release_notes/voltha_2.12.rst b/release_notes/voltha_2.12.rst
index dc35693..b8c52e4 100644
--- a/release_notes/voltha_2.12.rst
+++ b/release_notes/voltha_2.12.rst
@@ -19,45 +19,45 @@
 
    * - Jira
      - Description
-   * - `VOL-4949 <:jira-browse:/VOL-4949>`_
+   * - :jira-browse:`VOL-4949`
      - Introduce DEVICE_BUSY reason in the UploadDebugInfoStatus DMI message
-   * - `VOL-4783 <:jira-browse:/VOL-4783>`_
+   * - :jira-browse:`VOL-4783 <VOL-4783>`
      - Introduce UploadDebugInformation RPC in DMI
-   * - `VOL-4788 <:jira-browse:/VOL-4788>`_
+   * - :jira-browse:`VOL-4788 <VOL-4788>`
      - Create package in voltha-libs-go for support of prometheus counters in voltha
-   * - `VOL-4782 <:jira-browse:/VOL-4782>`_
+   * - :jira-browse:`VOL-4782 <VOL-4782>`
      - Enchance DMI to include DataValueType in Events and also clarification for Transceiver Events
-   * - `VOL-4878 <:jira-browse:/VOL-4878>`_
+   * - :jira-browse:`VOL-4878 <VOL-4878>`
      - Improve the voltha-protos extensions interface to get the Rx Power levels from an OLT
-   * - `VOL-4877 <:jira-browse:/VOL-4877>`_
+   * - :jira-browse:`VOL-4877 <VOL-4877>`
      - Enhance DMI interface to be able to retrieve the Tx Power on the Transceivers
-   * - `VOL-4958 <:jira-browse:/VOL-4958>`_
+   * - :jira-browse:`VOL-4958 <VOL-4958>`
      - Introduce protobuf dependencies in DMI for the python testing framework
-   * - `VOL-4952 <:jira-browse:/VOL-4952>`_
+   * - :jira-browse:`VOL-4952 <VOL-4952>`
      - Add retry client options to the grpc library in voltha-lib-go
-   * - `VOL-4983 <:jira-browse:/VOL-4983>`_
+   * - :jira-browse:`VOL-4983 <VOL-4983>`
      - voltctl list device meters with traffic shaping info
-   * - `VOL-5043 <:jira-browse:/VOL-5043>`_
+   * - :jira-browse:`VOL-5043 <VOL-5043>`
      - Enhance DMI interface to have CPU/Mem/Disk usage alarms and also NTP synch alarms
-   * - `VOL-4444 <:jira-browse:/VOL-4444>`_
+   * - :jira-browse:`VOL-4444 <VOL-4444>`
      - VOL-4340 Create API for profile in voltha rw-core for profile operations
-   * - `VOL-4436 <:jira-browse:/VOL-4436>`_
+   * - :jira-browse:`VOL-4436 <VOL-4436>`
      - VOL-4340 Create proto files for sip profile and voip service
-   * - `VOL-5046 <:jira-browse:/VOL-5046>`_
+   * - :jira-browse:`VOL-5046 <VOL-5046>`
      - Reuse grpc clinet connection in grpc clinet lib
-   * - `VOL-4972 <:jira-browse:/VOL-4972>`_
+   * - :jira-browse:`VOL-4972 <VOL-4972>`
      - Changes in openolt adapter to reconcile onu device and pon states
-   * - `VOL-4953 <:jira-browse:/VOL-4953>`_
+   * - :jira-browse:`VOL-4953 <VOL-4953>`
      - Retry for grpc towards core in openolt adapter
-   * - `VOL-5216 <:jira-browse:/VOL-5216>`_
+   * - :jira-browse:`VOL-5216 <VOL-5216>`
      - Handle transition in core during device reboot
-   * - `VOL-5197 <:jira-browse:/VOL-5197>`_
+   * - :jira-browse:`VOL-5197 <VOL-5197>`
      - In DMI add QSFP-DD as a form factor for the TransceiverAttributes
-   * - `VOL-4950 <:jira-browse:/VOL-4950>`_
+   * - :jira-browse:`VOL-4950 <VOL-4950>`
      - Move the component_uuid from EventsConfigurationRequest to EventCfg of DMI interface
-   * - `VOL-5241 <:jira-browse:/VOL-5241>`_
+   * - :jira-browse:`VOL-5241 <VOL-5241>`
      - Add Zyxel to ONU Vendor list
-   * - `VOL-5233 <:jira-browse:/VOL-5233>`_
+   * - :jira-browse:`VOL-5233 <VOL-5233>`
      - VOL-5206 Change "ONU_DYING_GASP_EVENT" check to "ONU_DYING_GASP_RAISE_EVENT" in Alarm tests
 
 Bug Fixes
@@ -71,57 +71,57 @@
      - Description
    * -
      -
-   * - `VOL-4926 <:jira-browse:/VOL-4926>`_
+   * - :jira-browse:`VOL-4926 <VOL-4926>`
      - VOL-4836 kail - godownloader.sh no longer available: alternative needed
-   * - `VOL-4934 <:jira-browse:/VOL-4934>`_
+   * - :jira-browse:`VOL-4934 <VOL-4934>`
      - omci-lib-go: MIC (AES-128) calculation does not properly support the Extended Message Set
-   * - `VOL-4927 <:jira-browse:/VOL-4927>`_
+   * - :jira-browse:`VOL-4927 <VOL-4927>`
      - omci-lib-go: ONT-G ME alarms are not supposed
-   * - `VOL-4929 <:jira-browse:/VOL-4929>`_
+   * - :jira-browse:`VOL-4929 <VOL-4929>`
      - openonuAdapterGo - memory leak seen in long term tests
-   * - `VOL-4931 <:jira-browse:/VOL-4931>`_
+   * - :jira-browse:`VOL-4931 <VOL-4931>`
      - openoltAdapter: memory leak seen in long term tests
-   * - `VOL-4984 <:jira-browse:/VOL-4984>`_
+   * - :jira-browse:`VOL-4984 <VOL-4984>`
      - voltctl log level list does not display the component open-flow-agent
-   * - `VOL-5105 <:jira-browse:/VOL-5105>`_
+   * - :jira-browse:`VOL-5105 <VOL-5105>`
      - cli label missing for pon ports in BBSIM
-   * - `VOL-5193 <:jira-browse:/VOL-5193>`_
+   * - :jira-browse:`VOL-5193 <VOL-5193>`
      - OpenOnuAdapterGo: MIB sync handling fails , when the MIB template has NULL terminated strings.
-   * - `VOL-5187 <:jira-browse:/VOL-5187>`_
+   * - :jira-browse:`VOL-5187 <VOL-5187>`
      - openolt adaptor should not set discovery in progress for a given onu in case the particular discovery request fails
-   * - `VOL-5165 <:jira-browse:/VOL-5165>`_
+   * - :jira-browse:`VOL-5165 <VOL-5165>`
      - Openoltagent getting crashed when ONT is rebooted
-   * - `VOL-5172 <:jira-browse:/VOL-5172>`_
+   * - :jira-browse:`VOL-5172 <VOL-5172>`
      - Olt adaptor trying to add flows to the devices even when the parent olt is not up
-   * - `VOL-5104 <:jira-browse:/VOL-5104>`_
+   * - :jira-browse:`VOL-5104 <VOL-5104>`
      - BBSIM crashed when adding flows
-   * - `VOL-4993 <:jira-browse:/VOL-4993>`_
+   * - :jira-browse:`VOL-4993 <VOL-4993>`
      - Upon OLT reboot, OLT's OPERSTATUS is observed as "rebooted" and no ONTs are discovered
-   * - `VOL-4798 <:jira-browse:/VOL-4798>`_
+   * - :jira-browse:`VOL-4798 <VOL-4798>`
      - voltctl - log configuration for multiple stacks doesn't work
-   * - `VOL-5212 <:jira-browse:/VOL-5212>`_
+   * - :jira-browse:`VOL-5212 <VOL-5212>`
      - Unable to fetch PON RX power for all the ONTs on a PON port.
-   * - `VOL-5215 <:jira-browse:/VOL-5215>`_
+   * - :jira-browse:`VOL-5215 <VOL-5215>`
      - After rebooting ONUs the BBSIM OLT is crashing
-   * - `VOL-5208 <:jira-browse:/VOL-5208>`_
+   * - :jira-browse:`VOL-5208 <VOL-5208>`
      - onu adapter will go into race and crash if delete-device and delete gemport from olt adapter happens at once
-   * - `VOL-5210 <:jira-browse:/VOL-5210>`_
+   * - :jira-browse:`VOL-5210 <VOL-5210>`
      - Open onu adapter crashes when processing requests and device is deleted
-   * - `VOL-5107 <:jira-browse:/VOL-5107>`_
+   * - :jira-browse:`VOL-5107 <VOL-5107>`
      - forced crash during child device detected may result in duplicate device
-   * - `VOL-5219 <:jira-browse:/VOL-5219>`_
+   * - :jira-browse:`VOL-5219 <VOL-5219>`
      - in case voltha core goes down before it gets a chance to fire reconcile to the adaptors it should retrigger the reconcile process once it comes back up
-   * - `VOL-5175 <:jira-browse:/VOL-5175>`_
+   * - :jira-browse:`VOL-5175 <VOL-5175>`
      - OLT device ports list in ONOS is empty after rebooting the OLT
-   * - `VOL-5195 <:jira-browse:/VOL-5195>`_
+   * - :jira-browse:`VOL-5195 <VOL-5195>`
      - Missing ANI-G Signal Fail and Signal Degrade alarm notification
-   * - `VOL-5209 <:jira-browse:/VOL-5209>`_
+   * - :jira-browse:`VOL-5209 <VOL-5209>`
      - Open onu adapter crashes during delete device
-   * - `VOL-5249 <:jira-browse:/VOL-5249>`_
+   * - :jira-browse:`VOL-5249 <VOL-5249>`
      - error loading onos image in voltha-onos-sanity_test
-   * - `VOL-5236 <:jira-browse:/VOL-5236>`_
+   * - :jira-browse:`VOL-5236 <VOL-5236>`_
      - onu adapter should gracefully reset vlan config fsm on onu down
-   * - `VOL-5223 <:jira-browse:/VOL-5223>`_
+   * - :jira-browse:`VOL-5223 <VOL-5223>`
      - OpenOnuAdapterGo: Alarm Mgr has to handle unconfigured MEs responses from ONT during Alarm Audit.
 
 
@@ -134,7 +134,7 @@
 
    * - Jira
      - Description
-   * - `VOL-4829 <:jira-browse:/VOL-4829>`_
+   * - :jira-browse:`VOL-4829 <VOL-4829>`
      - openonuAdapterGo: Robustness - Test of reconciling openonu-adapter with continuous traffic at real HW
 
 
@@ -240,92 +240,92 @@
      -
      -
    * - `aaa <https://gerrit.opencord.org/gitweb?p=aaa.git;a=summary>`_
-     - `2.11.0 <:mvn-cord:aaai/2.11.0>`__
-     - `X <:mvn-cord:aaa-api/2.11.0>`__
-     - `X <:mvn-cord:aaa-app/2.11.0>`__
-     - `X <:mvn-cord:aaa/2.11.0>`__
-     - `X <:vol-ger:/aaa/+/refs/tags/2.11.0>`__
-     - `X <:vol-git:/aaa/releases/tag/2.11.0>`__
+     - :mvn-cord:`2.11.0 <aaai/2.11.0>`_
+     - :mvn-cord:`X <aaa-api/2.11.0>`_
+     - :mvn-cord:`X <aaa-app/2.11.0>`_
+     - :mvn-cord:`X <aaa/2.11.0>`_
+     - :vol-ger:`X </aaa/+/refs/tags/2.11.0>`_
+     - :vol-git:`X </aaa/releases/tag/2.11.0>`_
      -
    * - `bng <https://gerrit.opencord.org/gitweb?p=bng.git;a=summary>`__
-     - `2.5.1 <:mvn-cord:/bng/2.5.1>`__
-     - `X <:mvn-cord:/bng-api/2.5.1>`__
-     - `X <:mvn-cord:/bng-app/2.5.1>`__
-     - `X <:mvn-cord:/bng/2.5.1>`__
-     - `X <:vol-ger:/bng/+/refs/tags/2.5.1>`__
-     - `X <:vol-git:/bng/releases/tag/2.5.1>`__
+     - :mvn-cord:`2.5.1 </bng/2.5.1>`_
+     - :mvn-cord:`X </bng-api/2.5.1>`_
+     - :mvn-cord:`X </bng-app/2.5.1>`_
+     - :mvn-cord:`X </bng/2.5.1>`_
+     - :vol-ger:`X </bng/+/refs/tags/2.5.1>`_
+     - :vol-git:`X </bng/releases/tag/2.5.1>`_
      -
    * - `dhcpl2relay <https://gerrit.opencord.org/gitweb?p=dhcpl2relay.git;a=summary>`__
-     - `2.11.0 <:mvn-cord:/dhcpl2relay/2.11.0>`__
-     - `X <:mvn-cord:/dhcpl2relay-api/2.11.0>`__
-     - `X <:mvn-cord:/dhcpl2relay-app/2.11.0>`__
-     - `X <:mvn-cord:/dhcpl2relay>`__
-     - `X <:vol-ger:/dhcpl2relay/+/refs/tags/2.11.0>`__
-     - `X <:vol-git:/dhcpl2relay/releases/tag/2.11.0>`__
+     - :mvn-cord:`2.11.0 </dhcpl2relay/2.11.0>`_
+     - :mvn-cord:`X </dhcpl2relay-api/2.11.0>`_
+     - :mvn-cord:`X </dhcpl2relay-app/2.11.0>`_
+     - :mvn-cord:`X </dhcpl2relay>`_
+     - :vol-ger:`X </dhcpl2relay/+/refs/tags/2.11.0>`_
+     - :vol-git:`X </dhcpl2relay/releases/tag/2.11.0>`_
      -
    * - `igmpproxy <https://gerrit.opencord.org/gitweb?p=igmpproxy.git;a=summary>`__
-     - `2.9.0 <:mvn-cord:/onos-app-igmpproxy/2.9.0>`__
-     - `X <:mvn-cord:/onos-app-igmpproxy-api/2.9.0>`__
-     - `X <:mvn-cord:/onos-app-igmpproxy-app/2.9.0>`__
-     - `X <:mvn-cord:/onos-app-igmpproxy/2.9.0>`__
-     - `X <:vol-ger:/igmpproxy/+/refs/tags/2.9.0>`__
-     - `X <:vol-git:/igmpproxy/releases/tag/2.9.0>`__
+     - :mvn-cord:`2.9.0 </onos-app-igmpproxy/2.9.0>`_
+     - :mvn-cord:`X </onos-app-igmpproxy-api/2.9.0>`_
+     - :mvn-cord:`X </onos-app-igmpproxy-app/2.9.0>`_
+     - :mvn-cord:`X </onos-app-igmpproxy/2.9.0>`_
+     - :vol-ger:`X </igmpproxy/+/refs/tags/2.9.0>`_
+     - :vol-git:`X </igmpproxy/releases/tag/2.9.0>`_
      -
    * - `kafka <https://gerrit.opencord.org/gitweb?p=kafka-onos.git;a=summary>`__
-     - `2.13.2 <:mvn-cord:/kafka/2.13.2>`__
-     - `X <:mvn-cord:/kafka-api/2.13.2>`__
-     - `X <:mvn-cord:/kafka-app/2.13.2>`__
-     - `X <:mvn-cord:/kafka/2.13.2>`__
-     - `X <:vol-ger:/kafka-onos/+/refs/tags/2.13.2>`__
-     - `X <:vol-git:/kafka-onos/releases/tag/2.13.2>`__
+     - :mvn-cord:`2.13.2 </kafka/2.13.2>`_
+     - :mvn-cord:`X </kafka-api/2.13.2>`_
+     - :mvn-cord:`X </kafka-app/2.13.2>`_
+     - :mvn-cord:`X </kafka/2.13.2>`_
+     - :vol-ger:`X </kafka-onos/+/refs/tags/2.13.2>`_
+     - :vol-git:`X </kafka-onos/releases/tag/2.13.2>`_
      - ``N``
-   * - `maclearner <:vol-ger:/mac-learning>`__
-     - `1.2.3 <:mvn-cord:/maclearner/1.2.3>`__
-     - `X <:mvn-cord:/maclearner-api/1.2.3>`__
-     - `X <:mvn-cord:/maclearner-app/1.2.3>`__
-     - `X <:mvn-cord:/maclearner>`__
-     - `X <:vol-ger:/mac-learning/+/refs/tags/1.2.3>`__
-     - `X <:vol-git:/mac-learning/releases/tag/1.2.3>`__, `T <:vol-git:/mac-learning/tree/1.2.3>`__
+   * - :vol-ger:`maclearner </mac-learning>`_
+     - :mvn-cord:`1.2.3 </maclearner/1.2.3>`_
+     - :mvn-cord:`X </maclearner-api/1.2.3>`_
+     - :mvn-cord:`X </maclearner-app/1.2.3>`_
+     - :mvn-cord:`X </maclearner>`_
+     - :vol-ger:`X </mac-learning/+/refs/tags/1.2.3>`_
+     - :vol-git:`X </mac-learning/releases/tag/1.2.3>`__, :vol-git:`T </mac-learning/tree/1.2.3>`_
      -
    * - `mcast <https://gerrit.opencord.org/gitweb?p=mcast.git;a=summary>`__
-     - `2.9.1 <:mvn-cord:/mcast/2.9.1>`__
-     - `X <:mvn-cord:/mcast-api/2.9.1>`__
-     - `X <:mvn-cord:/mcast-app/2.9.1>`__
-     - `X <:mvn-cord:/mcast/2.9.1>`__
-     - `X <:vol-ger:/mcast/+/refs/tags/2.9.1>`__
-     - `X <:vol-git:/mcast/releases/tag/2.9.1>`__, `T <:vol-git:/mcast/tree/2.9.1>`__
+     - :mvn-cord:`2.9.1 </mcast/2.9.1>`_
+     - :mvn-cord:`X </mcast-api/2.9.1>`_
+     - :mvn-cord:`X </mcast-app/2.9.1>`_
+     - :mvn-cord:`X </mcast/2.9.1>`_
+     - :vol-ger:`X </mcast/+/refs/tags/2.9.1>`_
+     - :vol-git:`X </mcast/releases/tag/2.9.1>`__, :vol-git:`T </mcast/tree/2.9.1>`_
      -
    * - `olt <https://gerrit.opencord.org/gitweb?p=olt.git;a=summary>`__
-     - `5.2.6 <:mvn-cord:/olt/5.2.6>`__
-     - `X <:mvn-cord:/olt-api/5.2.6>`__
-     - `X <:mvn-cord:/olt-app/5.2.6>`__
-     - `X <:mvn-cord:/olt/5.2.6>`__
-     - `X <:vol-ger:/olt/+/refs/tags/5.2.6>`__
-     - `X <:vol-git:/olt/releases/tag/5.2.6>`__
+     - :mvn-cord:`5.2.6 </olt/5.2.6>`_
+     - :mvn-cord:`X </olt-api/5.2.6>`_
+     - :mvn-cord:`X </olt-app/5.2.6>`_
+     - :mvn-cord:`X </olt/5.2.6>`_
+     - :vol-ger:`X </olt/+/refs/tags/5.2.6>`_
+     - :vol-git:`X </olt/releases/tag/5.2.6>`_
      -
-   * - `olttopology <:vol-ger:/olttopology/>`__
-     - `1.3.1 <:mvn-cord:/olttopology/1.3.1>`__
-     - `X <:mvn-cord:/olttopology-api/1.3.1>`__
-     - `X <:mvn-cord:/olttopology-app/1.3.1>`__
-     - `X <:mvn-cord:/olttopology>`__
-     - `X <:vol-ger:/olttopology/+/refs/tags/1.3.1>`__
-     - `X <:vol-git:/olttopology/releases/tag/1.3.1>`__
+   * - :vol-ger:`olttopology </olttopology/>`_
+     - :mvn-cord:`1.3.1 </olttopology/1.3.1>`_
+     - :mvn-cord:`X </olttopology-api/1.3.1>`_
+     - :mvn-cord:`X </olttopology-app/1.3.1>`_
+     - :mvn-cord:`X </olttopology>`_
+     - :vol-ger:`X </olttopology/+/refs/tags/1.3.1>`_
+     - :vol-git:`X </olttopology/releases/tag/1.3.1>`_
      -
-   * - `pppoeagent <:vol-ger:/pppoeagent/>`__
-     - `1.3.0 <:mvn-cord:/pppoeagent/1.3.0>`__
-     - `X <:mvn-cord:/pppoeagent-api/1.3.0>`__
-     - `X <:mvn-cord:/pppoeagent-app/1.3.0>`__
-     - `X <:mvn-cord:/pppoeagent>`__
-     - `X <:vol-ger:/pppoeagent/+/refs/tags/1.3.0>`__
-     - `X <:vol-git:/pppoeagent/releases/tag/1.3.0>`__
+   * - :vol-ger:`pppoeagent </pppoeagent/>`_
+     - :mvn-cord:`1.3.0 </pppoeagent/1.3.0>`_
+     - :mvn-cord:`X </pppoeagent-api/1.3.0>`_
+     - :mvn-cord:`X </pppoeagent-app/1.3.0>`_
+     - :mvn-cord:`X </pppoeagent>`_
+     - :vol-ger:`X </pppoeagent/+/refs/tags/1.3.0>`_
+     - :vol-git:`X </pppoeagent/releases/tag/1.3.0>`_
      -
    * - `sadis <https://gerrit.opencord.org/gitweb?p=sadis.git;a=summary>`__
-     - `5.12.2 <:mvn-cord:/sadis/5.12.2>`__
-     - `X <:mvn-cord:/sadis-api/5.12.2>`__
-     - `X <:mvn-cord:/sadis-app/5.12.2>`__
-     - `X <:mvn-cord:/sadis>`__
-     - `X <:vol-ger:/sadis/+/refs/tags/5.12.2>`__
-     - `X <:vol-git:/sadis/releases/tag/5.12.2>`__
+     - :mvn-cord:`5.12.2 </sadis/5.12.2>`_
+     - :mvn-cord:`X </sadis-api/5.12.2>`_
+     - :mvn-cord:`X </sadis-app/5.12.2>`_
+     - :mvn-cord:`X </sadis>`_
+     - :vol-ger:`X </sadis/+/refs/tags/5.12.2>`_
+     - :vol-git:`X </sadis/releases/tag/5.12.2>`_
      -
 
 - See Also
@@ -343,9 +343,9 @@
 
    * - Component
      - VOLTHA
-     - `Chart.yaml <:vol-ger:/voltha-helm-charts/+/refs/heads/master>`_
+     - :vol-ger:`Chart.yaml </voltha-helm-charts/+/refs/heads/master>`
      - `Gerrit <https://gerrit.opencord.org/admin/repos>`_
-     - `Github <:vol-git:>`_
+     - :vol-git:`Github</>`
      - `Docker <https://hub.docker.com/search?q=voltha>`_
      - `Golang <https://pkg.go.dev>`_
      - `Pypi <https://pypi.org>`_
@@ -369,28 +369,28 @@
      -
      -
    * - `ofagent-go <https://gerrit.opencord.org/gitweb?p=ofagent-go.git;a=tree>`_
-     - `2.2.1 <:vol-ger:/ofagent-go/+/refs/heads/voltha-2.12/VERSION>`_
+     - :vol-ger:`2.2.1 </ofagent-go/+/refs/heads/voltha-2.12/VERSION>`
      - ``N/A``
-     - `X <:vol-ger:/ofagent-go/+/refs/tags/v2.2.1>`__
-     - `X <:vol-git:/ofagent-go/releases/tag/v2.2.1>`__
+     - :vol-ger:`X </ofagent-go/+/refs/tags/v2.2.1>`_
+     - :vol-git:`X </ofagent-go/releases/tag/v2.2.1>`_
      - `1.1.4(stale) <https://hub.docker.com/layers/voltha/ofagent-go/1.1.4/images/sha256-8231111b69c8643c4981d64abff0a85d71f80763bb98632bb101e92b89882647?context=explore>`_
      - `1.6.5(stale) <https://pkg.go.dev/github.com/opencord/ofagent-go/cmd/ofagent>`_
      -
      -
    * - `voltha-go <https://gerrit.opencord.org/gitweb?p=voltha-go.git;a=tree>`_
-     - `3.5.4 <:vol-ger:/voltha-go/+/refs/heads/voltha-2.12/VERSION>`_
+     - :vol-ger:`3.5.4 </voltha-go/+/refs/heads/voltha-2.12/VERSION>`
      - ``N/A``
-     - `X <:vol-ger:/voltha-go/+/refs/tags/v3.5.4>`__
-     - `X <:vol-git:/voltha-go/releases/tag/v3.5.4>`__
+     - :vol-ger:`X </voltha-go/+/refs/tags/v3.5.4>`_
+     - :vol-git:`X </voltha-go/releases/tag/v3.5.4>`_
      - ``N/A``
      - ``v7:?``
      -
      -
-   * - `voltha-lib-go <:vol-ger:/voltha-lib-go>`_
-     - `7.5.3 <:vol-ger:/voltha-lib-go/+/refs/heads/master/VERSION>`_
+   * - :vol-ger:`voltha-lib-go </voltha-lib-go>`
+     - :vol-ger:`7.5.3 </voltha-lib-go/+/refs/heads/master/VERSION>`
      - ``N/A``
-     - `X <:vol-ger:/voltha-lib-go/+/refs/tags/v7.5.3>`__
-     - `X <:vol-git:/voltha-lib-go/releases/tag/v7.5.3>`__
+     - :vol-ger:`X </voltha-lib-go/+/refs/tags/v7.5.3>`_
+     - :vol-git:`X </voltha-lib-go/releases/tag/v7.5.3>`_
      - ``?``
      - `v7 <https://pkg.go.dev/github.com/opencord/voltha-lib-go/v7@v7.5.3>`__
      - ``?``
@@ -398,44 +398,44 @@
    * - `voltha-onos <https://gerrit.opencord.org/gitweb?p=voltha-onos.git;a=tree>`_
      - ``5.1.10``
      - ``0.1.27``
-     - `X <:vol-ger:/voltha-onos/+/refs/tags/5.1.10>`__
-     - `X <:vol-git:/voltha-onos/releases/tag/5.1.10>`__
+     - :vol-ger:`X </voltha-onos/+/refs/tags/5.1.10>`_
+     - :vol-git:`X </voltha-onos/releases/tag/5.1.10>`_
      - `X <https://hub.docker.com/layers/voltha/voltha-onos/5.1.10/images/sha256-d2498af38194a1cd01a1b9072a58af8647ed50fea2dbc9bd3ac4d4e4b583d72a?context=explore>`__
      -
      -
      - ``N``
    * - `voltha-openolt-adapter <https://gerrit.opencord.org/gitweb?p=voltha-openolt-adapter.git;a=tree>`_
-     - `4.4.11 <:vol-ger:/voltha-openolt-adapter/+/refs/heads/voltha-2.12/VERSION>`_
-     - `2.12.6 <:vol-ger:/voltha-helm-charts/+/refs/heads/master/voltha-adapter-openolt/Chart.yaml#20>`_
-     - `X <:vol-ger:/voltha-openolt-adapter/+/refs/tags/v4.4.11>`__
-     - `X <:vol-git:/voltha-openolt-adapter/releases/tag/v4.4.11>`__
+     - :vol-ger:`4.4.11 </voltha-openolt-adapter/+/refs/heads/voltha-2.12/VERSION>`
+     - :vol-ger:`2.12.6 </voltha-helm-charts/+/refs/heads/master/voltha-adapter-openolt/Chart.yaml#20>`
+     - :vol-ger:`X </voltha-openolt-adapter/+/refs/tags/v4.4.11>`_
+     - :vol-git:`X </voltha-openolt-adapter/releases/tag/v4.4.11>`_
      - `X <https://hub.docker.com/layers/voltha/voltha-openolt-adapter/4.4.11/images/sha256-eed64f687f6029f4cbf531162a10d5e496ea454878987ec0212cd5dbf4c6d9cf?context=explore>`__
      - ``N/A``
      - ``N/A``
      -
    * - `voltha-openonu-adapter-go <https://gerrit.opencord.org/gitweb?p=voltha-openonu-adapter-go.git;a=tree>`_
-     - `2.11.12 <:vol-ger:/voltha-openonu-adapter-go/+/refs/heads/voltha-2.12/VERSION>`_
-     - `2.12.2 <:vol-ger:/voltha-helm-charts/+/refs/heads/master/voltha-adapter-openonu/Chart.yaml#17>`__
-     - `X <:vol-ger:/voltha-openonu-adapter-go/+/refs/tags/v2.11.12>`__
-     - `X <:vol-git:/voltha-openonu-adapter-go/releases/tag/v2.11.12>`__
+     - :vol-ger:`2.11.12 </voltha-openonu-adapter-go/+/refs/heads/voltha-2.12/VERSION>`
+     - :vol-ger:`2.12.2 </voltha-helm-charts/+/refs/heads/master/voltha-adapter-openonu/Chart.yaml#17>`_
+     - :vol-ger:`X </voltha-openonu-adapter-go/+/refs/tags/v2.11.12>`_
+     - :vol-git:`X </voltha-openonu-adapter-go/releases/tag/v2.11.12>`_
      - `X <https://hub.docker.com/layers/voltha/voltha-openonu-adapter-go/2.11.12/images/sha256-e9484a8963d08748af5766a6a8ce7f7485efb384488bcf93840ecc1142d7ad74?context=explore>`__
      - `stale <https://pkg.go.dev/github.com/opencord/voltha-openonu-adapter-go>`_
      - ``N/A``
      -
-   * - `voltha-protos <:vol-ger:/voltha-protos>`_
-     - `5.4.11 <:vol-ger:/voltha-protos/+/refs/heads/voltha-2.12/VERSION>`_
+   * - :vol-ger:`voltha-protos </voltha-protos>`
+     - :vol-ger:`5.4.11 </voltha-protos/+/refs/heads/voltha-2.12/VERSION>`
      - ``N/A``
-     - `X <:vol-ger:/voltha-protos/+/refs/tags/v5.4.11>`__
-     - `X <:vol-git:/voltha-protos/releases/tag/v5.4.11>`__
+     - :vol-ger:`X </voltha-protos/+/refs/tags/v5.4.11>`_
+     - :vol-git:`X </voltha-protos/releases/tag/v5.4.11>`_
      - `stale <https://hub.docker.com/r/voltha/voltha-protos/tags>`__
      - `stale <https://pkg.go.dev/github.com/opencord/voltha-protos>`__
      - `5.4.11 <https://pypi.org/project/voltha-protos/5.4.11>`__
      -
-   * - `voltha-system-tests <:vol-git:/voltha-system-tests/releases/tag/2.9.0>`__
+   * - :vol-git:`voltha-system-tests </voltha-system-tests/releases/tag/2.9.0>`_
      - ``2.12.13``
      -
-     - `X <:vol-ger:/voltha-system-tests/+/refs/tags/2.12.13>`__
-     - `X <:vol-git:/voltha-system-tests/tree/2.12.13>`__
+     - :vol-ger:`X </voltha-system-tests/+/refs/tags/2.12.13>`_
+     - :vol-git:`X </voltha-system-tests/tree/2.12.13>`_
      -
      -
      -
@@ -465,9 +465,9 @@
 
    * - Component
      - VOLTHA
-     - `Chart.yaml <:vol-ger:/voltha-helm-charts/+/refs/heads/master>`_
+     - :vol-ger:`Chart.yaml </voltha-helm-charts/+/refs/heads/master>`
      - `Gerrit <https://gerrit.opencord.org/admin/repos>`_
-     - `Github <:vol-git:>`_
+     - :vol-git:`Github</>`
      - `Docker <https://hub.docker.com/search?q=voltha>`_
      - `Golang <https://pkg.go.dev>`_
      - `Pypi <https://pypi.org>`_
@@ -490,38 +490,38 @@
      -
      -
      -
-   * - `voltha-docs <:vol-ger:/voltha-docs>`_ , `docs.voltha.org <https://docs.voltha.org>`_
+   * - :vol-ger:`voltha-docs </voltha-docs>`_ , `docs.voltha.org <https://docs.voltha.org>`
      - ``2.12.25``
      - ``N/A``
-     - `X <:vol-ger:/voltha-docs/+/refs/tags/2.12.25>`__
-     - `X <:vol-git:/voltha-docs/releases/tag/2.12.25>`__
+     - :vol-ger:`X </voltha-docs/+/refs/tags/2.12.25>`_
+     - :vol-git:`X </voltha-docs/releases/tag/2.12.25>`_
      -
      -
      -
      - ``N``
    * - `bbsim <https://gerrit.opencord.org/gitweb?p=bbsim.git;a=tree>`__
      - ``1.16.3+``
-     - ``4.8.6`` `chart <:vol-ger:/voltha-helm-charts/+/refs/heads/voltha-2.12/bbsim/Chart.yaml>`__
-     - `X <:vol-ger:/bbsim>`__
-     - `X <:vol-git:/bbsim/tree/v1.14.4>`__
+     - ``4.8.6`` :vol-ger:`chart </voltha-helm-charts/+/refs/heads/voltha-2.12/bbsim/Chart.yaml>`_
+     - :vol-ger:`X </bbsim>`_
+     - :vol-git:`X </bbsim/tree/v1.14.4>`_
      - `X <https://hub.docker.com/layers/voltha/bbsim/1.14.4/images/sha256-c23de193c1d7cf8d32c48edfbec4bfa6c47dbeecd4b31d040da0255eeab2ec58?context=explore>`__
      - ``?``
      - ``?``
      - ``N``
    * - `Bbsim-sadis-server <https://gerrit.opencord.org/gitweb?p=bbsim-sadis-server.git;a=tree>`__
-     - `0.3.6 <:vol-ger:/bbsim-sadis-server/+/refs/heads/voltha-2.12/VERSION>`_
-     - `0.3.3 <:vol-ger:/voltha-helm-charts/+/refs/heads/voltha-2.12/voltha-infra/Chart.yaml#45>`_
-     - `X <:vol-ger:/bbsim-sadis-server/+/refs/tags/v0.3.6/VERSION>`__
-     - `X <:vol-git:/bbsim-sadis-server/releases/tag/v0.3.6>`__
+     - :vol-ger:`0.3.6 </bbsim-sadis-server/+/refs/heads/voltha-2.12/VERSION>`
+     - :vol-ger:`0.3.3 </voltha-helm-charts/+/refs/heads/voltha-2.12/voltha-infra/Chart.yaml#45>`
+     - :vol-ger:`X </bbsim-sadis-server/+/refs/tags/v0.3.6/VERSION>`_
+     - :vol-git:`X </bbsim-sadis-server/releases/tag/v0.3.6>`_
      - `X <https://hub.docker.com/layers/voltha/bbsim-sadis-server/0.3.6/images/sha256-0ea9df1be13f8b1d0a8314cbf0e0800e4a4b7e2920ae3ce5e119abddb9359350?context=explore>`__
      -
      -
      - ``N``
    * - `voltctl <https://gerrit.opencord.org/gitweb?p=voltctl.git;a=tree>`_
-     - `1.10.2 <:vol-ger:/voltctl/+/refs/heads/voltha-2.12/VERSION>`_
+     - :vol-ger:`1.10.2 </voltctl/+/refs/heads/voltha-2.12/VERSION>`
      - ``N/A``
-     - `X <:vol-ger:/voltctl/+/refs/tags/v1.10.2>`__
-     - `? <:vol-git:/voltctl/releases/tag/v1.10.2>`_
+     - :vol-ger:`X </voltctl/+/refs/tags/v1.10.2>`_
+     - :vol-git:`? </voltctl/releases/tag/v1.10.2>`
      - ``N/A``
      - `X <https://pkg.go.dev/github.com/opencord/voltctl@v1.10.2>`__
      - ``N/A``
@@ -543,13 +543,13 @@
    * -
      -
    * - Helm Charts (voltha-helm-charts)
-     - `3.3.0 <:vol-ger:/voltha-helm-charts/+/refs/heads/voltha-2.12/VERSION>`_
+     - :vol-ger:`3.3.0 </voltha-helm-charts/+/refs/heads/voltha-2.12/VERSION>`
    * - Voltha
-     - `2.12.17 <:vol-ger:/voltha-helm-charts/+/refs/heads/master/voltha/Chart.yaml#20>`_
+     - :vol-ger:`2.12.17 </voltha-helm-charts/+/refs/heads/master/voltha/Chart.yaml#20>`
    * - Voltha-infra
-     - `2.12.6 <:vol-ger:/voltha-helm-charts/+/refs/heads/master/voltha-infra/Chart.yaml#37>`__
+     - :vol-ger:`2.12.6 </voltha-helm-charts/+/refs/heads/master/voltha-infra/Chart.yaml#37>`_
    * - Voltha-stack
-     - `2.12.9 <:vol-ger:/voltha-helm-charts/+/refs/heads/master/voltha-stack/Chart.yaml#37>`_
+     - :vol-ger:`2.12.9 </voltha-helm-charts/+/refs/heads/master/voltha-stack/Chart.yaml#37>`
 
 BAL Version
 +++++++++++
diff --git a/resources/docker.rst b/resources/docker.rst
index 98c38ef..075c245 100644
--- a/resources/docker.rst
+++ b/resources/docker.rst
@@ -12,22 +12,22 @@
      - Description
    * - `Search=voltha* <https://hub.docker.com/search?q=voltha>`_
      - All Docker images with prefix='voltha'
-   * - `bbsim <:vol-docker:'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'>`_
+   * - :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'>`_
+   * - :vol-docker:`voltha-rw-core`
      - Voltha Core
-   * - `voltha-openolt-adapter <:vol-docker:'voltha-openolt-adapter'>`_
+   * - :vol-docker:`voltha-openolt-adapter`
      - Open OLT adapter
-   * - `voltha-openonu-adapter-go <:vol-docker:'voltha-openonu-adapter-go'>`_
+   * - :vol-docker:`voltha-openonu-adapter-go`
      - Open ONU adapter
-   * - `voltha-ci-tools <:vol-docker:'voltha-ci-tools'>`_
+   * - :vol-docker:`voltha-ci-tools`
      - Versioned containers for running CI process on VOLTHA codebase
-   * - `voltha-cli <:vol-docker:'voltha-cli'>`_
+   * - :vol-docker:`voltha-cli`
      - Provides SSH access to the VOLTHA CLI
-   * - `voltha-ofagent-go <:vol-docker:'voltha-ofagent-go'>`_
+   * - :vol-docker:`voltha-ofagent-go`
      - OpenFlow management interface for Voltha
-   * - `voltha-onos <:vol-docker:'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 a11eeb4..af39832 100644
--- a/resources/repositories.rst
+++ b/resources/repositories.rst
@@ -10,57 +10,55 @@
    * - GERRIT Repository
      - GIT Repository
      - Description
-   * - `bbsim gerrit <:vol-ger:'bbsim'>`_
-     - `bbsim git <:vol-git:'bbsim'>`_
+   * - :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.
-   * - `bbsim-sadis-server gerrit <:vol-ger:'bbsim-sadis-server'>`_
-     - `bbsim-sadis-server git <:vol-git:'bbsim-sadis-server'>`_
+   * - :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.
-   * - `voltha-core gerrit <:vol-ger:'voltha-go'>`_
-     - `voltha-core git <:vol-git:'voltha-go'>`_
+   * - :vol-ger:`voltha-core gerrit<voltha-go>`
+     - :vol-git:`voltha-core git<voltha-go>`
      - Voltha Core
-   * - `voltha-openolt-adapter gerrit <:vol-ger:'voltha-openolt-adapter'>`_
-     - `voltha-openolt-adapter git <:vol-git:'voltha-openolt-adapter'>`_
+   * - :vol-ger:`voltha-openolt-adapter gerrit<voltha-openolt-adapter>`
+     - :vol-git:`voltha-openolt-adapter 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'>`_
+   * - :vol-ger:`voltha-openonu-adapter gerrit<voltha-openonu-adapter-go>`
+     - :vol-git:`voltha-openonu-adapter git<voltha-openonu-adapter-go>`
      - Open ONU adapter
-   * - `omci-lib gerrit <:vol-ger:'omci-lib-go'>`_
-     - `omci-lib git <:vol-git:'omci-lib-go'>`_
+   * - :vol-ger:`omci-lib gerrit<omci-lib-go>`
+     - :vol-git:`omci-lib git<omci-lib-go>`
      - OMCI Library
-   * - `voltha-cli gerrit <:vol-ger:'voltctl'>`_
-     - `voltha-cli git <:vol-git:'voltctl'>`_
+   * - :vol-ger:`voltha-cli gerrit<voltctl>`
+     - :vol-git:`voltha-cli 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'>`_
+   * - :vol-ger:`voltha-ofagent gerrit<ofagent-go>`
+     - :vol-git:`voltha-ofagent git<ofagent-go>`
      - OpenFlow management interface for Voltha
-   * - `voltha-onos gerrit <:vol-ger:'voltha-onos'>`_
-     - `voltha-onos git <:vol-git:'voltha-onos'>`_
+   * - :vol-ger:`voltha-onos gerrit<voltha-onos>`
+     - :vol-git:`voltha-onos git<voltha-onos>`
      - VOLTHA ONOS Development Build Environment.
-   * - `voltha-lib gerrit <:vol-ger:'voltha-lib-go'>`_
-     - `voltha-lib git <:vol-git:'voltha-lib-go'>`_
+   * - :vol-ger:`voltha-lib gerrit<voltha-lib-go>`
+     - :vol-git:`voltha-lib git<voltha-lib-go>`
      - Library for common VOLTHA functions
-   * - `voltha-protos gerrit <:vol-ger:'voltha-protos'>`_
-     - `voltha-protos git <:vol-git:'voltha-protos'>`_
+   * - :vol-ger:`voltha-protos gerrit<voltha-protos>`
+     - :vol-git:`voltha-protos 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'>`_
+   * - :vol-ger:`device-management-interface gerrit<device-management-interface>`
+     - :vol-git:`device-management-interface 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'>`_
+   * - :vol-ger:`voltha-helm-charts gerrit<voltha-helm-charts>`
+     - :vol-git:`voltha-helm-charts git<voltha-helm-charts>`
      - Helm charts for deploying VOLTHA
-   * - `ci-management gerrit <:vol-ger:'ci-management'>`_
-     - `ci-management git <:vol-git:'ci-management'>`_
+   * - :vol-ger:`ci-management gerrit<ci-management>`
+     - :vol-git:`ci-management 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'>`_
+   * - :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.
-   * - `pod-configs gerrit <:vol-ger:'pod-configs'>`_
-     - `pod-configs git <:vol-git:'pod-configs'>`_
+   * - :vol-ger:`pod-configs gerrit<pod-configs>`
+     - :vol-git:`pod-configs git<pod-configs>`
      - Configuration files for VOLTHA labs
-   * - `voltha-docs gerrit <:vol-ger:'voltha-docs'>`_
-     - `voltha-docs git <:vol-git:'voltha-docs'>`_
+   * - :vol-ger:`voltha-docs gerrit<voltha-docs>`
+     - :vol-git:`voltha-docs git<voltha-docs>`
      - VOLTHA Documentation
-
-
diff --git a/sphinx_conf/linkcheck_ignore.py b/sphinx_conf/linkcheck_ignore.py
index 0783de5..562c448 100644
--- a/sphinx_conf/linkcheck_ignore.py
+++ b/sphinx_conf/linkcheck_ignore.py
@@ -70,7 +70,7 @@
     r'https://github.com/opencord/voltha-protos/blob/master/protos/voltha_protos/extensions.proto#L259',
 
     # (voltha-openonu-adapter-go/docs/PM_Notes: line  311) broken    https://github.com/opencord/voltha-protos/blob/master/protos/voltha_protos/extensions.proto#L157 - Anchor 'L157' not found
-    r'https://github.com/opencord/voltha-protos/blob/master/protos/voltha_protos/extensions.proto#L157',    
+    r'https://github.com/opencord/voltha-protos/blob/master/protos/voltha_protos/extensions.proto#L157',
 
     # (voltha-openonu-adapter-go/docs/ONU_Upgrade_Notes: line   69) broken    https://github.com/opencord/voltha-protos/blob/v4.0.11/protos/voltha_protos/device.proto#L106 - Anchor 'L106' not found
     r'https://github.com/opencord/voltha-protos/blob/v4.0.11/protos/voltha_protos/device.proto#L106',
@@ -87,10 +87,15 @@
     # (testing/voltha_test_automation: line   20) broken
     r'https://jenkins.opencord.org/view/voltha-soak/',
 
-    ## HMMMM: Why are sphinx template substitutions barfing for urls ?
-    # (release_notes/voltha_2.12: line 658) broken
-    r'https://mvnrepository.com/artifact/org.opencord',
-    
+    # (testing/certification: line    5) broken
+    # This page no longer exists. A note has been added to the page.
+    r'https://opennetworking.org/marketplace/.*',
+
+    # (overview/contributing: line   51) broken
+    # Page exists, but certificate is no longer good. This wiki is deprecated,
+    # and doesn't seem to be in regular use anymore. References should be removed.
+    r'https://wiki.onosproject.org/.*',
+
     ])
 
 # [SEE ALSO]
diff --git a/testing/certification.rst b/testing/certification.rst
index 35da407..e631e79 100644
--- a/testing/certification.rst
+++ b/testing/certification.rst
@@ -2,7 +2,12 @@
 Product Certification with VOLTHA
 =================================
 
-VOLTHA is part fo the `continuous certification program at ONF <https://opennetworking.org/continuous-certification-program/>`_.
+.. attention::
+
+    This page contains outdated information, as the ONF marketplace is no longer
+    available.
+
+VOLTHA is part of the `continuous certification program at ONF <https://opennetworking.org/continuous-certification-program/>`_.
 You can see the currently certified products in the `ONF marketplace <https://opennetworking.org/marketplace/?_product_project=voltha>`_.
 
 The following document describes the procedure to include and certify an
