[VOL-5010] - Clone unit tests onto a v2.12 branch

[VOL-5005] - Create a v2.12 release branch for test jobs.
[VOL-5004] - Deprecate voltha-2.8 unit tests

makefiles/release/include.mk
makefiles/release/help.mk
makefiles/release/voltha-versions.mk
makefiles/release/targets.mk
makefiles/release/targets/voltha-certification.mk
makefiles/release/targets/voltha-e2e.mk
makefiles/release/targets/voltha-nightly-jobs.mk
-------------------------------------------------
  o Define make targets to create versioned subdirectories.
  o 'branched' unit test files will live in subdirs.
  o Refactoring still in progress, v2.8 tests are disabled/retired in the interim.

jjb/voltha-e2e.yaml
jjb/pipeline/voltha/voltha-2.12/
jjb/voltha-test/voltha-nightly-jobs/voltha-2.12.yaml
----------------------------------------------------
  o Create versioned subdirectories to support v2.12 unit testing.

jjb/voltha-e2e.yaml
jjb/voltha-e2e/voltha-master.yaml
jjb/voltha-e2e/voltha-2.12.yaml
jjb/voltha-e2e/voltha-2.8.yaml
--------------------------------
  o Guineapig: periodic-voltha-pm-data-test-bbsim
  o Refactor unit test from voltha-e2e.yaml.
  o Create new v2.12 pipeline job.
  o Disable pre-lts legacy pipeline job 2.8
  o Refactoring one test so job state in all branches can be checked.
  o Tomorrow verify the v2.8 job did not launch

Change-Id: Ib550fae395e1a416466c2f5fb9640be8405dc39e
diff --git a/makefiles/release/help.mk b/makefiles/release/help.mk
index fde2d0e..0358ed8 100644
--- a/makefiles/release/help.mk
+++ b/makefiles/release/help.mk
@@ -24,8 +24,12 @@
 	@echo
 	@echo '[RELEASE] - Create branch driven testing pipelines'
 	@echo '  create-jobs-release'
-	@echo '  create-jobs-release-nightly Nightly testing'
-	@echo '  create-jobs-release-units   Unit testing'
+	@echo '  create-jobs-release-e2e            End-to-End testing'
+	@echo '  create-jobs-release-certification  Certification testing'
+	@echo '  create-jobs-release-nightly        Nightly testing'
+	@echo '  create-jobs-release-units          Unit testing'
+
+	@echo '  sterile-create-jobs-release        Purge pipeline job content'
 
 help ::
 	@echo '  help-voltha-release Display voltha release targets'
diff --git a/makefiles/release/include.mk b/makefiles/release/include.mk
index afc03d9..3c9879e 100644
--- a/makefiles/release/include.mk
+++ b/makefiles/release/include.mk
@@ -28,7 +28,7 @@
 
 ifdef USE_VOLTHA_RELEASE_MK
   # Dynamic loading when targets are requested by name
-  include $(ONF_MAKE)/release/targets.mk
+  include $(MAKEDIR)/release/targets.mk
 endif
 
 # [EOF]
diff --git a/makefiles/release/targets.mk b/makefiles/release/targets.mk
index 44aaac7..5ed307c 100644
--- a/makefiles/release/targets.mk
+++ b/makefiles/release/targets.mk
@@ -29,17 +29,17 @@
 
 GIT	?= /usr/bin/env git
 
-# fatal to make help
-voltha-version ?= $(error $(MAKE) voltha-verison=voltha-x.yy is required)\
+##--------------------##
+##---]  INCLUDES  [---##
+##--------------------##
+include $(MAKEDIR)/release/voltha-versions.mk
+include $(MAKEDIR)/release/targets/voltha-certification.mk
+include $(MAKEDIR)/release/targets/voltha-e2e.mk
+include $(MAKEDIR)/release/targets/voltha-nightly-jobs.mk
 
-last-release  := voltha-2.11
+# last-release  := voltha-2.11
+last-release := $(voltha-release-last)
 
-## Known releases
-versions += master
-versions += voltha-2.12
-versions += voltha-2.11
-versions += voltha-2.8
-versions += playground
 
 ##-------------------##
 ##---]  TARGETS  [---##
@@ -47,12 +47,12 @@
 all: help
 
 ## ---------------------------------------------------------------------------
-## Intent: Create branch driven pipeline test jobs.
+## Intent: Build these deps to create a new branch/release area
 ## ---------------------------------------------------------------------------
-## Build these deps to create a new release area
 create-jobs-release += create-jobs-release-certification
 create-jobs-release += create-jobs-release-nightly
 create-jobs-release += create-jobs-release-units
+create-jobs-release += create-jobs-release-e2e
 
 create-jobs-release : $(create-jobs-release)
 
@@ -75,63 +75,9 @@
 
 ## ---------------------------------------------------------------------------
 ## Intent: Create branch driven nightly test jobs.
