[VOL-5053] - Pre-release triage build of voltha-lib-go

makefiles/
----------
  o Added latest library makefile versions from repo:onf-make.
  o Remove inlined GO* macros and replaced with makefile/docker/include.mk
  o Proper handling of --it/--tty so jenkins can capture docker output in logs.

pkg/adapters/common/
pkg/config/
pkg/db/
pkg/db/kvstore/
pkg/events/eventif/
---------------------
  o Bulk copyright notice end-date updates.
  o Run gofmt -s -w on all *.go sources to fix potential job problems.
  o Cosmetic edits to force a build for the release.

config.mk
---------
  o Ignore more lint targets: groovy (tool needed), jjb (not-needed)

Makefile
--------
  o echo enter/leave banners within targets to improve readability.
  o Inline set -euo pipefail within testing else tee command masks exit status.
  o Added LOCAL_FIX_PERMS= hack to adjust docker volume perms when working locally.
  o make test depends on test-go and test-go-coverage.
  o test-go: normal test run, exit with status.
  o test-go-coverage: test with code -cover but ignore errors until sources can be identified and cleaned up.
  o Split test target into
    - gen-coverage-coverprofile
    - gen-coverage-junit
    - gen-coverage-cobertura
      - Separate targets help unwrap run-on command and the need to capture exit status.
      - Logic can now migrate into a library makefile for other repos to make use of.

Change-Id: Id680c8eb626ff6b7cd27ca783988f659fa1468df
diff --git a/pkg/kafka/client.go b/pkg/kafka/client.go
index afc2955..c9d325e 100755
--- a/pkg/kafka/client.go
+++ b/pkg/kafka/client.go
@@ -1,22 +1,22 @@
 /*
- * Copyright 2018-present Open Networking Foundation
+* Copyright 2018-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
+* 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
+* 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.
- *
- *
- * NOTE:  The kafka client is used to publish events on Kafka in voltha
- * release 2.9.  It is no longer used for inter voltha container
- * communication.
+* 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.
+*
+*
+* NOTE:  The kafka client is used to publish events on Kafka in voltha
+* release 2.9.  It is no longer used for inter voltha container
+* communication.
  */
 package kafka
 
diff --git a/pkg/kafka/common.go b/pkg/kafka/common.go
index f319d66..c563408 100644
--- a/pkg/kafka/common.go
+++ b/pkg/kafka/common.go
@@ -1,5 +1,5 @@
 /*
- * Copyright 2020-2022 Open Networking Foundation (ONF) and the ONF Contributors
+ * Copyright 2020-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.
diff --git a/pkg/kafka/sarama_client.go b/pkg/kafka/sarama_client.go
index 680aa67..3889175 100755
--- a/pkg/kafka/sarama_client.go
+++ b/pkg/kafka/sarama_client.go
@@ -1,17 +1,17 @@
 /*
- * Copyright 2018-present Open Networking Foundation
+* Copyright 2018-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
+* 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
+* 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.
+* 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.
  */
 package kafka
 
@@ -33,7 +33,7 @@
 
 // consumerChannels represents one or more consumers listening on a kafka topic.  Once a message is received on that
 // topic, the consumer(s) broadcasts the message to all the listening channels.   The consumer can be a partition
-//consumer or a group consumer
+// consumer or a group consumer
 type consumerChannels struct {
 	consumers []interface{}
 	channels  []chan proto.Message
@@ -315,7 +315,7 @@
 	logger.Info(ctx, "sarama-client-stopped")
 }
 
-//createTopic is an internal function to create a topic on the Kafka Broker. No locking is required as
+// createTopic is an internal function to create a topic on the Kafka Broker. No locking is required as
 // the invoking function must hold the lock
 func (sc *SaramaClient) createTopic(ctx context.Context, topic *Topic, numPartition int, repFactor int) error {
 	// Set the topic details
@@ -344,7 +344,7 @@
 	return nil
 }
 
