HBASE-22854 Remove +x shell spew from do-release-*.sh create-release scripts
This commit is contained in:
parent
27ed2ac071
commit
53db390f60
|
@ -0,0 +1,41 @@
|
||||||
|
Entrance script is _do-release-docker.sh_. Requires a local docker;
|
||||||
|
for example, on mac os x, Docker for Desktop installed and running.
|
||||||
|
|
||||||
|
Before starting the RC build, run a reconciliation of what is in
|
||||||
|
JIRA with what is in the commit log. Make sure they align and that
|
||||||
|
anomalies are explained up in JIRA.
|
||||||
|
|
||||||
|
See http://hbase.apache.org/book.html#maven.release
|
||||||
|
|
||||||
|
Running a build on GCE is easy enough. Here are some notes if of use.
|
||||||
|
Create an instance. 4CPU/15G/10G disk seems to work well enough.
|
||||||
|
Once up, run the below to make your machine fit for RC building:
|
||||||
|
|
||||||
|
|
||||||
|
# Presuming debian-compatible OS
|
||||||
|
$ sudo apt-get install -y git openjdk-8-jdk maven gnupg gnupg-agent
|
||||||
|
# Install docker
|
||||||
|
$ sudo apt-get install -y \
|
||||||
|
apt-transport-https \
|
||||||
|
ca-certificates \
|
||||||
|
curl \
|
||||||
|
gnupg2 \
|
||||||
|
software-properties-common
|
||||||
|
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
|
||||||
|
$ sudo add-apt-repository -y \
|
||||||
|
"deb [arch=amd64] https://download.docker.com/linux/debian \
|
||||||
|
$(lsb_release -cs) \
|
||||||
|
stable"
|
||||||
|
$ sudo apt-get update
|
||||||
|
$ sudo apt-get install -y docker-ce docker-ce-cli containerd.io
|
||||||
|
$ sudo usermod -a -G docker $USERID
|
||||||
|
# LOGOUT and then LOGIN again so $USERID shows as part of docker groupl
|
||||||
|
# Copy up private key for $USERID export from laptop and import on gce.
|
||||||
|
$ gpg --import stack.duboce.net.asc
|
||||||
|
$ export GPG_TTY=$(tty) # https://github.com/keybase/keybase-issues/issues/2798
|
||||||
|
$ eval $(gpg-agent --disable-scdaemon --daemon --no-grab --allow-preset-passphrase --default-cache-ttl=86400 --max-cache-ttl=86400)
|
||||||
|
$ git clone https://github.com/apache/hbase.git
|
||||||
|
$ cd hbase
|
||||||
|
$ mkdir ~/build
|
||||||
|
$ ./dev-resources/create-release/do-release-docker.sh -d ~/build
|
||||||
|
# etc.
|
|
@ -46,7 +46,6 @@
|
||||||
#
|
#
|
||||||
# 1. https://github.com/apache/spark/tree/master/dev/create-release
|
# 1. https://github.com/apache/spark/tree/master/dev/create-release
|
||||||
#
|
#
|
||||||
set -x
|
|
||||||
set -e
|
set -e
|
||||||
SELF=$(cd $(dirname $0) && pwd)
|
SELF=$(cd $(dirname $0) && pwd)
|
||||||
. "$SELF/release-util.sh"
|
. "$SELF/release-util.sh"
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
|
|
||||||
# Called by do-release-docker.sh. Can be run standalone but needs some love
|
# Called by do-release-docker.sh. Can be run standalone but needs some love
|
||||||
# for it to work smooth.
|
# for it to work smooth.
|
||||||
set -x
|
|
||||||
SELF=$(cd $(dirname $0) && pwd)
|
SELF=$(cd $(dirname $0) && pwd)
|
||||||
. "$SELF/release-util.sh"
|
. "$SELF/release-util.sh"
|
||||||
|
|
||||||
|
|
|
@ -16,8 +16,6 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
set -x
|
|
||||||
|
|
||||||
trap cleanup EXIT
|
trap cleanup EXIT
|
||||||
|
|
||||||
SELF=$(cd $(dirname $0) && pwd)
|
SELF=$(cd $(dirname $0) && pwd)
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
set -x
|
|
||||||
DRY_RUN=${DRY_RUN:-0}
|
DRY_RUN=${DRY_RUN:-0}
|
||||||
GPG="gpg --pinentry-mode loopback --no-tty --batch"
|
GPG="gpg --pinentry-mode loopback --no-tty --batch"
|
||||||
ASF_REPO="https://gitbox.apache.org/repos/asf/hbase.git"
|
ASF_REPO="https://gitbox.apache.org/repos/asf/hbase.git"
|
||||||
|
|
|
@ -548,40 +548,33 @@ For the build to sign them for you, you a properly configured _settings.xml_ in
|
||||||
=== Making a Release Candidate
|
=== Making a Release Candidate
|
||||||
Only committers can make releases of hbase artifacts.
|
Only committers can make releases of hbase artifacts.
|
||||||
|
|
||||||
Making a Release Candidate (RC) is comprised of many involved steps.
|
|
||||||
The steps are described in detail below in the section
|
|
||||||
<<rc_procedure>> but a script that automates the process is
|
|
||||||
described first in <<do-release-docker.sh>>.
|
|
||||||
|
|
||||||
.Before You Begin
|
.Before You Begin
|
||||||
Check to be sure recent builds have been passing for the branch from where you
|
Check to be sure recent builds have been passing for the branch from where you
|
||||||
are going to take your release. You should also have tried recent branch tips
|
are going to take your release. You should also have tried recent branch tips
|
||||||
out on a cluster under load, perhaps by running the `hbase-it` integration test
|
out on a cluster under load, perhaps by running the `hbase-it` integration test
|
||||||
suite for a few hours to 'burn in' the near-candidate bits.
|
suite for a few hours to 'burn in' the near-candidate bits.
|
||||||
|
|
||||||
Make sure your environment is properly set up.
|
You will need a published signing key added to the hbase
|
||||||
|
|
||||||
You will need to have a published signing key added to the hbase
|
|
||||||
link:https://dist.apache.org/repos/dist/release/hbase/KEYS[KEYS] file.
|
link:https://dist.apache.org/repos/dist/release/hbase/KEYS[KEYS] file.
|
||||||
Browse the Hadoop link:http://wiki.apache.org/hadoop/HowToRelease[How To Release]
|
(For how to add a KEY, see _Step 1._ in link:https://cwiki.apache.org/confluence/display/HADOOP2/HowToRelease[How To Release],
|
||||||
wiki page on how to release. It is a model for the instructions below. It often has more
|
the Hadoop version of this document).
|
||||||
detail on particular steps. For example, _Step 1._ describes how to add
|
|
||||||
your code signing key to the
|
|
||||||
link:https://dist.apache.org/repos/dist/release/hbase/KEYS[KEYS] file up in Apache
|
|
||||||
(as well as outlinks on what a signing key is).
|
|
||||||
|
|
||||||
Next make sure JIRA is properly primed, that all issues targeted against
|
Next make sure JIRA is properly primed, that all issues targeted against
|
||||||
the prospective release have been resolved and are present in git on the
|
the prospective release have been resolved and are present in git on the
|
||||||
particular branch. If any outstanding, move them out of the release by
|
particular branch. If any outstanding issues, move them out of the release by
|
||||||
adjusting the fix version to remove this pending release as a target.
|
adjusting the fix version to remove this pending release as a target.
|
||||||
Any JIRA with a fix version that matches the release candidate
|
Any JIRA with a fix version that matches the release candidate
|
||||||
target release will be included in the generated _CHANGES.md/RELEASENOTES.md_
|
target release will be included in the generated _CHANGES.md/RELEASENOTES.md_
|
||||||
that ship with the release so make sure JIRA is correct before you begin.
|
files that ship with the release so make sure JIRA is correct before you begin.
|
||||||
(_Step 2._ in link:http://wiki.apache.org/hadoop/HowToRelease[How To Release]
|
|
||||||
talks of how it is done in Hadoop).
|
After doing the above, you can move to the manufacture of an RC.
|
||||||
|
Building an RC is involved. We've tried to script it. In the next section
|
||||||
|
we describe the script. It is followed by a description of the steps
|
||||||
|
involved which the script automates.
|
||||||
|
|
||||||
[[do-release-docker.sh]]
|
[[do-release-docker.sh]]
|
||||||
==== Release Candidate Generating Script
|
==== Release Candidate Generating Script
|
||||||
|
|
||||||
The _dev-support/create-release/do-release-docker.sh_ Release Candidate (RC)
|
The _dev-support/create-release/do-release-docker.sh_ Release Candidate (RC)
|
||||||
Generating script is maintained in the master branch but can generate RCs
|
Generating script is maintained in the master branch but can generate RCs
|
||||||
for any 2.x+ branch (The script does not work against branch-1). Check out
|
for any 2.x+ branch (The script does not work against branch-1). Check out
|
||||||
|
@ -612,6 +605,7 @@ The script will:
|
||||||
* Pushes to repository.apache.org staging.
|
* Pushes to repository.apache.org staging.
|
||||||
* Creates vote email template.
|
* Creates vote email template.
|
||||||
|
|
||||||
|
The RC building script is _dev-support/create-release/do-release-docker.sh_.
|
||||||
Pass _-h_ to _dev-support/create-release/do-release-docker.sh_ to
|
Pass _-h_ to _dev-support/create-release/do-release-docker.sh_ to
|
||||||
see available options:
|
see available options:
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue