diff --git a/openwhisk/_test/jar/META-INF/MANIFEST.MF b/openwhisk/_test/jar/META-INF/MANIFEST.MF
index eb1ebe1..ed5f179 100644
--- a/openwhisk/_test/jar/META-INF/MANIFEST.MF
+++ b/openwhisk/_test/jar/META-INF/MANIFEST.MF
@@ -1,4 +1,18 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
 Manifest-Version: 1.0
 Created-By: 1.8.0_191 (Oracle Corporation)
diff --git a/openwhisk/_test/jar/hello.txt b/openwhisk/_test/jar/hello.txt
old mode 100755
new mode 100644
index e4e2475..b1312a0
--- a/openwhisk/_test/jar/hello.txt
+++ b/openwhisk/_test/jar/hello.txt
@@ -1,2 +1,16 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
diff --git a/openwhisk/_test/pysample/exec b/openwhisk/_test/pysample/exec
index eedf580..c09a895 100755
--- a/openwhisk/_test/pysample/exec
+++ b/openwhisk/_test/pysample/exec
@@ -1,6 +1,20 @@
 #!/bin/bash
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
 cd "$(dirname $0)"
 export PYTHONPATH=$PWD/lib
 python lib/exec.py
diff --git a/tools/scancode/ASF-Release.cfg b/tools/scancode/ASF-Release.cfg
deleted file mode 100644
index 0d81052..0000000
--- a/tools/scancode/ASF-Release.cfg
+++ /dev/null
@@ -1,90 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-# scanCode.py configuration file
-
-# List of filenames containing the text of valid license (headers)
-# These files SHOULD be in the same directory path where scanCode.py
-# resides.
-[Licenses]
-ASFLicenseHeader.txt
-ASFLicenseHeaderBash.txt
-ASFLicenseHeaderHash.txt
-ASFLicenseHeaderLua.txt
-ASFMinifiedLicenseHashHeader.txt
-ASFMinifiedLicenseHeader.txt
-ASFMinifiedLicenseHeaderREM.txt
-
-# Filters (path/filename) with wildcards and associated scan checks
-# that are to be run against them.  The checks are actual valid
-# function names found in scanCode.py.
-[Includes]
-*=is_not_symlink, regex_check
-*.conf=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.go=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.gradle=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.groovy=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.html=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.java=no_tabs, has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.js=no_tabs, has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.lua=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.md=no_tabs, has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.properties=no_tabs, has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.py=no_tabs, has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.scala=has_block_license, no_tabs, no_trailing_spaces, eol_at_eof, regex_check
-*.sh=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.swift=no_tabs, has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.yaml=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-*.yml=has_block_license, no_trailing_spaces, eol_at_eof, regex_check
-
-# Sanity check files not required to have ASF headers because either they
-# are excluded or are not packaged with the Apache source release.
-*.cfg=regex_check
-*.ini=regex_check
-*.j2=regex_check
-*.json=regex_check
-*.txt=regex_check
-*.xml=regex_check
-
-# List of paths (inclusive of subdirectories) to exclude from code scanning
-[Excludes]
-
-# General tooling & binary file exclusions
-.bin
-.dockerignore
-.git
-.gitattributes
-.github
-.gitignore
-.jshintrc
-.profiling.*
-.pydevproject
-.rat-excludes
-.gogradle
-vendor
-.gradle/
-
-# Exclude performance test files (no significant content)
-openwhisk/tests/performance/wrk_tests
-openwhisk/tests/dat/actions
-openwhisk/docs/images
-openwhisk/bin
-
-# openwhisk-client-go, openwhisk-wskdeploy autogenerated Go files
-# NOTE: we SHOULD make this more granular, there are many .go files that can have
-# ASF license headers
-openwhisk-wskdeploy/specification/images
-wski18n
-
-# Exclude scancode tests that test for bad license headers
-openwhisk-utilities/scancode/tests/exclude
-
-[Options]
-# Not all code files allow licenses to appear starting at the first character
-# of the file. This option tells the scan to allow licenses to appear starting
-# within the first 'x' characters of each code file (as provided by this option's
-# value).
-LICENSE_SLACK_LENGTH=500
-
-# List of regular expressions for forbidden strings, e.g. \w+@company.com
-[Regex]
diff --git a/tools/travis/scan.sh b/tools/travis/scan.sh
index 96bd9e8..5242b68 100755
--- a/tools/travis/scan.sh
+++ b/tools/travis/scan.sh
@@ -26,5 +26,5 @@
 
 # run scancode using the ASF Release configuration
 pushd $UTILDIR
-scancode/scanCode.py --config $ROOTDIR/tools/scancode/ASF-Release.cfg $ROOTDIR
+scancode/scanCode.py --config scancode/ASF-Release.cfg $ROOTDIR
 popd