-##   o Clone config for the last nightly release
-##   o In-place edit to the latest version.
 ## ---------------------------------------------------------------------------
-## NOTE: WIP - nightly jobs have not yet migrated from the mega job config file
-## ---------------------------------------------------------------------------
-nightly-dir  := $(release-mk-top)/jjb/voltha-test/voltha-nightly-jobs
-nightly-yaml := $(nightly-dir)/$(voltha-version).yaml
-nightly-tmpl := $(nightly-dir)/$(last-release).yaml
-
-create-jobs-release-nightly : $(nightly-yaml)
-$(nightly-yaml) : $(nightly-tmpl)
-
-	@echo
-	@echo "** Create branch driven pipeline: nightly tests"
-	sed -e 's/$(last-release)/$(voltha-version)/g' $< > $@
-	$(HIDE)/bin/ls -l $(dir $@)
-
-## ---------------------------------------------------------------------------
-## Intent: Create branch driven nightly test jobs.
-## ---------------------------------------------------------------------------
-$(nightly-tmpl):
-	@echo "ERROR: Yaml template branch does not exist: $@"
-	@echo 1
-
-## ---------------------------------------------------------------------------
-## Intent: Create branch driven nightly test jobs.
-##   o Clone config for the last nightly release
-##   o In-place edit to the latest version.
-## ---------------------------------------------------------------------------
-## NOTE: WIP - nightly jobs have not yet migrated from the mega job config file
-## ---------------------------------------------------------------------------
-certification-dir  := $(release-mk-top)/jjb/voltha-test/voltha-certification
-certification-yaml := $(certification-dir)/$(voltha-version).yaml
-certification-tmpl := $(certification-dir)/$(last-release).yaml
-
-create-jobs-release-certification : $(certification-yaml)
-$(certification-yaml) : $(certification-tmpl)
-
-	@echo
-	@echo "** Create branch driven pipeline: nightly tests"
-	sed -e 's/$(last-release)/$(voltha-version)/g' $< > $@
-	$(HIDE)/bin/ls -l $(dir $@)
-
-## ---------------------------------------------------------------------------
-## Intent: Create branch driven nightly test jobs.
-## ---------------------------------------------------------------------------
-$(certification-tmpl):
-	@echo "ERROR: Yaml template branch does not exist: $@"
-	@echo 1
-
-
-## ---------------------------------------------------------------------------
-## Intent: Create branch driven nightly test jobs.
-## ---------------------------------------------------------------------------
-sterile-create-jobs-release :
-	$(RM) $(certification-yaml)
-	$(RM) $(nightly-yaml)
+sterile-create-jobs-release := $(addprefix sterile-,$(create-jobs-release))
+sterile-create-jobs-release : $(sterile-create-jobs-release)
 	$(RM) -r $(units-yaml)
 
 $(if $(DEBUG),$(warning LEAVE))
