You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@openwhisk.apache.org by GitBox <gi...@apache.org> on 2018/05/09 00:41:54 UTC

[GitHub] pritidesai closed pull request #143: Update tracking information and make this repo scancode compliant.

pritidesai closed pull request #143: Update tracking information and make this repo scancode compliant.
URL: https://github.com/apache/incubator-openwhisk-release/pull/143
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/NOTICE.md b/NOTICE.md
index 57655ec..e5682ab 100644
--- a/NOTICE.md
+++ b/NOTICE.md
@@ -1,3 +1,21 @@
+<!--
+#
+# 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.
+#
+-->
+
 Apache OpenWhisk Release
 Copyright 2016-2018 The Apache Software Foundation
 
diff --git a/README.md b/README.md
index 15b7c36..a0762c0 100644
--- a/README.md
+++ b/README.md
@@ -21,7 +21,7 @@
 [![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)
 [![Build Status](https://travis-ci.org/apache/incubator-openwhisk-release.svg?branch=master)](https://travis-ci.org/apache/incubator-openwhisk-release)
 
-The primary goal of this project is to provide the Apache OpenWhisk project's Release Managers the automation needed to guarantee a release complies with both the Apache Software Foundation's (ASF) [Release Creation Process](http://www.apache.org/dev/release-publishing.html) and [Release Policy](http://www.apache.org/legal/release-policy.html).
+The primary goal of this project is to provide the Apache OpenWhisk project's Release Managers the instructions and automation needed to guarantee a release complies with both the Apache Software Foundation's (ASF) [Release Creation Process](http://www.apache.org/dev/release-publishing.html) and [Release Policy](http://www.apache.org/legal/release-policy.html).
 
 Specifically, this repository provides Release Management of all designated Apache OpenWhisk project repositories, by automating:
 - Verification of the source code LICENSE and NOTICE files
@@ -33,11 +33,14 @@ Specifically, this repository provides Release Management of all designated Apac
 
 all in accordance with Apache guidelines.
 
-## Release Process Methodology
+
+# Release Process
+
+## Methodology
 
 This project uses Travis CI as the automated integration build tool to streamline the release process of Apache OpenWhisk. Stages can be applied to build different jobs, which are able to run either in sequential or parallel. Artifacts can be shared across different jobs by using the cache feature in Travis, as different jobs run on different virtual machines.
 
-## Release publishing
+## Publishing
 
 Staged candidate releases of Apache OpenWhisk artifacts are published to the approved staging repository path under Apache with all required PGP singatures:
 - https://dist.apache.org/repos/dist/dev/incubator/openwhisk/
@@ -45,17 +48,11 @@ Staged candidate releases of Apache OpenWhisk artifacts are published to the app
 Once candidates are approved, in accordance with required release processes and policies, their artifacts can be moved from the staging path to the approved release path:
 - https://dist.apache.org/repos/dist/release/incubator/openwhisk/.
 
-# Instructions for Release Managers
-
-## Release Manager Tutorial
-As a release manger of OpenWhisk, please visit [OpenWhisk Release tutorial](docs/tutorial.md).
-
 
-# Specifications to implement the above release process
+# Instructions
 
-To find the specifications about how to implement the Apache Release process for OpenWhisk project set, please visit the following page.
+Please follow the [Instructions for Release Managers](docs/release_instructions.md).
 
-- [General Specification](docs/general_spec.md)
 
 # Project status
 
@@ -177,6 +174,7 @@ The following table can be used by Release Managers to get quickly check the sta
 - The ScanCode column text is hyperlinked to the corresponding repository's build file that executes the scancode utility.
   - The ASF scan configuration for all repos. can be found here: [ASF-Release.cfg](https://github.com/apache/incubator-openwhisk-utilities/blob/master/scancode/ASF-Release.cfg).
 - The Slack badge is hyperlinked to the corresponding repository's public Slack channel (if one exists).
+- LICENSE and NOTICE file compliance tracking can be found here: [project_licenses.md](docs/project_licenses.md)
 
 # References
 - [Apache Release Creation Process](http://www.apache.org/dev/release-publishing.html)
diff --git a/docs/general_spec.md b/docs/general_spec.md
index 3802b42..9047d5d 100644
--- a/docs/general_spec.md
+++ b/docs/general_spec.md
@@ -16,18 +16,15 @@
 #
 -->
 
-# General plan to implement the Apache release process for OpenWhisk
+# Release Process Specification
 
-The purpose of this repository is to provide a one-stop entry tool to manage the release process of OpenWhisk in an automated
-way. 1,000 people will probably have 1,000 ideas about how to fulfill it, since we are living in such an innovative world.
-We believe they are all the valid routes, directing to our final destination, as long as they are compliant with the Apache
-release process. This specification just gives us one proposal, which may not be perfect, but will be proven to be capable of
-leading OpenWhisk team to the paradise, the release of shipped, packaged, Apache-compliant, able-to-run OpenWhisk source
-code and compiled artifacts.
+## Goals and plans
 
-Long story short, Apache generally needs two type of packages to be publicly available after the declaration of the release:
-source code and the compiled artifacts. We would like to divide the work into two major phases: release of source code and
-release of compiled artifacts.
+The purpose of this repository is to provide a one-stop entry tool to manage the release process of OpenWhisk in an automated way. 1,000 people will probably have 1,000 ideas about how to fulfill it, since we are living in such an innovative world.
+
+We believe they are all the valid routes, directing to our final destination, as long as they are compliant with the Apache release process. This specification just gives us one proposal, which may not be perfect, but will be proven to be capable of leading OpenWhisk team to the paradise, the release of shipped, packaged, Apache-compliant, able-to-run OpenWhisk source code and compiled artifacts.
+
+Long story short, Apache generally needs two type of packages to be publicly available after the declaration of the release: _source code_ and the _compiled artifacts_. We would like to divide the work into two major phases: release of source code and release of compiled artifacts.
 
 ## Release of OpenWhisk artifacts
 
@@ -73,7 +70,7 @@ We plan to release the following OpenWhisk repositories:
 # Proposed implementation
 ## How to automate the release process for OpenWhisk?
 
-Travis CI is proposed as the pipeline to walk through the download, verify, build and publish processes. 
+Travis CI is proposed as the pipeline to walk through the download, verify, build and publish processes.
 
 As we can predict, OpenWhisk is going to release continuously in the future, so we propose to create directories in a
 hierarchical structure with configuration files inside to map different releases and sub-releases of OpenWhisk. One major
@@ -177,7 +174,7 @@ create a directory named _1.0_ under _releases_, and a directory _milestone-1_ u
 files under _releases_/_current_ (because the release manager has used this directory to develop a new groups of hashes or
 tags for the coming release) into _releases_/_1.0_/_milestone-1_, the release manager submit a PR with the changes. When
 the PR is merged, a new commit in master branch is generated. The new tag named _1.0_-_milestone-1_ needs to be created,
-to kick off the Travis build, which will run based on the configuration files under _releases_/_1.0_/_milestone-1_. 
+to kick off the Travis build, which will run based on the configuration files under _releases_/_1.0_/_milestone-1_.
 
 There are plenty of Travis built-in variables we can use to identify the type of Travis build. We pick up different source
 code of OpenWhisk as the input to the Travis build pipeline, according to the type.
diff --git a/docs/pick_up_source_code.md b/docs/pick_up_source_code.md
index f03291d..6dff8ad 100644
--- a/docs/pick_up_source_code.md
+++ b/docs/pick_up_source_code.md
@@ -92,4 +92,4 @@ svn command with a pair of username and password, there is no need to provide th
 and <SVN_PASSWORD>. With this command, a remote folder named openwhisk-$version will be created in the subversion
 repository if necessary, and checked out to the local folder <WORK_DIR>/openwhisk_release/openwhisk/openwhisk-$full_version.
 The value of $full_version is $version-$pre_release_version, as defined in config.json. This command can also be used to
-sync-up your local folder with the remote subversion folder.
\ No newline at end of file
+sync-up your local folder with the remote subversion folder.
diff --git a/docs/prerequisites.md b/docs/prerequisites.md
index c91b903..aa6cded 100644
--- a/docs/prerequisites.md
+++ b/docs/prerequisites.md
@@ -25,7 +25,7 @@ This project is only supported under Mac or Ununtu operating system.
 ## Software packages
 
 The following software packages are required for your operating system.
- 
+
  - git and svn
  - jq
  - gpg or gnupg and expect
diff --git a/docs/project_licenses.md b/docs/project_licenses.md
index 186f779..07706e6 100644
--- a/docs/project_licenses.md
+++ b/docs/project_licenses.md
@@ -38,6 +38,7 @@ For convenience, the following table provides links to each project repository's
 <th width="310">Repository</th>
 <th width="220">LICENSE Notes</th>
 <th width="220">NOTICE Notes</th>
+<th width="220">ASF Header Exclusions</th>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk">incubator-openwhisk</a></td>
@@ -48,22 +49,16 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known exclusions</strong>:</p>
-<ul>
-<li>tests/dat/actions/empty.js</li>
-</ul>
-<p><strong>Non-bundled</strong>:</p>
-<ul>
-<li>Scala libraries: BSD 3-clause "New"</li>
-<li>PureConfig: MPL 2.0</li>
-<li>logback: Eclipse 1.0., GNU LPGL 2.1</li>
-<li>jcl-over-slf4j: MIT</li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/75">#75</a></p>
 </td>
+<td>
+<ul>
+<li>tests/dat/actions/empty.js</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-catalog">incubator-openwhisk-catalog</a></td>
@@ -74,15 +69,16 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-catalog/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known exclusions</strong>:</p>
-<ul>
-<li><span style="color: #ff0000;">None ?</span></li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-catalog/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/79">#79</a></p>
 </td>
+<td>
+<ul>
+<li><span style="color: #ff0000;">None ?</span></li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td>
@@ -94,23 +90,19 @@ For convenience, the following table provides links to each project repository's
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/95">#95</a></p>
 <p><strong>Copied licenses:</strong></p>
 <ul>
-<li>TBD</li>
-</ul>
-<p><strong>Known exclusions</strong>:</p>
-<ul>
-<li>lua_install</li>
-<li>tests/lua_modules</li>
-</ul>
-<p><strong>Notes</strong>:</p>
-<ul>
-<li>LUA License is an MIT derivative. It requires us to acknowledge copyright.</li>
-<li>Adobe License (MIT derivative) requires acknowledgement.</li>
+<li><span style="color: #ff0000;">TBD</span></li>
 </ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-apigateway/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/78">#78</a></p>
 </td>
+<td>
+<ul>
+<li>lua_install</li>
+<li>tests/lua_modules</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-cli">incubator-openwhisk-cli</a></td>
@@ -121,22 +113,23 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-cli/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known exclusions</strong>:</p>
-<ul>
-<li><span style="color: #ff0000;">tests files ?</span></li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-cli/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/76">#76</a></p>
 </td>
+<td>
+<ul>
+<li><span style="color: #ff0000;">tests files ?</span></li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-client-go">incubator-openwhisk-client-go</a></td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-client-go/blob/master/LICENSE.txt">LICENSE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/98">#98</a></p>
-<p><strong>Known exclusions</strong>:</p>
+<p>Copied Licenses:</p>
 <ul>
 <li><span style="color: #ff0000;">TBD</span></li>
 </ul>
@@ -145,6 +138,11 @@ For convenience, the following table provides links to each project repository's
 <p><a href="https://github.com/apache/incubator-openwhisk-client-go/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/77">#77</a></p>
 </td>
+<td>
+<ul>
+<li><span style="color: #ff0000;">TBD</span></li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-wskdeploy">incubator-openwhisk-wskdeploy</a></td>
@@ -153,10 +151,6 @@ For convenience, the following table provides links to each project repository's
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/94">#94</a></p>
 <p><strong>Copied licenses</strong>:</p>
 <ul>
-<li>TBD</li>
-</ul>
-<p><strong>Known exclusions</strong>:</p>
-<ul>
 <li><span style="color: #ff0000;">TBD</span></li>
 </ul>
 </td>
@@ -164,6 +158,11 @@ For convenience, the following table provides links to each project repository's
 <p><a href="https://github.com/apache/incubator-openwhisk-wskdeploy/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/86">#86</a></p>
 </td>
+<td>
+<ul>
+<li><span style="color: #ff0000;">TBD</span></li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-runtime-nodejs">incubator-openwhisk-runtime-nodejs</a></td>
@@ -172,25 +171,20 @@ For convenience, the following table provides links to each project repository's
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/99">#99</a></p>
 <p><strong>Copied licenses</strong>:</p>
 <ul>
-<li>TBD</li>
-</ul>
-<p><strong>Known exclusions</strong>:</p>
-<ul>
-<li>
-<div style="-en-clipboard: true;">tests/src/test/resources/application.conf</div>
-</li>
-<li>
-<div>&nbsp;ansible/environments/local/group_vars/all</div>
-</li>
-<li>
-<div>ansible/environments/local/hosts</div>
-</li>
+<li><span style="color: #ff0000;">TBD</span></li>
 </ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-runtime-nodejs/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/82">#82</a></p>
 </td>
+<td>
+<ul>
+<li>tests/src/test/resources/application.conf</li>
+<li>ansible/environments/local/group_vars/all</li>
+<li>ansible/environments/local/hosts</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-runtime-swift"> incubator-openwhisk-runtime-swift</a></td>
@@ -201,15 +195,16 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-runtime-swift/tree/master/license">license *</a></li>
 </ul>
-<p><strong>Known exceptions</strong>:</p>
-<ul>
-<li>tests/dat/actions/SwiftyRequest/Package.resolved</li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-runtime-swift/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/85">#85</a></p>
 </td>
+<td>
+<ul>
+<li>tests/dat/actions/SwiftyRequest/Package.resolved</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-runtime-docker">incubator-openwhisk-runtime-docker</a></td>
@@ -220,23 +215,19 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-runtime-docker/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known exceptions</strong>:</p>
-<ul>
-<li>
-<div style="-en-clipboard: true;">tests/src/test/resources/application.conf</div>
-</li>
-<li>
-<div>&nbsp;ansible/environments/local/group_vars/all</div>
-</li>
-<li>
-<div>ansible/environments/local/hosts</div>
-</li>
-</ul>
+<p>&nbsp;</p>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-runtime-docker/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/80">#80</a></p>
 </td>
+<td>
+<ul>
+<li>tests/src/test/resources/application.conf</li>
+<li>ansible/environments/local/group_vars/all</li>
+<li>ansible/environments/local/hosts</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-runtime-java">incubator-openwhisk-runtime-java</a></td>
@@ -247,23 +238,18 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-runtime-java/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known Exceptions</strong>:</p>
-<ul>
-<li>
-<div style="-en-clipboard: true;">tests/src/test/resources/application.conf</div>
-</li>
-<li>
-<div>ansible/environments/local/group_vars/all</div>
-</li>
-<li>
-<div>ansible/environments/local/hosts</div>
-</li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-runtime-java/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/81">#81</a></p>
 </td>
+<td>
+<ul>
+<li>tests/src/test/resources/application.conf</li>
+<li>ansible/environments/local/group_vars/all</li>
+<li>ansible/environments/local/hosts</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-runtime-php">incubator-openwhisk-runtime-php</a></td>
@@ -274,23 +260,18 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-runtime-php/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known Exceptions</strong>:</p>
-<ul>
-<li>
-<div>tests/src/test/resources/application.conf</div>
-</li>
-<li>
-<div>ansible/environments/local/group_vars/all</div>
-</li>
-<li>
-<div>ansible/environments/local/hosts</div>
-</li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-runtime-php/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/83">#83</a></p>
 </td>
+<td>&nbsp;
+<ul>
+<li>tests/src/test/resources/application.conf</li>
+<li>ansible/environments/local/group_vars/all</li>
+<li>ansible/environments/local/hosts</li>
+</ul>
+</td>
 </tr>
 <tr align="left" valign="top">
 <td><a href="https://github.com/apache/incubator-openwhisk-runtime-python">incubator-openwhisk-runtime-python</a></td>
@@ -301,23 +282,18 @@ For convenience, the following table provides links to each project repository's
 <ul>
 <li><a href="https://github.com/apache/incubator-openwhisk-runtime-python/tree/master/licenses">licenses</a></li>
 </ul>
-<p><strong>Known Exceptions</strong>:</p>
-<ul>
-<li>
-<div>tests/src/test/resources/application.conf</div>
-</li>
-<li>
-<div>ansible/environments/local/group_vars/all</div>
-</li>
-<li>
-<div>ansible/environments/local/hosts</div>
-</li>
-</ul>
 </td>
 <td>
 <p><a href="https://github.com/apache/incubator-openwhisk-runtime-python/blob/master/NOTICE.txt">NOTICE</a></p>
 <p><strong>Tracking</strong>: <a href="https://github.com/apache/incubator-openwhisk-release/issues/84">#84</a></p>
 </td>
+<td>&nbsp;
+<ul>
+<li>tests/src/test/resources/application.conf</li>
+<li>ansible/environments/local/group_vars/all</li>
+<li>ansible/environments/local/hosts</li>
+</ul>
+</td>
 </tr>
 </tbody>
 </table>
diff --git a/docs/tutorial.md b/docs/release_instructions.md
similarity index 88%
rename from docs/tutorial.md
rename to docs/release_instructions.md
index 6ca2ec4..9f17d18 100644
--- a/docs/tutorial.md
+++ b/docs/release_instructions.md
@@ -16,51 +16,13 @@
 #
 -->
 
-# Release Manager Tutorial
+# Instructions for Release Managers
 
-## Key requirements for producing releases
-
-As a Release Manager, please know that most of these requirements are addressed via the release process automation provided in this project; however, some steps are manual. Regardless of automation, it is good to understand all the key considerations and requirements that a release manager is ultimately responsible for.
-
-### Licensing requirements
-
-All the source code has to be compliant with Apache Licensing Policy, by adding the LICENSE file, NOTICE file to each repository and the release package, and adding Licensing headers to each source code file. Please visit [License_Compliance](docs/license_compliance.md) for detailed information.
-
-### Artifact requirements Artifacts for project repository source code and any compiled binaries are packaged separately with each artifact being signed cryptographically.
-
-Source code needs to provide the installation script for users to deploy a full OpenWhisk environment. We target to implement this step in Travis build.
-
-### Release distribution requirements
-
-These steps have been **automated** for the Release Manager.
-
-All release artifacts must be uploaded to project’s designated subdirectory in the Apache distribution channel (i.e., [https://dist.apache.org/repos/dist/](https://dist.apache.org/repos/dist/)).
-
-Specifically, the Apache OpenWhisk project has paths to publish both candidate (staged) releases:
-- [https://dist.apache.org/repos/dist/dev/incubator/openwhisk/](https://dist.apache.org/repos/dist/dev/incubator/openwhisk/)
-
-and the approved release path:
-- [https://dist.apache.org/repos/dist/release/incubator/openwhisk/](https://dist.apache.org/repos/dist/release/incubator/openwhisk/).
-
-
-### Release Approval
-
-These steps are **manual** and must be performed by the Release Manager.
-
-Apache requires a minimum of three positive votes and more positive than negative votes MUST be cast, in order to release.
-
--The Release manager for Apache OpenWhisk sends a release note to the OpenWhisk mailing for votes, and opens the mail for 72 hours.
-- **TBD** We can create JIRA issue for this release and close it when the requirement is met and ready for release. **TODO** further document discrete steps/requirements community agrees upon.
-
-### Create Release notes
-
-An example of the release note can be found at the following link: [example of release note](https://github.com/apache/cordova-coho/blob/master/docs/coho-release-process.md).
-
-# Release Process
+# Release process
 
 This project offers the Apache OpenWhisk Release Manager two modes to release OpenWhisk projects:
-- Manual mode and
-- Automated mode.
+- **Manual mode** and
+- **Automated mode**
 
 _Manual mode_ makes sure that the release manager can download the source code of this repository, and go through the release process by running scripts sequentially on a local machine, to push the artifacts into the staging directory and eventually move them into the Apache release directory.
 
@@ -94,3 +56,46 @@ The release manager can take full advantage of Travis CI to implement the releas
 * **Tag-based Travis build**: the Travis build triggered by git tag. After the vote succeeds in the community, we decide to move the artifacts from the staging directory to the Apache release directory. This type of Travis build is responsible for this task.
 
 In summary, the release process of OpenWhisk is the process of developing the configuration file _config.json_ for a certain release.
+
+## Key requirements for producing releases
+
+As a Release Manager, please know that most of these requirements are addressed via the release process automation provided in this project; however, some steps are manual. Regardless of automation, it is good to understand all the key considerations and requirements that a release manager is ultimately responsible for.
+
+### Licensing requirements
+
+All released source code has to be compliant with Apache Licensing Policy, by adding the LICENSE file, NOTICE file to each repository and the release package, and adding Licensing headers to each source code file.
+- Please visit [License_Compliance](docs/license_compliance.md) for detailed information
+
+The following page provides tracking information on all Apache OpenWhisk project repositories LICENSE and NOTICE file compliance as we prepare for our first release under the Incubator:
+- [Project License Compliance Tracking](project_licenses.md)
+
+### Artifact requirements
+
+Artifacts for project repository source code and any compiled binaries are packaged separately with each artifact being signed cryptographically.
+
+Source code needs to provide the installation script for users to deploy a full OpenWhisk environment. We target to implement this step in Travis build.
+
+### Release distribution requirements
+
+These steps have been **automated** for the Release Manager.
+
+All release artifacts must be uploaded to project’s designated subdirectory in the Apache distribution channel (i.e., [https://dist.apache.org/repos/dist/](https://dist.apache.org/repos/dist/)).
+
+Specifically, the Apache OpenWhisk project has paths to publish both candidate (staged) releases:
+- [https://dist.apache.org/repos/dist/dev/incubator/openwhisk/](https://dist.apache.org/repos/dist/dev/incubator/openwhisk/)
+
+and the approved release path:
+- [https://dist.apache.org/repos/dist/release/incubator/openwhisk/](https://dist.apache.org/repos/dist/release/incubator/openwhisk/).
+
+### Release Approval
+
+These steps are **manual** and must be performed by the Release Manager.
+
+Apache requires a minimum of three positive votes and more positive than negative votes MUST be cast, in order to release.
+
+-The Release manager for Apache OpenWhisk sends a release note to the OpenWhisk mailing for votes, and opens the mail for 72 hours.
+- **TBD** We can create JIRA issue for this release and close it when the requirement is met and ready for release. **TODO** further document discrete steps/requirements community agrees upon.
+
+### Create Release notes
+
+An example of the release note can be found at the following link: [example of release note](https://github.com/apache/cordova-coho/blob/master/docs/coho-release-process.md).
diff --git a/docs/work_items.md b/docs/work_items.md
index 0b4a59c..431d06a 100644
--- a/docs/work_items.md
+++ b/docs/work_items.md
@@ -32,7 +32,7 @@ This release of the source code packages need to have the following features imp
 
 All the source code OpenWhisk project is located at the Github website. If a configuration file is in place, we should
 be able to download the source code, based on the hash values or tags, defined for each specified repository. This
-feature can be implemented in a bash script, which is able to run both on a local machine or in Travis build. 
+feature can be implemented in a bash script, which is able to run both on a local machine or in Travis build.
 
 The script can be named "download_source_code.sh". When this repository is cloned, go to the home directory of this repository,
 and run ./download_source_code.sh in a terminal. The source code of OpenWhisk projects should be downloaded to either
@@ -94,12 +94,12 @@ the NOTICE and LICENSE, before we upload artifacts to any repository, like the s
 
 Each OpenWhisk project needs to have one compiled package, and one source code package. This is probably where the Maven
 release plugin can play out. As we have already downloaded the source code of each OpenWhisk repository, Maven command
-can be used to generate all the artifacts. 
+can be used to generate all the artifacts.
 
 One challenge we can think of is that OpenWhisk consists of projects based on different programming languages individually,
 we need to figure out how to package the artifacts differently for different languages, by using the similar or
 consistent build environment. OpenWhisk core is based on Scala, CLI is based on Go, wskdeploy is based on Go, api gateway
-is based on lua, runtime project may be based on its native runtime language, etc. 
+is based on lua, runtime project may be based on its native runtime language, etc.
 
 Another important item in this step is to sign the artifacts cryptographically for the release. We need to figure out
 how to do it, either in Travis CI, Jenkins pipeline, or any other building tools.
diff --git a/tools/pgp_key_gen.conf b/tools/pgp_key_gen.conf
index 4f1b8d2..769792e 100644
--- a/tools/pgp_key_gen.conf
+++ b/tools/pgp_key_gen.conf
@@ -1,3 +1,6 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more contributor
+# license agreements; and to You under the Apache License, Version 2.0.
+
 %echo Generating a basic OpenPGP key
 Key-Type: RSA
 Key-Length: 4096
@@ -7,4 +10,4 @@ Name-Email: apacheopenwhisk@gmail.com
 Expire-Date: 0
 Passphrase: openwhisk
 %commit
-%echo done
\ No newline at end of file
+%echo done
diff --git a/tools/util.sh b/tools/util.sh
index 055c8ea..fdb3775 100755
--- a/tools/util.sh
+++ b/tools/util.sh
@@ -58,4 +58,4 @@ function import_key_verify_signature() {
         echo "[✓] Signatures verified for $artifact" \
           || { echo "[x] Invalid signature for $artifact."; exit 1; }
     done
-}
\ No newline at end of file
+}


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services