hbase/dev-support/create-release
Nick Dimiduk b3488fcdec HBASE-24160 create-release fails to process x.y.0 version info correctly
Current code gives me the following; notice default values generated
for `RELEASE_VERSION` and `api_diff_tag`.

```
GIT_BRANCH [branch-2.3]:
Current branch VERSION is 2.3.0-SNAPSHOT.
RELEASE_VERSION [2.3.-1]: 2.3.0
NEXT_VERSION [2.3.0-SNAPSHOT]: 2.3.1-SNAPSHOT
RC_COUNT [0]:
GIT_REF [2.3.0RC0]:
api_diff_tag, [rel/2.2.0)]:
```

With this patch I get

```
GIT_BRANCH [branch-2.3]:
Current branch VERSION is 2.3.0-SNAPSHOT.
RELEASE_VERSION [2.3.0]:
NEXT_VERSION [2.3.1-SNAPSHOT]:
RC_COUNT [0]:
GIT_REF [2.3.0RC0]:
api_diff_tag, [rel/2.2.0]:
```

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
2020-04-10 12:02:24 -07:00
..
hbase-rm HBASE-23945 Dockerfiles showing hadolint check failures 2020-03-10 12:30:56 -07:00
README.txt HBASE-23092 Make the RM tooling in dev-tools/create-release generic (#671) 2019-10-02 09:14:17 -07:00
do-release-docker.sh HBASE-23137 [create-release] Add passing of PROJECT variable for when building other than core (#701) 2019-10-08 15:12:14 -07:00
do-release.sh HBASE-23118 [RELEASE SCRIPTS] Allow creating a RC from an existing tag[RELEASE SCRIPTS] Allow creating a RC from an existing tag (#686) 2019-10-04 13:39:27 +08:00
release-build.sh HBASE-23337 Release scripts should rely on maven for deploy. (#887) 2019-12-02 06:39:24 -06:00
release-tag.sh HBASE-23720 [create-release] Update yetus version used from 0.11.0 to 0.11.1 2020-01-22 18:07:53 -08:00
release-util.sh HBASE-24160 create-release fails to process x.y.0 version info correctly 2020-04-10 12:02:24 -07:00
vote.tmpl HBASE-23092 Make the RM tooling in dev-tools/create-release generic (#671) 2019-10-02 09:14:17 -07:00

README.txt

Entrance script is _do-release-docker.sh_. Requires a local docker;
for example, on mac os x, Docker for Desktop installed and running.

For usage, pass '-h':

 $ ./do-release-docker.sh -h

To run a build w/o invoking docker (not recommeneded!), use
_do_release.sh_. It does not take parameters. It will ask
you what commands to run with taking defaults from environment.

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.