diff --git a/makefiles/release/targets/voltha-certification.mk b/makefiles/release/targets/voltha-certification.mk
new file mode 100644
index 0000000..55e4f1a
--- /dev/null
+++ b/makefiles/release/targets/voltha-certification.mk
@@ -0,0 +1,56 @@
+# -*- makefile -*-
+# -----------------------------------------------------------------------
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# -----------------------------------------------------------------------
+# Intent: Helper makefile target used to setup for a release
+# -----------------------------------------------------------------------
+
+$(if $(DEBUG),$(warning ENTER))
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+##   o Clone config for the last nightly release
+##   o In-place edit to the latest version.
+## ---------------------------------------------------------------------------
+## NOTE: WIP - nightly jobs have not yet migrated from the mega job config file
+## ---------------------------------------------------------------------------
+certification-dir  := $(release-mk-top)/jjb/voltha-test/voltha-certification
+certification-yaml := $(certification-dir)/$(voltha-version).yaml
+certification-tmpl := $(certification-dir)/$(voltha-release-last).yaml
+
+create-jobs-release-certification : $(certification-yaml)
+$(certification-yaml) : $(certification-tmpl)
+
+	@echo
+	@echo "** Create branch driven pipeline: nightly tests"
+	sed -e 's/$(last-release)/$(voltha-version)/g' $< > $@
+	$(HIDE)/bin/ls -l $(dir $@)
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+## ---------------------------------------------------------------------------
+$(certification-tmpl):
+	@echo "ERROR: Yaml template branch does not exist: $@"
+	@echo 1
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+## ---------------------------------------------------------------------------
+sterile-create-jobs-release-certification :
+	$(RM) $(certification-yaml)
+
+$(if $(DEBUG),$(warning LEAVE))
+
+# [EOF]
diff --git a/makefiles/release/targets/voltha-e2e.mk b/makefiles/release/targets/voltha-e2e.mk
new file mode 100644
index 0000000..40e7c5d
--- /dev/null
+++ b/makefiles/release/targets/voltha-e2e.mk
@@ -0,0 +1,56 @@
+# -*- makefile -*-
+# -----------------------------------------------------------------------
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# -----------------------------------------------------------------------
+# Intent: Helper makefile target used to setup for a release
+# -----------------------------------------------------------------------
+
+$(if $(DEBUG),$(warning ENTER))
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+##   o Clone config for the last nightly release
+##   o In-place edit to the latest version.
+## ---------------------------------------------------------------------------
+## NOTE: WIP - nightly jobs have not yet migrated from the mega job config file
+## ---------------------------------------------------------------------------
+voltha-e2e-dir  := $(release-mk-top)/jjb/voltha-e2e
+voltha-e2e-yaml := $(voltha-e2e-dir)/$(voltha-version).yaml
+voltha-e2e-tmpl := $(voltha-e2e-dir)/$(voltha-release-last).yaml
+
+create-jobs-release-e2e : $(voltha-e2e-yaml)
+$(voltha-e2e-yaml) : $(voltha-e2e-tmpl)
+
+	@echo
+	@echo "** Create branch driven pipeline: nightly tests"
+	sed -e 's/$(last-release)/$(voltha-version)/g' $< > $@
+	$(HIDE)/bin/ls -l $(dir $@)
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+## ---------------------------------------------------------------------------
+$(voltha-e2e-tmpl):
+	@echo "ERROR: Yaml template branch does not exist: $@"
+	@echo 1
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+## ---------------------------------------------------------------------------
+sterile-create-jobs-release-e2e :
+	$(RM) $(voltha-e2e-yaml)
+
+$(if $(DEBUG),$(warning LEAVE))
+
+# [EOF]
diff --git a/makefiles/release/targets/voltha-nightly-jobs.mk b/makefiles/release/targets/voltha-nightly-jobs.mk
new file mode 100644
index 0000000..20e37de
--- /dev/null
+++ b/makefiles/release/targets/voltha-nightly-jobs.mk
@@ -0,0 +1,54 @@
+# -*- makefile -*-
+# -----------------------------------------------------------------------
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# -----------------------------------------------------------------------
+# Intent: Helper makefile target used to setup for a release
+# -----------------------------------------------------------------------
+
+$(if $(DEBUG),$(warning ENTER))
+
+##-------------------##
+##---]  GLOBALS  [---##
+##-------------------##
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+##   o Clone config for the last nightly release
+##   o In-place edit to the latest version.
+## ---------------------------------------------------------------------------
+## NOTE: WIP - nightly jobs have not yet migrated from the mega job config file
+## ---------------------------------------------------------------------------
+voltha-nightly-dir  := $(release-mk-top)/jjb/voltha-test/voltha-nightly-jobs
+voltha-nightly-yaml := $(voltha-nightly-dir)/$(voltha-version).yaml
+voltha-nightly-tmpl := $(voltha-nightly-dir)/$(voltha-release-last).yaml
+
+create-jobs-release-nightly : $(voltha-nightly-yaml)
+$(voltha-nightly-yaml) : $(voltha-nightly-tmpl)
+
+	@echo
+	@echo "** Create branch driven pipeline: nightly tests"
+	sed -e 's/$(last-release)/$(voltha-version)/g' $< > $@
+	$(HIDE)/bin/ls -l $(dir $@)
+
+## ---------------------------------------------------------------------------
+## Intent: Create branch driven nightly test jobs.
+## ---------------------------------------------------------------------------
+$(voltha-nightly-tmpl):
+	@echo "ERROR: Yaml template branch does not exist: $@"
+	@echo 1
+
+$(if $(DEBUG),$(warning LEAVE))
+
+# [EOF]
diff --git a/makefiles/release/voltha-versions.mk b/makefiles/release/voltha-versions.mk
new file mode 100644
index 0000000..a6ab7b6
--- /dev/null
+++ b/makefiles/release/voltha-versions.mk
@@ -0,0 +1,44 @@
+# -*- makefile -*-
+# -----------------------------------------------------------------------
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# -----------------------------------------------------------------------
+# Intent: Helper makefile target used to setup for a release
+# -----------------------------------------------------------------------
+
+$(if $(DEBUG),$(warning ENTER))
+
+##-------------------##
+##---]  GLOBALS  [---##
+##-------------------##
+voltha-versions += master
+voltha-versions += voltha-2.12
+voltha-versions += voltha-2.11
+voltha-versions += voltha-2.8
+voltha-versions += playground
+
+# VOLTHA: release
+#   active : $(words 0,$(voltha-versions))
+#     next : $(words 1,$(voltha-versions))
+#     last : $(words 2,$(voltha-versions))
+
+# fatal to make help (param is null)
+voltha-version ?= $(error $(MAKE) voltha-verison=voltha-x.yy is required)\
+
+voltha-release-this := $(word 1,$(voltha-versions)) 
+voltha-release-last := $(word 2,$(voltha-versions))
+
+$(if $(DEBUG),$(warning LEAVE))
+
+# [EOF]