-//CreateTopic is a public API to create a topic on the Kafka Broker.  It uses a lock on a specific topic to
+// CreateTopic is a public API to create a topic on the Kafka Broker.  It uses a lock on a specific topic to
 // ensure no two go routines are performing operations on the same topic
 func (sc *SaramaClient) CreateTopic(ctx context.Context, topic *Topic, numPartition int, repFactor int) error {
 	sc.lockTopic(topic)
@@ -353,7 +353,7 @@
 	return sc.createTopic(ctx, topic, numPartition, repFactor)
 }
 
-//DeleteTopic removes a topic from the kafka Broker
+// DeleteTopic removes a topic from the kafka Broker
 func (sc *SaramaClient) DeleteTopic(ctx context.Context, topic *Topic) error {
 	sc.lockTopic(topic)
 	defer sc.unLockTopic(topic)
@@ -441,7 +441,7 @@
 	return consumerListeningChannel, nil
 }
 
-//UnSubscribe unsubscribe a consumer from a given topic
+// UnSubscribe unsubscribe a consumer from a given topic
 func (sc *SaramaClient) UnSubscribe(ctx context.Context, topic *Topic, ch <-chan proto.Message) error {
 	sc.lockTopic(topic)
 	defer sc.unLockTopic(topic)
@@ -760,7 +760,7 @@
 	logger.Warnw(ctx, "consumers-channel-not-exist", log.Fields{"topic": topic.Name})
 }
 
-//closeConsumers closes a list of sarama consumers.  The consumers can either be a partition consumers or a group consumers
+// closeConsumers closes a list of sarama consumers.  The consumers can either be a partition consumers or a group consumers
 func closeConsumers(ctx context.Context, consumers []interface{}) error {
 	var err error
 	for _, consumer := range consumers {
@@ -830,7 +830,7 @@
 	return nil
 }
 
-//createPublisher creates the publisher which is used to send a message onto kafka
+// createPublisher creates the publisher which is used to send a message onto kafka
 func (sc *SaramaClient) createPublisher(ctx context.Context) error {
 	// This Creates the publisher
 	config := sarama.NewConfig()
@@ -1028,8 +1028,8 @@
 	return nil
 }
 
-//// setupConsumerChannel creates a consumerChannels object for that topic and add it to the consumerChannels map
-//// for that topic.  It also starts the routine that listens for messages on that topic.
+// // setupConsumerChannel creates a consumerChannels object for that topic and add it to the consumerChannels map
+// // for that topic.  It also starts the routine that listens for messages on that topic.
 func (sc *SaramaClient) setupPartitionConsumerChannel(ctx context.Context, topic *Topic, initialOffset int64) (chan proto.Message, error) {
 	var pConsumers []sarama.PartitionConsumer
 	var err error
diff --git a/pkg/kafka/sarama_client_test.go b/pkg/kafka/sarama_client_test.go
index cbbfe7e..8bc2728 100644
--- a/pkg/kafka/sarama_client_test.go
+++ b/pkg/kafka/sarama_client_test.go
@@ -1,17 +1,17 @@
 /*
- * Copyright 2018-present Open Networking Foundation
+* Copyright 2018-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
+* 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
+* 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.
+* 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.
  */
 package kafka
 
diff --git a/pkg/kafka/utils.go b/pkg/kafka/utils.go
index 608361b..02f4245 100644
--- a/pkg/kafka/utils.go
+++ b/pkg/kafka/utils.go
@@ -1,17 +1,17 @@
 /*
- * Copyright 2018-present Open Networking Foundation
+* Copyright 2018-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
+* 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
+* 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.
+* 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.
  */
 package kafka
 
@@ -72,7 +72,8 @@
 
 // TODO:  Remove and provide better may to get the device id
 // GetDeviceIdFromTopic extract the deviceId from the topic name.  The topic name is formatted either as:
-//			<any string> or <any string>_<deviceId>.  The device Id is 24 characters long.
+//
+//	<any string> or <any string>_<deviceId>.  The device Id is 24 characters long.
 func GetDeviceIdFromTopic(topic Topic) string {
 	pos := strings.LastIndex(topic.Name, TopicSeparator)
 	if pos == -1 {
@@ -113,7 +114,8 @@
 	return nil
 }
 
-/**
+/*
+*
 MonitorKafkaReadiness checks the liveliness and readiness of the kafka service
 and update the status in the probe.
 */