Howto release doc additions

code/release-bugfix.rst
-----------------------
  o Howto create a release branch patch

howto/release/overview.rst
--------------------------
  o Early writeup of release actions.
  o Edits needed for both branch=release and branch=master

Change-Id: I34ecc54217b2f185f7737f3244fceb2a4ddf4c5d
diff --git a/VERSION b/VERSION
index 14f37ac..719c84e 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.12.13
+2.12.14
diff --git a/howto/code/index.rst b/howto/code/index.rst
index 9152cec..4639434 100644
--- a/howto/code/index.rst
+++ b/howto/code/index.rst
@@ -8,4 +8,5 @@
    job-failures
    linting
    pull_request
+   release-bugfix
    voltha-protos
diff --git a/howto/code/release-bugfix.rst b/howto/code/release-bugfix.rst
new file mode 100644
index 0000000..8373279
--- /dev/null
+++ b/howto/code/release-bugfix.rst
@@ -0,0 +1,115 @@
+.. _coding-release-bugfix:
+
+Create a patch on a release branch
+==================================
+
+Clone & Checkout Release Branch
+-------------------------------
+
+.. code-block:: shell-session
+   :caption: Release patch: checkout
+
+   # ------------------------------------------------
+   # Clone a repostiory of interest (ex: votlha-lib-go)
+   # Checkout release branch voltha-2.12 for patching
+   # ------------------------------------------------
+   % git clone "ssh://gerrit.opencord.org:29418/voltha-lib-go.git"
+   % cd voltha-lib-go
+   % git checkout voltha-2.12
+
+   # ------------------------------------------------------
+   # Or if something is amiss checkout by tag for diagnosis
+   # ------------------------------------------------------
+   % cat VERSION
+   % git checkout tags/v{VERSION-FILE-STRING}
+
+Command output
+
+::
+   % git checkout voltha-2.12
+   Branch 'voltha-2.12' set up to track remote branch 'voltha-2.12' from 'origin'.
+   Switched to a new branch 'voltha-2.12'
+
+
+.. code-block:: shell-session
+   :caption: Create a dev branch from release
+
+   % git checkout -b dev-joey
+   % git branch -a
+
+     master
+   * voltha-2.12                          <<---** Commits land here
+     remotes/origin/HEAD -> origin/master
+     remotes/origin/master
+     remotes/origin/voltha-2.11
+     remotes/origin/voltha-2.12
+
+
+Verify sandbox tag and branch are release
+-----------------------------------------
+
+.. code-block:: shell-session
+   :caption: Release patch: Verify checkout
+
+   # ----------------------------------------------------------------
+   # Verify tags and branch for your release patch are correct.
+   # HEAD will be attached to the branch (and most recent release tag)
+   # ----------------------------------------------------------------
+   % git fetch --tags
+   % cat VERSION
+     7.5.3
+   % git log --graph --decorate --oneline $@
+
+HEAD will be attached to origin/voltha-2.12 and the latest release tag v7.5.3
+
+::
+
+   git log --graph --decorate --oneline $@
+
+   * aeb3c4f (HEAD -> voltha-2.12, tag: v7.5.3, origin/voltha-2.12) [VOL-5245] -- release patch
+   * ad265dd (tag: v7.5.2) [VOL-5245] - branch and release repo:voltha-lib-go
+   * 9cdee9f (tag: v7.5.1, tag: v2.12.0) [VOL-5245] branch and release repo:voltha-lib-go
+
+
+Edit and commit
+---------------
+
+.. code-block:: shell-session
+   :caption: Edit, commit, rebase and review
+
+   # ----------------------------------------------------------------
+   # Edit sources to taste
+   # ----------------------------------------------------------------
+   {emacs,vi,$EDITOR} ...
+
+   # :ref:`pull-request--commit-message`
+   % git commit -F ./commit-message
+
+
+Rebase against the release branch
+---------------------------------
+
+.. code-block:: shell-session
+   :caption: Rebase against release branch ``NOT branch=master``
+
+   # Run one of
+   % rebase -i HEAD
+   % rebase -i voltha-2.12
+
+
+Code Review
+-----------
+
+.. code-block:: shell-session
+   :caption: Push to gerrit, code review
+
+   % git review --reviewers foo@bar.tans
+
+
+Verify Patch
+------------
+
+Now visit gerrit and verify your release bugfix is correctly decorated.
+In gerrit, review the 'Repo|Branch' item in the top left corner.
+'votlha-2.12' or the release tag will be visible.  If branch 'master' is
+listed abandon the patch beucase it will not be applied to the proper branch.
diff --git a/howto/release/index.rst b/howto/release/index.rst
index 6fa5f55..a276db6 100644
--- a/howto/release/index.rst
+++ b/howto/release/index.rst
@@ -4,6 +4,7 @@
 .. toctree::
    :maxdepth: 1
 
+   overview
    preparation
    release-notes
 
diff --git a/howto/release/overview.rst b/howto/release/overview.rst
new file mode 100644
index 0000000..1977568
--- /dev/null
+++ b/howto/release/overview.rst
@@ -0,0 +1,59 @@
+Release overview (WIP)
+======================
+
+For a VOLTHA release several actions and patches are applied to each repository.
+Release also happens in a hierarchial manner due to dependencies.
+
+- Version string differs between branch=master and branch=voltha-2.12.
+- For ex repo:voltha-protos currently has:
+
+  - master=5.5.0
+  - voltha-2.12=5.4.11
+
+- For release create an initial baseline build to verify no pre-existing corruption or test failures are present.
+
+  - Baseline builds contain bulk cosmetic changes which may include:
+
+    - Copyright notice ending date change.
+    - Cosmetic comemnt changes in source.
+    - Syntax formatting (gofmt -s -e -w)
+
+  - Baseline builds may also remove suffixes like -dev from the VERSION file.
+
+- Now tag-branch or branch-tag the repo (depending on repository) for release.
+  A few things will need to happen:
+
+  - A few distinct sets of patches for each branch are created:
+
+    - Update VERSION string so master and voltha-2.12 patches cannot collide.
+
+      - branch=voltha-2.12 : VERSION = {max}.{min}+1.0
+      - branch=master      : VERSION = {max+1}.{min}.0
+
+    - Update release branch .gitreview file:
+
+      - defaultbranch=voltha-2.12
+      - This will rebase/merge against the release branch rather than master.
+
+  - Update go.mod version strings to be appropriate for branch={voltha-2.12, master}
+
+NOTE
+
+::
+
+   One item that may be confusing.  Baseline builds for release are independent
+   of tagging & branching so may be initiated in parallel.  Generally release
+   tasks for a repository are performed in hierarchial order, release
+   repositories and obtain the final version string.  Next continue onto
+   releasing repositories that depend on ones released earlier.
+
+   For ex, the release sequence for repo:voltha-go would be
+   1) Release repo:votlha-protos
+   2) Release repo:votlha-lib-go  # Depends on voltha-protos
+   3) Release repo:votlha-go      # Depends on both.
+
+Todo
+----
+
+- Add document references to existing release pages.
+- Link to repo dependencies in howto/release/repositories