[VOL-5009] - Update release notes
config.mk
makefiles/*
-----------
o Refresh library makefiles from https://github.com/opencord/onf-make.
o More lint targets added with exclusions in config.mk
makefiles/virtualenv.mk
patches/lib/python3.10/site-packages/robot/utils/normalizing.py/patch
patches/lib/python3.10/site-packages/robot/utils/robottypes3.py/patch
patches/python_310_migration.sh
---------------------------------------------------------------------
o Continue normalizing virtualenv install directory.
o Update patches to modify .venv VS vst_venv [, vdoc_venv, vfoo_venv, vbar_venv, ...)
o virtualenv.mk now defines named targets for patching-up-to 3.10 installs.
release_notes/voltha_2.12.rst
-----------------------------
o Update version string info.
o Onos component table condensed and populated with versioned urls.
o voltha components table is a WIP.
howto/release/repositories/
---------------------------
o Begin capturing repo-specific activities for release.
o Silly having to figure this out each release cycle.
o Automation and release helper scripts can be found here:
- https://github.com/joey-onf/voltha-release
sphinx_conf/exclude_patterns.py
-------------------------------
o Roach squashing exercise, external repos pulled in as git-submodules.
o New repository files appear as problems when running 'make reload'
o Exclude files to squelch messages.
Change-Id: I7adf7b84498511f5cde1e43ad304f9e33283241e
diff --git a/makefiles/lint/shell.mk b/makefiles/lint/shell.mk
index 3c04539..3c33bb2 100644
--- a/makefiles/lint/shell.mk
+++ b/makefiles/lint/shell.mk
@@ -1,8 +1,8 @@
# -*- makefile -*-
# -----------------------------------------------------------------------
-# Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
#
-# Licensed under the Apache License, Version 2.0 (the "License")
+# 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
#
@@ -14,74 +14,52 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# -----------------------------------------------------------------------
-
-$(if $(DEBUG),$(warning ENTER))
+# https://gerrit.opencord.org/plugins/gitiles/onf-make
+# ONF.makefile.version = 1.0
+# -----------------------------------------------------------------------
##-------------------##
##---] GLOBALS [---##
##-------------------##
-.PHONY: lint-shell lint-shell-all lint-shell-modified
-have-shell-sources := $(if $(strip $(SHELL_SOURCES)),true)
-SHELL_SOURCES ?= $(error SHELL_SOURCES= required)
+# Gather sources to check
+# TODO: implement deps, only check modified files
+shell-check-find := find .
+# vendor scripts but they really should be lintable
+shell-check-find += -name 'vendor' -prune
+shell-check-find += -o \( -name '*.sh' \)
+shell-check-find += -type f -print0
-## -----------------------------------------------------------------------
-## Intent: Use the shell command to perform syntax checking.
-## % make lint
-## % make lint-shell-all
-## -----------------------------------------------------------------------
+shell-check := $(env-clean) shellcheck
+# shell-check := shellcheck
+
+shell-check-args += --check-sourced
+shell-check-args += --external-sources
+
+##-------------------##
+##---] TARGETS [---##
+##-------------------##
ifndef NO-LINT-SHELL
- lint-shell-mode := $(if $(have-shell-sources),modified,all)
- lint : lint-shell-$(lint-shell-mode)
-endif# NO-LINT-SHELL
+ lint : lint-shell
+endif
## -----------------------------------------------------------------------
-## Intent: exhaustive shell syntax checking
+## Intent: Perform a lint check on command line script sources
## -----------------------------------------------------------------------
-shellcheck-find-args := $(null)
-shellcheck-find-args += -name '$(venv-name)'
-shellcheck-find-args += -o -name 'staging'
-lint-shell-all:
- $(MAKE) --no-print-directory lint-shellcheck-install
-
- find . \( $(shellcheck-find-args) \) -prune -name '*.sh' -print0 \
- | $(xargs-n1-clean) shellcheck
-
-## -----------------------------------------------------------------------
-## Intent: check deps for format and python3 cleanliness
-## Note:
-## shell --py3k option no longer supported
-## -----------------------------------------------------------------------
-lint-shell-modified:
- $(MAKE) --no-print-directory lint-shell-install
-
- shellcheck $(SHELL_SOURCES)
-
-## -----------------------------------------------------------------------
-## Intent:
-## -----------------------------------------------------------------------
-.PHONY: lint-shellcheck-install
-lint-shellcheck-install:
+lint-shell:
+ $(shell-check) -V
@echo
- @echo "** -----------------------------------------------------------------------"
- @echo '** command shell syntax checking'
- @echo "** -----------------------------------------------------------------------"
-
- # {apt-get,rpm,yum} install shellcheck
- shellcheck --version
- @echo
+ $(HIDE)$(env-clean) $(shell-check-find) \
+ | $(xargs-n1) $(shell-check) $(shell-check-args)
## -----------------------------------------------------------------------
-## Intent: Display command usage
+## Intent: Display command help
## -----------------------------------------------------------------------
-help::
- @echo ' lint-shell Syntax check sources using shellcheck'
- ifdef VERBOSE
- @echo ' $(MAKE) lint-shell SHELL_SOURCES=...'
- @echo ' lint-shell-modified shell checking: only modified'
- @echo ' lint-shell-all shell checking: exhaustive'
- endif
+help-summary ::
+ @echo ' lint-shell Syntax check shell sources'
-$(if $(DEBUG),$(warning LEAVE))
+# [SEE ALSO]
+# -----------------------------------------------------------------------
+# o https://www.shellcheck.net/wiki/Directive
# [EOF]