more info on verifying the builds (whether downloaded or not) and vote (a 
script)

also tidy the release/dir moving pr_report to a subdir


Project: http://git-wip-us.apache.org/repos/asf/brooklyn-dist/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-dist/commit/06db67b4
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-dist/tree/06db67b4
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-dist/diff/06db67b4

Branch: refs/heads/0.8.0-incubating
Commit: 06db67b487a443bdba70044f17cecad6a8493585
Parents: a9e57ef
Author: Alex Heneveld <[email protected]>
Authored: Thu Sep 3 14:48:08 2015 +0100
Committer: Alex Heneveld <[email protected]>
Committed: Fri Sep 4 14:33:51 2015 +0100

----------------------------------------------------------------------
 release/Gemfile                           |   5 -
 release/Gemfile.lock                      |  38 --------
 release/README.md                         |   3 +-
 release/make-release-artifacts.sh         |   4 +-
 release/pr_report.rb                      |  12 ---
 release/print-vote-email.sh               | 129 +++++++++++++++++++++++++
 release/pull-request-reports/Gemfile      |   5 +
 release/pull-request-reports/Gemfile.lock |  38 ++++++++
 release/pull-request-reports/pr_report.rb |  12 +++
 9 files changed, 188 insertions(+), 58 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/Gemfile
----------------------------------------------------------------------
diff --git a/release/Gemfile b/release/Gemfile
deleted file mode 100644
index 8ab84b5..0000000
--- a/release/Gemfile
+++ /dev/null
@@ -1,5 +0,0 @@
-#ruby=ruby-2.1.2
-#ruby-gemset=brooklyn-release-helpers
-
-source 'https://rubygems.org'
-gem 'github_api'

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/Gemfile.lock
----------------------------------------------------------------------
diff --git a/release/Gemfile.lock b/release/Gemfile.lock
deleted file mode 100644
index 859202a..0000000
--- a/release/Gemfile.lock
+++ /dev/null
@@ -1,38 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    addressable (2.3.8)
-    descendants_tracker (0.0.4)
-      thread_safe (~> 0.3, >= 0.3.1)
-    faraday (0.9.1)
-      multipart-post (>= 1.2, < 3)
-    github_api (0.12.3)
-      addressable (~> 2.3)
-      descendants_tracker (~> 0.0.4)
-      faraday (~> 0.8, < 0.10)
-      hashie (>= 3.3)
-      multi_json (>= 1.7.5, < 2.0)
-      nokogiri (~> 1.6.3)
-      oauth2
-    hashie (3.4.2)
-    jwt (1.5.1)
-    mini_portile (0.6.2)
-    multi_json (1.11.1)
-    multi_xml (0.5.5)
-    multipart-post (2.0.0)
-    nokogiri (1.6.6.2)
-      mini_portile (~> 0.6.0)
-    oauth2 (1.0.0)
-      faraday (>= 0.8, < 0.10)
-      jwt (~> 1.0)
-      multi_json (~> 1.3)
-      multi_xml (~> 0.5)
-      rack (~> 1.2)
-    rack (1.6.4)
-    thread_safe (0.3.5)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  github_api

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/README.md
----------------------------------------------------------------------
diff --git a/release/README.md b/release/README.md
index f1976f6..325b165 100644
--- a/release/README.md
+++ b/release/README.md
@@ -44,6 +44,7 @@ run for example `/vagrant/make-release/artifacts.sh`.
 Pull request reporting
 ----------------------
 
-`pr_report.rb` (and associated files `Gemfile` and `Gemfile.lock`) uses the 
GitHub API to extract a list of open pull
+The files in `pull-request-reports`, mainly `pr_report.rb` 
+(and associated files `Gemfile` and `Gemfile.lock`) uses the GitHub API to 
extract a list of open pull
 requests, and writes a summary into `pr_report.tsv`. This could then be 
imported into Google Sheets to provide a handy
 way of classifying and managing outstanding PRs ahead of making a release.

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/make-release-artifacts.sh
----------------------------------------------------------------------
diff --git a/release/make-release-artifacts.sh 
b/release/make-release-artifacts.sh
index 8cefc77..b0b48d4 100755
--- a/release/make-release-artifacts.sh
+++ b/release/make-release-artifacts.sh
@@ -131,8 +131,8 @@ fi
 
 release_script_dir=$( cd $( dirname $0 ) && pwd )
 brooklyn_dir=$( pwd )
