[VOL-5024] - bbsim unit-test reports UNSTABLE

Makefile
--------
  o Added debugging around target test-unit
  o Add banners around coverage reports for readability.
  o Unwind shell command one-liner into distinct commands with echo banners.
  o Invoke set -o pipefail, test output | tee will overwrite testing exit status (always succeed).
  o Exit early if testing fails, no need to run coverage reports.

docs/requirements.txt
---------------------
  o Update module funcparserlib to the latest.
  o https://funcparserlib.pirx.ru/changes/
  o v3.5 released 2011 fails on compatibility module.
  o Latest module seems to work and fixed an error.
  o Send through jenkins to check for problems.

Change-Id: I71c2d49243329c7544046fd5fdcdaf66ad47b5cc
diff --git a/Makefile b/Makefile
index 3c63603..0817e3b 100644
--- a/Makefile
+++ b/Makefile
@@ -128,15 +128,60 @@
 results-xml  := ./tests/results/go-test-results.xml
 
 test-unit: clean local-omci-lib-go # @HELP Execute unit tests
+
+	@echo
+	@echo '** -----------------------------------------------------------------------'
+	@echo '** Target: $@'
+	@echo '** -----------------------------------------------------------------------'
+
+	@mkdir -p $(dir $(results-out))
+#	@chmod -R 777 $(dir $(results-out))# dev-mode: local
+	@find $(dir $(results-out)) -print0 | xargs -0 ls -l
+
+	@echo
 	@echo "Running unit tests..."
-	@mkdir -p ./tests/results
-	@${GO} test -mod=vendor -bench=. -v \
+	@echo '-----------------------------------------------------------------------'
+	set -euo pipefail \
+	&& ${GO} test -mod=vendor -bench=. -v \
 	  -coverprofile $(coverage-out) \
 	  -covermode count ./... \
-	  2>&1 | tee $(results-out) ;\
-	RETURN=$$? ;\
-	${GO_JUNIT_REPORT}   < $(results-out)  > $(results-xml) ;\
-	${GOCOVER_COBERTURA} < $(coverage-out) > $(coverage-xml) ;\
+	  2>&1 | tee "$(results-out)"
+
+	@echo
+	@echo "Coverage report: junit"
+	@echo '-----------------------------------------------------------------------'
+	${GO_JUNIT_REPORT} < $(results-out) > $(results-xml)
+
+	@echo
+	@echo "Coverage report: Cobertura"
+	@echo '-----------------------------------------------------------------------'
+	${GOCOVER_COBERTURA} < $(coverage-out) > $(coverage-xml)
+
+	@echo
+	@echo "Coverage report directory perms:"
+	@echo '-----------------------------------------------------------------------'
+	find $(dir $(results-out)) -print0 | xargs -0 ls -l
+
+	@echo
+	@echo "Locally modified files (git status)"
+	@echo '-----------------------------------------------------------------------'
+	git status
+
+# foobar:
+#	&& RETURN=$$? \
+	&& echo "** $@ will exit with status $$(declare -p RETURN)" \
+	&& echo \
+	&& echo "Coverage report: juni" \
+	&& ${GO_JUNIT_REPORT}   < $(results-out) > $(results-xml) \
+	&& echo \
+	&& echo "Coverage report: Cobertura" \
+	&& ${GOCOVER_COBERTURA} < $(coverage-out) > $(coverage-xml) \
+	&& echo \
+	&& echo "Coverage report directory perms:" \
+	&& find $(dir $(results-out)) -print0 | xargs -0 ls -l \
+	&& echo \
+	&& echo "List locally modified files" \
+	&& git status \
 	exit $$RETURN
 
 ## -----------------------------------------------------------------------
diff --git a/docs/requirements.txt b/docs/requirements.txt
index fcb72ba..fd70c42 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -11,3 +11,10 @@
 sphinxcontrib-nwdiag~=2.0.0
 sphinxcontrib-openapi~=0.6.0
 sphinxcontrib-seqdiag~=2.0.0
+
+# ----------------------------------------------------------------
+# v3.6: error in funcparserlib setup command: use_2to3 is invalid.
+# https://funcparserlib.pirx.ru/changes/
+# funcparserlib=~0.3.5
+# ----------------------------------------------------------------
+funcparserlib~=1.0.0a0
diff --git a/msg b/msg
deleted file mode 100644
index 17c92c6..0000000
--- a/msg
+++ /dev/null
@@ -1,55 +0,0 @@
-VOL-4883 - Publish a new bbsim release
-
-https://github.com/opencord/bbsim/releases/tag/untagged-6d947de2a6078a1fe175
-----------------------------------------------------------------------------
-  o Draft bbsim release v2.96.8572 created by this patch set.
-  o All 6cross-compile binaries are now included.
-  o Change ID + commit message document the release.
-  o Binaries downloaded/tested using {bbr,bbsim,bbsimctl} --help
-
-Makefile
---------
-  o Makefile release target is now able to cross compile all binaries:
-    - bbsimctl cross compiled to arm, darwin, linux and windows.
-    - release-{bbr, bbsim} only built *-linux-amd64
-  o Refactor targets into a more modular and hierarchial setup.
-  o Be sure to create RELEASE_DIR early on localhost so docker
-    container can create a volume (NFS mount) for building into.
-  o Display banners when building targets to improve log readability.
-  o Clean targets updated to remove everything generated.
-  o Help targets added to document indvidual target logic.
-  o Makefile logic heavily commented.
-
-makefiles/release/bbr.mk
-makefiles/release/bbsim.mk
-makefiles/release/bbsimctl.mk
------------------------------
-  o Relocate build-* and release-* target logic into named makefiles.
-  o Update SHELL to set -euo pipefail to detect uninit shell vars.
-  o Replaced shell/looping logic with true makefile target dependencies:
-    - shell/loop replaced with a target rule that builds one platform binary.
-    - Derive a list of targets release/{bbr,bbsim,bbsimctl}-{os}-{arch}
-    - release: depends on all buildable targets
-    - release rule can extract arch= and os= from target path being built.
-    - To simplify logic construct env vars separately into a response file.
-    - passed as "docker --env-file [x]" VS appending to an ever growing command line.
-  o Marked more targets as .PHONY so they will always build.
-  o Added helper target 'onf-publish' for exercising changes in the github-release script.
-
-makefiles/include.mk
---------------------
-  o Single include for importing all library makefiles.
-
-makefiles/consts.mk
--------------------
-  o Include fixed values, esp $(quote-single) which is now used to document
-  o Refactor duplication in GO_* macros into named/reused values to shorten lines.
-
-makefiles/lint
---------------
-  o Moved lint::docker (hadolint target) into makefiles/lint/docker/*.mk.
-  o Added makefiles/lint library targets for ability to lint more sources.
-
-makefiles/tools.mk
-------------------
-  o Refactor DOCKER_* and GO_* macros into a named includable makefile.q
\ No newline at end of file