Author: rgardler
Date: Thu Mar 31 21:54:35 2011
New Revision: 1087453

URL: http://svn.apache.org/viewvc?rev=1087453&view=rev
Log:
add release and testing notes from CWiki, add some more steps and clarity to 
the release process

Added:
    incubator/wookie/site/trunk/content/wookie/docs/developer/
    incubator/wookie/site/trunk/content/wookie/docs/developer/index.mdtext   
(with props)
    incubator/wookie/site/trunk/content/wookie/docs/developer/release.mdtext   
(with props)
    
incubator/wookie/site/trunk/content/wookie/docs/developer/releaseTesting.mdtext 
  (with props)
Modified:
    incubator/wookie/site/trunk/content/wookie/siteMigration.mdtext
    incubator/wookie/site/trunk/templates/sidenav.mdtext

Added: incubator/wookie/site/trunk/content/wookie/docs/developer/index.mdtext
URL: 
http://svn.apache.org/viewvc/incubator/wookie/site/trunk/content/wookie/docs/developer/index.mdtext?rev=1087453&view=auto
==============================================================================
--- incubator/wookie/site/trunk/content/wookie/docs/developer/index.mdtext 
(added)
+++ incubator/wookie/site/trunk/content/wookie/docs/developer/index.mdtext Thu 
Mar 31 21:54:35 2011
@@ -0,0 +1,23 @@
+Title:     Developer Documentation Index
+Notice:    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.
+
+This section of the site contains documentation specifcally for the 
development team of Apache Wookie (Incubating).
+
+  - [Source Code](/wookie/docs/download.html)
+  - [Issue Tracker](https://issues.apache.org/jira/browse/WOOKIE)
+  - [Release process](release.html): describes how to cut a release

Propchange: 
incubator/wookie/site/trunk/content/wookie/docs/developer/index.mdtext
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/wookie/site/trunk/content/wookie/docs/developer/release.mdtext
URL: 
http://svn.apache.org/viewvc/incubator/wookie/site/trunk/content/wookie/docs/developer/release.mdtext?rev=1087453&view=auto
==============================================================================
--- incubator/wookie/site/trunk/content/wookie/docs/developer/release.mdtext 
(added)
+++ incubator/wookie/site/trunk/content/wookie/docs/developer/release.mdtext 
Thu Mar 31 21:54:35 2011
@@ -0,0 +1,210 @@
+Title:     Cutting a release
+Notice:    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.
+
+# Introduction
+
+This document is an overview of the release process for Apache Wookie 
(Incubating). 
+
+# Release Phases
+
+This section summarises each phase in the release process. There are more 
details for each phase in the sections below.
+
+  1. Development
+    1. Analyze Open Issues
+    1. Issue Fixing - ongoing - all issues should be resolved or moved
+    1. Issue Validation - all resolved issues must be checked as being truly 
fixed and thus marker as verified
+    1. Collect committer public keys
+    1. Licence Audit and Legal Audit - including headers, dependencies, 
LICENCE and NOTICE files
+  1. Release Candidate
+    1. Licence Audit and Legal Audit - including headers, dependencies, 
LICENCE and NOTICE files
+    1. Documentation – Check installation and build documentation for 
accuracy, create status document, create release notes
+    1. Create release branch on SVN – sign binaries, permissions
+    1. Test, test, test! (repeat from previous step until no problems emerge 
in test)
+  1. Prepare for release
+    1. Write the release announcement (with approval from press@)
+    1. Tag the release branch 
+    1. Build the release files
+    1. Singing of release files
+  1. Vote on release
+  1. Request approval from Incubator PCM
+  1. Release
+    1. Upload to incubator distributions site
+    1. Wait for mirroring to take place 
+    1. Announce the release
+
+## Development
+
+These steps are to be carried out in the run up to a relase. They are, in the 
main, an ongoing activity
+rather than a part of the release cycle itself.
+
+### Open Issues
+
+A list of outstanding issues is generated from Jira. This list is posted to 
the project developer list 
+with suggestions to either implement for the release or postpone for the next 
release. After community 
+discussion JIRA is updated accordingly.
+
+When deciding whether to implement an issue for this release be aware of 
taking on too much. It is more 
+important to get a release out than to complete all features. Release early, 
release often.
+
+Once complete this process gives a clear definition of what will be included 
in the release and allows 
+timescales to be estimated.
+
+### Issue Fixing and Verification
+
+Each issue for the release to be fixed then the fixes to be tested, reviewed 
and accepted.
+
+### Signatures
+
+The committers for the project need to provide public keys for the release, 
each person who submits a 
+key needs to keep the private key safe.  These will be included with the 
release in a KEYS file. The 
+process of creating a key pair should be consistent across the committers.  
Apache recommend using 
+GNU Privacy Guard to generate keys and sign the artifacts.
+
+Committers without a code signing key should generate one - RSA 4096 bits
+
+If committers have a DSA or RSA key of less than 2048 bits then a new one 
should be generated for 
+signing releases, again using RSA 4096 bit.
+
+For committers who already have an RSA key of 2048 bits or more some 
configuration of their client 
+to avoid weaknesses are required.  Instructions on how to do this can be found 
+[here](http://www.apache.org/dev/openpgp.html#sha1).
+
+#### Web of Trust (Post Release and ongoing)
+
+Once individuals have generated keys, opportunities should be taken (where 
possible) 
+to join the Apache Web of Trust. First the keys should be uploaded to a public 
key 
+server (is there a recommended one we should use?). Next key signing: if 
conferences 
+are attended or events where there are other Apache developers and there are 
key 
+signing parties.
+
+### License Audit and Legal Audit
+
+There is a need to check all licenses manually, including headers in source 
files etc... 
+The licenses for all libraries should be in place.  LICENSE and NOTICE files 
need to 
+be created. The Release Audit Tool (RAT) 
[report](http://ci.apache.org/projects/wookie/rat-output.html) 
+is helpful in this regard.
+
+In licenses/all_licenses.txt record the details of all dependencies; this 
should include not 
+only any libraries referenced directly in ivy.xml, but also any dependencies 
of features, connectors 
+and widgets. It is not, however, necessary to document licenses of secondary 
dependencies.
+
+The LICENSE file should contain our license and the licenses for all 
dependencies underneath.  
+The NOTICE file contains the following text modified for our project and the 
notices from 
+dependencies underneath.
+
+Apache PRODUCT_NAME
+Copyright yyyy The Apache Software Foundation
+
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+## Release Candidate
+
+This is the first real phase of the release process.
+
+### Documentation
+
+The installation and build documentation which is included with the release 
needs to be 
+checked for accuracy.  Other documentation is maintained online and can be 
modified when 
+required.  When we announce the release it would be good to review the 
documentation for 
+accuracy and usability. The status document can be generated from the issue 
tracker with 
+some introduction. Release notes need to be created including the standard 
incubator disclaimer.
+
+### Release Branch
+
+When we reach code freeze a branch should be created in which the release is 
built and 
+signed. This will allow continued development on trunk.  The branch can also 
be used to 
+maintain the release, but any changes or fixes there need to be merged back 
into trunk. 
+There is a detailed description here of an approach similar to this. When 
built and 
+signed the branch should be considered the release candidate for testing.
+
+### Build the release candidate
+
+The release candidate files are built from the release branch. The files to be 
provided are:
+
+  * source distribution
+  * standalone distribution
+  * WAR distribution
+
+### Testing
+
+The final build should be tested on all supported platforms, we provide a 
[minimal testing
+script](releaseTesting.html) for your to follow.  
+
+If any tests identify problems the community needs to decide if this is a 
blocker to the release or not.
+If not a blocker the issue should be documented, if a blocker it should be 
fixed and a new
+release candidate is built.
+
+## Prepare for release
+
+This is where we build the actual release.
+
+### Write release announcement
+
+The release announcement is written in cooperation with the press@ list.
+
+### Tag the release branch
+
+The release branch is tagged with the release number.
+
+### Build release files
+
+All release files are built from the tagged branch. Release files are:
+
+  * source distribution
+  * standalone distribution
+  * WAR distribution
+
+### Signing of release files
+
+A minimum of three committers must sign the release using their keys avilable 
in SVN.
+
+## Vote on the release
+
+The community votes on the release. Since the release candidate has been 
thoroughly tested
+by the community this should be a formality. However, it is an important 
formality as it 
+indicates that the project management committee have verified the legal 
integrity of the
+release.
+
+If you are a PMC member you should not vote +1 unless you are satisfied that 
the software is,
+to the best of your knowledge, ready for release.
+
+## Request incubator approval
+
+Whilst in the incubator the project needs to have official approvel from the 
Incubator PMC.
+As with the community vote this should be a formality, however, many incubator 
PMC
+members will check the legal status of the release as an added precaution.
+
+## Release
+
+All there is to do now is get the release out there.
+
+### Upload to incubator distribution site
+
+Once you have uploaded the files to the incubator distribution site you will 
need to check
+permissions and wait for mirroring to take place.
+
+### Announce the release
+
+The release announcement needs to be posted to:
+
+  * announce@
+  * wookie-users@
+  * wookie-dev@
+  * project website
\ No newline at end of file

Propchange: 
incubator/wookie/site/trunk/content/wookie/docs/developer/release.mdtext
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
incubator/wookie/site/trunk/content/wookie/docs/developer/releaseTesting.mdtext
URL: 
http://svn.apache.org/viewvc/incubator/wookie/site/trunk/content/wookie/docs/developer/releaseTesting.mdtext?rev=1087453&view=auto
==============================================================================
--- 
incubator/wookie/site/trunk/content/wookie/docs/developer/releaseTesting.mdtext 
(added)
+++ 
incubator/wookie/site/trunk/content/wookie/docs/developer/releaseTesting.mdtext 
Thu Mar 31 21:54:35 2011
@@ -0,0 +1,115 @@
+Title:     Testing a release
+Notice:    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.
+
+
+These are instructions to help community members with testing new releases.
+
+# Test Environment
+
+Ideally the client will access from a different network machine to the server.
+
+# Testing the Build and Run Scripts
+
+There are three different types of build to test for release.  All should be 
available in the latest release branch 
+on svn and/or in the staging area as declared on the wookie-dev list.
+
+  * download the appropriate build (all builds should be tested, not just one)
+  * for source and standalone builds run in standalone mode using the run 
target in ant
+  * for the war build deploy the war in your chosen container
+  * check index page responds
+
+# Widget Gallery
+
+  * open a new browser window on the server home page
+  * click view widget gallery
+  * pick a random widget and click "Demo"
+  * ensure the widget behaves as expected
+  * refresh the page
+  * ensure the widget behaves as expected
+  * repeat above for at least one other widget (more is better)
+
+# Administration
+## Widget Deployment
+
+  * open a new browser window on the server home page
+  * click "Administration menu"
+  * enter username and password (default is java, java)
+  * click "View existing widgets"
+  * expand random widgets and ensure page behaves as expected
+  * click back button
+  * click "add new widget"
+  * upload a test widget (we should provide a simple test widget 
+    in SVN that is packaged but not bundled with the release) 
+  * repeat the "Widget Gallery" tests above with the test widget
+
+## Gadget Deployment
+
+Note that Gadget deployment will only work if you have also installed Shindig 
+according to the instructions for Integrating Wookie with Shindig. If you 
+haven't installed and configured Shindig, skip this step.
+
+    * Repeat the Widget Deployment above but with a Gadget rather than a Widget
+
+## Remove Widget
+
+    * Click "Remove widget"
+    * find the test widget and delete it
+    * check widget is not available in widget gallery
+
+## Service Types
+
+FIXME: How do we test this?
+
+## White List
+
+    * Click White List, then...
+
+### Access request policies
+
+  * click "Manage widget access request policies"
+  * revoke policies for weather widget
+  * check Weather widget does not work via the gallery (note it silently fails 
at present)
+  * add http://feeds.bbc.co.uk to the whitelist
+  * check weather widget works via widget gallery
+
+### Instantiation
+
+  * go back to the index page (Other - back to main menu)
+  * click "instantiate a widget"
+  * select a random widget in "Service Type"
+  * click submit
+  * copy URL from returned XML document
+  * enter URL into browser
+  * check widget works OK
+
+### Reporting
+
+Thanks for testing. 
+
+Please be sure to report your successes and failures in the developer mailing 
list. 
+Please include:
+
+Release versions tested: Source/Standalone/WAR
+Server OSs:
+Server and browser separate machines?:
+Servlet Engine:
+Java version:
+Browsers tests:
+Browser versions:
+Tested with Shindig integration?: Yes/No
+Results: All tests passed/I had the following problem(s)
\ No newline at end of file

Propchange: 
incubator/wookie/site/trunk/content/wookie/docs/developer/releaseTesting.mdtext
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/wookie/site/trunk/content/wookie/siteMigration.mdtext
URL: 
http://svn.apache.org/viewvc/incubator/wookie/site/trunk/content/wookie/siteMigration.mdtext?rev=1087453&r1=1087452&r2=1087453&view=diff
==============================================================================
--- incubator/wookie/site/trunk/content/wookie/siteMigration.mdtext (original)
+++ incubator/wookie/site/trunk/content/wookie/siteMigration.mdtext Thu Mar 31 
21:54:35 2011
@@ -1,4 +1,4 @@
-Title:
+Title:     Site Migration
 Notice:    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
@@ -144,8 +144,8 @@ notes on their status in the migration. 
 
   <tr>
     <td>Testing a Release</td>
-    <td></td>
-    <td>Pending</td>
+    <td>docs/developer/releaseTesting.mdtext</td>
+    <td>Done</td>
     <td></td>
     <td></td>
   </tr>
@@ -216,8 +216,8 @@ notes on their status in the migration. 
 
   <tr>
     <td>Wookie First Release</td>
-    <td></td>
-    <td>Pending</td>
+    <td>/docs/developer/release.html</td>
+    <td>Done</td>
     <td></td>
     <td></td>
   </tr>

Modified: incubator/wookie/site/trunk/templates/sidenav.mdtext
URL: 
http://svn.apache.org/viewvc/incubator/wookie/site/trunk/templates/sidenav.mdtext?rev=1087453&r1=1087452&r2=1087453&view=diff
==============================================================================
--- incubator/wookie/site/trunk/templates/sidenav.mdtext (original)
+++ incubator/wookie/site/trunk/templates/sidenav.mdtext Thu Mar 31 21:54:35 
2011
@@ -20,7 +20,8 @@
 # Development
   - [Source Code](/wookie/docs/download.html)
   - [Environement](/wookie/docs/develop.html)
-  - [Issue Tracker](/wookie/https://issues.apache.org/jira/browse/WOOKIE)
+  - [Issue Tracker](https://issues.apache.org/jira/browse/WOOKIE)
+  - [Management](/wookie/docs/developer/index.html)
 
 # ASF
 


Reply via email to