-staging_dir="${brooklyn_dir}/src-release-tmp/${release_name}-src"
-bin_staging_dir="${brooklyn_dir}/bin-release-tmp/${release_name}-bin"
+staging_dir="${release_script_dir}/tmp/working-src/${release_name}-src"
+bin_staging_dir="${release_script_dir}/tmp/working-bin/${release_name}-bin"
 artifact_dir="${release_script_dir}/${artifact_name}"
 
 echo "The version is ${current_version}"

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/pr_report.rb
----------------------------------------------------------------------
diff --git a/release/pr_report.rb b/release/pr_report.rb
deleted file mode 100644
index 95b6317..0000000
--- a/release/pr_report.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-#ruby
-
-require 'CSV'
-require 'github_api'
-
-gh = Github.new
-
-CSV.open("pr_report.tsv", "wb", { :col_sep => "\t" }) do |csv|
-  gh.pull_requests.list('apache', 'incubator-brooklyn').
-      select { |pr| pr.state == "open" }.
-      each { |pr| csv << [ pr.number, pr.title, pr.created_at, pr.user.login ] 
}
-end

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/print-vote-email.sh
----------------------------------------------------------------------
diff --git a/release/print-vote-email.sh b/release/print-vote-email.sh
new file mode 100755
index 0000000..ac62241
--- /dev/null
+++ b/release/print-vote-email.sh
@@ -0,0 +1,129 @@
+#!/bin/bash
+#
+# 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.
+#
+
+# prints a sample email with all the correct information
+
+set +x
+
+fail() {
+    echo >&2 "$@"
+    exit 1
+}
+
+if [ -z "${VERSION_NAME}" ] ; then fail VERSION_NAME must be set ; fi
+if [ -z "${RC_NUMBER}" ] ; then fail RC_NUMBER must be set ; fi
+
+base=apache-brooklyn-${VERSION_NAME}-rc${RC_NUMBER}
+
+if [ -z "$1" ] ; then fail "A single argument being the staging repo ID must 
be supplied, e.g. orgapachebrooklyn-1234" ; fi
+
+archetype_check=`curl 
https://repository.apache.org/content/repositories/${staging_repo_id}/archetype-catalog.xml
 2> /dev/null`
+if ! echo $archetype_check | grep brooklyn-archetype-quickstart > /dev/null ; 
then
+  fail staging repo looks wrong at 
https://repository.apache.org/content/repositories/${staging_repo_id}
+fi
+if ! echo $archetype_check | grep ${VERSION_NAME} > /dev/null ; then
+  fail wrong version at 
https://repository.apache.org/content/repositories/${staging_repo_id}
+fi
+
+artifact=release/tmp/${base}/${base}-bin.tar.gz
+if [ ! -f $artifact ] ; then
+  fail could not find artifact $artifact
+fi
+if [ -z "$APACHE_ID" ] ; then
+  APACHE_ID=`gpg2 --verify ${artifact}.asc ${artifact} 2>&1 | egrep -o 
'[^<]*@apache.org>' | cut -d @ -f 1`
+fi
+if [ -z "$APACHE_ID" ] ; then
+  fail "could not deduce APACHE_ID (your apache username); are files signed 
correctly?"
+fi
+if ! ( gpg2 --verify ${artifact}.asc ${artifact} 2>&1 | grep 
${APACHE_ID}@apache.org > /dev/null ) ; then
+  fail "could not verify signature; are files signed correctly and ID 
${APACHE_ID} correct?"
+fi
+
+cat <<EOF
+
+Subject: [VOTE] Release Apache Brooklyn ${VERSION_NAME} [rc${RC_NUMBER}]
+
+
+This is to call for a vote for the release of Apache Brooklyn ${VERSION_NAME}.
+
+This release comprises of a source code distribution, and a corresponding
+binary distribution, and Maven artifacts.
+
+The source and binary distributions, including signatures, digests, etc. can
+be found at:
+
+  https://dist.apache.org/repos/dist/dev/incubator/brooklyn/${base}
+
+The artifact SHA-256 checksums are as follows:
+
+EOF
+
+cat release/tmp/${base}/*.sha256 | awk '{print "  "$0}'
+
+cat <<EOF
+
+The Nexus staging repository for the Maven artifacts is located at:
+
+    https://repository.apache.org/content/repositories/${staging_repo_id}
+
+All release artifacts are signed with the following key:
+
+    https://people.apache.org/keys/committer/${APACHE_ID}.asc
+
+KEYS file available here:
+
+    https://dist.apache.org/repos/dist/release/incubator/brooklyn/KEYS
+
+
+The artifacts were built from git commit ID $( git rev-parse HEAD ):
+
+    
https://git-wip-us.apache.org/repos/asf?p=incubator-brooklyn.git;a=commit;h=$( 
git rev-parse HEAD )
+
+
+Please vote on releasing this package as Apache Brooklyn ${VERSION_NAME}.
+
+The vote will be open for at least 72 hours.
+[ ] +1 Release this package as Apache Brooklyn ${VERSION_NAME}
+[ ] +0 no opinion
+[ ] -1 Do not release this package because ...
+
+
+Thanks!
+EOF
+
+cat <<EOF
+
+
+
+CHECKLIST for reference
+
+[ ] Download links work.
+[ ] Binaries work.
+[ ] Checksums and PGP signatures are valid.
+[ ] Expanded source archive matches contents of RC tag.
+[ ] Expanded source archive builds and passes tests.
+[ ] LICENSE is present and correct.
+[ ] NOTICE is present and correct, including copyright date.
+[ ] All files have license headers where appropriate.
+[ ] All dependencies have compatible licenses.
+[ ] No compiled archives bundled in source archive.
+[ ] I follow this project’s commits list.
+
+EOF

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/pull-request-reports/Gemfile
----------------------------------------------------------------------
diff --git a/release/pull-request-reports/Gemfile 
b/release/pull-request-reports/Gemfile
new file mode 100644
index 0000000..8ab84b5
--- /dev/null
+++ b/release/pull-request-reports/Gemfile
@@ -0,0 +1,5 @@
+#ruby=ruby-2.1.2
+#ruby-gemset=brooklyn-release-helpers
+
+source 'https://rubygems.org'
+gem 'github_api'

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/pull-request-reports/Gemfile.lock
----------------------------------------------------------------------
diff --git a/release/pull-request-reports/Gemfile.lock 
b/release/pull-request-reports/Gemfile.lock
new file mode 100644
index 0000000..859202a
--- /dev/null
+++ b/release/pull-request-reports/Gemfile.lock
@@ -0,0 +1,38 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    addressable (2.3.8)
+    descendants_tracker (0.0.4)
+      thread_safe (~> 0.3, >= 0.3.1)
+    faraday (0.9.1)
+      multipart-post (>= 1.2, < 3)
+    github_api (0.12.3)
+      addressable (~> 2.3)
+      descendants_tracker (~> 0.0.4)
+      faraday (~> 0.8, < 0.10)
+      hashie (>= 3.3)
+      multi_json (>= 1.7.5, < 2.0)
+      nokogiri (~> 1.6.3)
+      oauth2
+    hashie (3.4.2)
+    jwt (1.5.1)
+    mini_portile (0.6.2)
+    multi_json (1.11.1)
+    multi_xml (0.5.5)
+    multipart-post (2.0.0)
+    nokogiri (1.6.6.2)
+      mini_portile (~> 0.6.0)
+    oauth2 (1.0.0)
+      faraday (>= 0.8, < 0.10)
+      jwt (~> 1.0)
+      multi_json (~> 1.3)
+      multi_xml (~> 0.5)
+      rack (~> 1.2)
+    rack (1.6.4)
+    thread_safe (0.3.5)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  github_api

http://git-wip-us.apache.org/repos/asf/brooklyn-dist/blob/06db67b4/release/pull-request-reports/pr_report.rb
----------------------------------------------------------------------
diff --git a/release/pull-request-reports/pr_report.rb 
b/release/pull-request-reports/pr_report.rb
new file mode 100644
index 0000000..95b6317
--- /dev/null
+++ b/release/pull-request-reports/pr_report.rb
@@ -0,0 +1,12 @@
+#ruby
+
+require 'CSV'
+require 'github_api'
+
+gh = Github.new
+
+CSV.open("pr_report.tsv", "wb", { :col_sep => "\t" }) do |csv|
+  gh.pull_requests.list('apache', 'incubator-brooklyn').
+      select { |pr| pr.state == "open" }.
+      each { |pr| csv << [ pr.number, pr.title, pr.created_at, pr.user.login ] 
}
+end

Reply via email to