This is an automated email from the ASF dual-hosted git repository.
jinwoo pushed a commit to branch support/2.0
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/support/2.0 by this push:
new 3ffaa3cf3f GEODE-10467: Remove unneeded scripts
3ffaa3cf3f is described below
commit 3ffaa3cf3fa4586ad9c234e7c0bbd4c5cf2ece72
Author: Jinwoo Hwang <[email protected]>
AuthorDate: Sun Nov 30 18:42:54 2025 -0500
GEODE-10467: Remove unneeded scripts
Remove likely-to-become-outdated copies of release scripts to ensure
they are not run by accident from a branch (they should always be run
from develop).
Also remove CODEOWNERS to avoid the confusion of GitHub showing owner
names like on develop, but codeowner reviews not actually being
required (due to lack of branch protection or minimum review count on
support branches)
---
dev-tools/release/README.md | 32 +-
dev-tools/release/commit_rc.sh | 163 -------
dev-tools/release/create_support_branches.sh | 292 -----------
dev-tools/release/deploy_rc_pipeline.sh | 655 -------------------------
dev-tools/release/end_of_support.sh | 155 ------
dev-tools/release/license_review.sh | 377 --------------
dev-tools/release/prepare_rc.sh | 374 --------------
dev-tools/release/print_announce_email.sh | 102 ----
dev-tools/release/print_rc_email.sh | 101 ----
dev-tools/release/promote_rc.sh | 703 ---------------------------
dev-tools/release/set_copyright.sh | 68 ---
dev-tools/release/set_versions.sh | 215 --------
12 files changed, 1 insertion(+), 3236 deletions(-)
diff --git a/dev-tools/release/README.md b/dev-tools/release/README.md
index a5a51e20bb..4bc08cde7d 100644
--- a/dev-tools/release/README.md
+++ b/dev-tools/release/README.md
@@ -1,31 +1 @@
-# geode/dev-tools/release
-This directory contains scripts to help create a release of Geode and manage
branches.
-
-Not all release steps have scripts. Please follow all instructions as
documented in the wiki: [Releasing Apache
Geode](https://cwiki.apache.org/confluence/display/GEODE/Releasing+Apache+Geode).
-
-These scripts are intended to be run from the parent directory of your geode
develop checkout, e.g.:
-
- $ cd ..
- $ geode/dev-tools/release/foo.sh
-
-## Overview of scripts
-
-**license\_review.sh** compares versions with a previous release and/or checks
that all bundled dependencies are noted in appropriate LICENSE file
-
-**create\_support\_branches.sh** cuts support/x.y from develop for all
projects and walks you through creating pipelines and setting version numbers
-
-**set\_copyright.sh** updates the copyright year
-
-**set\_versions.sh** updates files that need to contain the version number
planned for the next release from this support branch
-
-**prepare\_rc.sh** Checks out the various geode repos, builds a release
candidate, and publishes to nexus staging repo
-
-**commit\_rc.sh** Pushes the tags and artifacts staged by prepare\_rc.sh and
then runs print\_rc\_email.sh
-
-**print\_rc\_email.sh** Generates an email to send to the dev list announcing
a release candidate
-
-**promote\_rc.sh** Tags an RC as the final release, builds docker images,
merges to master, uploads to mirrors, and starts the brew process
-
-**print\_annouce\_email.sh** Generates an email to send to all lists
announcing a release
-
-**end\_of\_support.sh** cleans up pipelines and branches after N-2 support
lifetime is reached
+See [Releasing Apache
Geode](https://cwiki.apache.org/confluence/display/GEODE/Releasing+Apache+Geode)
diff --git a/dev-tools/release/commit_rc.sh b/dev-tools/release/commit_rc.sh
deleted file mode 100755
index eb454795bf..0000000000
--- a/dev-tools/release/commit_rc.sh
+++ /dev/null
@@ -1,163 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: commit_rc.sh -j ticket -v version_number -m maven_repo_id"
- echo " -j The GEODE-nnnnn Jira identifier for this release"
- echo " -v The #.#.#.RC# version number"
- echo " -m The 4 digit id of the nexus maven repo"
- exit 1
-}
-
-JIRA=""
-FULL_VERSION=""
-MAVEN=""
-
-while getopts ":j:v:m:" opt; do
- case ${opt} in
- j )
- JIRA=$OPTARG
- ;;
- v )
- FULL_VERSION=$OPTARG
- ;;
- m )
- MAVEN=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${JIRA} == "" ]] || [[ ${FULL_VERSION} == "" ]] || [[ ${MAVEN} == "" ]];
then
- usage
-fi
-
-if [[ $FULL_VERSION =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.(RC[0-9]+)$ ]]; then
- VERSION=${BASH_REMATCH[1]}
-else
- echo "Malformed version number ${FULL_VERSION}. Example valid version:
1.9.0.RC1"
- exit 1
-fi
-
-VERSION_MM=${VERSION%.*}
-
-set -x
-WORKSPACE=$PWD/release-${VERSION}-workspace
-GEODE=$WORKSPACE/geode
-GEODE_EXAMPLES=$WORKSPACE/geode-examples
-GEODE_NATIVE=$WORKSPACE/geode-native
-GEODE_BENCHMARKS=$WORKSPACE/geode-benchmarks
-SVN_DIR=$WORKSPACE/dist/dev/geode
-set +x
-
-if [ -d "$GEODE" ] && [ -d "$GEODE_EXAMPLES" ] && [ -d "$GEODE_NATIVE" ] && [
-d "$GEODE_BENCHMARKS" ] && [ -d "$SVN_DIR" ] ; then
- true
-else
- echo "Please run this script from the same working directory as you
initially ran prepare_rc.sh"
- exit 1
-fi
-
-
-function failMsg {
- errln=$1
- echo "ERROR: script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
87-$(( errln - 1 ))) and try again"
-}
-trap 'failMsg $LINENO' ERR
-
-
-echo ""
-echo "============================================================"
-echo "Publishing artifacts to apache release location..."
-echo "============================================================"
-set -x
-cd ${SVN_DIR}
-svn commit -m "$JIRA: Release Apache Geode ${FULL_VERSION}
-
-Publish the source, binary, and checksum artifacts to ASF svn server,
-from which they will be picked up and published within 15 minutes to
-the URLs on https://geode.apache.org/releases/"
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Adding temporary commit for geode-examples to build against staged
${FULL_VERSION}..."
-echo "============================================================"
-set -x
-cd ${GEODE_EXAMPLES}
-set +x
-sed -e 's#^geodeRepositoryUrl *=.*#geodeRepositoryUrl =
https://repository.apache.org/content/repositories/orgapachegeode-'"${MAVEN}#" \
- -e 's#^geodeReleaseUrl *=.*#geodeReleaseUrl =
https://dist.apache.org/repos/dist/dev/geode/'"${FULL_VERSION}#" -i.bak
gradle.properties
-rm gradle.properties.bak
-set -x
-git add gradle.properties
-git diff --staged --color | cat
-git commit -m "$JIRA: Set temporary staging repo
-
-This serves two purposes: it gives the RC pipeline a way to get the
-nexus staging repo id needed for various tests, and it gives the
-Jenkins server a valid configuration during the voting period."
-git push
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Keeping -build.0 suffix"
-echo "============================================================"
-cd ${GEODE}/../..
-set -x
-${0%/*}/set_versions.sh -j $JIRA -v ${VERSION} -s -n -w "${WORKSPACE}"
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Pushing copyrights, versions, and tags..."
-echo "============================================================"
-for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ; do
- set -x
- cd ${DIR}
- git pull -r
- git push -u origin
- git push origin rel/v${FULL_VERSION}
- set +x
-done
-
-
-echo ""
-echo "============================================================"
-echo "Done publishing the release candidate! Next steps:"
-echo "============================================================"
-cd ${GEODE}/../..
-echo "1. In a separate terminal window, ${0%/*}/deploy_rc_pipeline.sh -v
${VERSION_MM}"
-echo "2. Monitor
https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-support-${VERSION_MM//./-}-rc
until all green"
-echo "3. If you haven't already, add a ${VERSION} section to
https://cwiki.apache.org/confluence/display/GEODE/Release+Notes"
-JIRABASE=https://issues.apache.org/jira/secure
-jiraverid=$(curl -fs $JIRABASE'/ConfigureReleaseNote.jspa?projectId=12318420'
| tr -d ' \n' | tr '<' '\n'| awk
'/optionvalue.*'$VERSION'$/{sub(/optionvalue="/,"");sub(/">.*/,"");print}')
-echo " The 'full list' link will be
$JIRABASE/ReleaseNote.jspa?projectId=12318420&version=$jiraverid"
-echo "4. Send the following email to announce the RC:"
-echo "To: [email protected]"
-echo "Subject: [VOTE] Apache Geode ${FULL_VERSION}"
-${0%/*}/print_rc_email.sh -v ${FULL_VERSION} -m ${MAVEN}
-echo ""
-which pbcopy >/dev/null && ${0%/*}/print_rc_email.sh -v ${FULL_VERSION} -m
${MAVEN} | pbcopy && echo "(copied to clipboard)"
diff --git a/dev-tools/release/create_support_branches.sh
b/dev-tools/release/create_support_branches.sh
deleted file mode 100755
index c13e411101..0000000000
--- a/dev-tools/release/create_support_branches.sh
+++ /dev/null
@@ -1,292 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: create_support_branches.sh -j ticket -v version_number -g
your_github_username"
- echo " -j The GEODE-nnnnn Jira identifier for this release"
- echo " -v The #.# version number of the support branch to create"
- echo " -g Your github username"
- exit 1
-}
-
-JIRA=""
-VERSION_MM=""
-GITHUB_USER=""
-
-while getopts ":j:v:g:" opt; do
- case ${opt} in
- j )
- JIRA=$OPTARG
- ;;
- v )
- VERSION_MM=$OPTARG
- ;;
- g )
- GITHUB_USER=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${JIRA} == "" ]] || [[ ${VERSION_MM} == "" ]] || [[ ${GITHUB_USER} == ""
]] ; then
- usage
-fi
-
-if [[ $VERSION_MM =~ ^([0-9]+\.[0-9]+)$ ]]; then
- true
-else
- echo "Malformed version number ${VERSION_MM}. Example valid version: 1.9"
- exit 1
-fi
-
-MAJOR=${VERSION_MM%.*}
-MINOR=${VERSION_MM#*.}
-
-#tip: hardcode NEWMAJOR and NEWMINOR as needed if jumping to a new major
-NEWMAJOR=${MAJOR}
-NEWMINOR=$((MINOR + 1))
-
-NEWVERSION_MM=${NEWMAJOR}.${NEWMINOR}
-NEWVERSION_MM_NODOT=${NEWVERSION_MM//./}
-NEWVERSION=${NEWVERSION_MM}.0
-
-set -x
-WORKSPACE=$PWD/support-${VERSION_MM}-workspace
-GEODE=$WORKSPACE/geode
-GEODE_DEVELOP=$WORKSPACE/geode-develop
-GEODE_EXAMPLES=$WORKSPACE/geode-examples
-GEODE_EXAMPLES_DEVELOP=$WORKSPACE/geode-examples-develop
-GEODE_NATIVE=$WORKSPACE/geode-native
-GEODE_BENCHMARKS=$WORKSPACE/geode-benchmarks
-set +x
-
-
-function failMsg1 {
- echo "ERROR: script did NOT complete successfully. Please try again."
-}
-trap failMsg1 ERR
-
-
-echo ""
-echo "============================================================"
-echo "Cleaning workspace directory..."
-echo "============================================================"
-set -x
-rm -rf $WORKSPACE
-mkdir -p $WORKSPACE
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Cloning repositories..."
-echo "============================================================"
-set -x
-cd ${WORKSPACE}
-git clone --single-branch --branch develop [email protected]:apache/geode.git
-#(cd geode; git reset --hard $desired_sha) #uncomment if latest commit is not
the desired branchpoint
-git clone --single-branch --branch develop [email protected]:apache/geode.git
geode-develop
-git clone --single-branch --branch develop
[email protected]:apache/geode-examples.git
-git clone --single-branch --branch develop
[email protected]:apache/geode-examples.git geode-examples-develop
-git clone --single-branch --branch develop
[email protected]:apache/geode-native.git
-git clone --single-branch --branch develop
[email protected]:apache/geode-benchmarks.git
-set +x
-
-
-function failMsg2 {
- errln=$1
- echo "ERROR: script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
88-$(( errln - 1 ))) and try again"
-}
-trap 'failMsg2 $LINENO' ERR
-
-
-cd ${GEODE}/../..
-set -x
-${0%/*}/set_copyright.sh -j $JIRA ${GEODE} ${GEODE_DEVELOP} ${GEODE_EXAMPLES}
${GEODE_EXAMPLES_DEVELOP} ${GEODE_NATIVE} ${GEODE_BENCHMARKS}
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Creating support/${VERSION_MM} branches"
-echo "============================================================"
-for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ; do
- set -x
- cd ${DIR}
- git checkout -b support/${VERSION_MM}
- git push -u origin support/${VERSION_MM}
- git remote set-branches --add origin support/${VERSION_MM}
- set +x
-done
-
-
-echo ""
-echo "============================================================"
-echo "Bumping version on develop to ${NEWVERSION}"
-echo "============================================================"
-set -x
-cd ${GEODE_DEVELOP}
-git pull -r
-git remote add myfork [email protected]:${GITHUB_USER}/geode.git || true
-git checkout -b roll-develop-to-${NEWVERSION}
-set +x
-
-#version = 1.13.0-build.0
-sed -e "s/^version =.*/version = ${NEWVERSION}-build.0/" -i.bak
gradle.properties
-
-# initial_version: 1.13.0-((stuff)).0
-sed -e "s/^ initial_version:[^-]*\(-[^.0-9]*\)[.0-9]*/ initial_version:
${NEWVERSION}\1.0/" -i.bak ./ci/pipelines/shared/jinja.variables.yml
-
-VER=geode-serialization/src/main/java/org/apache/geode/internal/serialization/KnownVersion.java
-[ -r $VER ] ||
VER=geode-serialization/src/main/java/org/apache/geode/internal/serialization/Version.java
-#add the new ordinal and KnownVersion constants and set them as current&highest
-CURORD=$(cat $VER | awk '/private static final short GEODE_.*_ORDINAL/{print
$NF}' | tr -d ';' | sort -n | tail -1)
-NEWORD=$(( CURORD + 10 ))
-sed -e "s#/. NOTE: when adding a new version#private static final short
GEODE_${NEWMAJOR}_${NEWMINOR}_0_ORDINAL = ${NEWORD};\\
-\\
- @Immutable\\
- public static final KnownVersion GEODE_${NEWMAJOR}_${NEWMINOR}_0 =\\
- new KnownVersion("'"'"GEODE"'"'", "'"'"${NEWMAJOR}.${NEWMINOR}.0"'"'",
(byte) ${NEWMAJOR}, (byte) ${NEWMINOR}, (byte) 0, (byte) 0,\\
- GEODE_${NEWMAJOR}_${NEWMINOR}_0_ORDINAL);\\
-\\
- /* NOTE: when adding a new version#" \
- -e "/public static final KnownVersion
CURRENT/s#GEODE[0-9_]*#GEODE_${NEWMAJOR}_${NEWMINOR}_0#" \
- -e "/public static final int HIGHEST_VERSION/s# = [0-9]*# = ${NEWORD}#" \
- -i.bak $VER
-
-# directory: docs/guide/113
-# product_version: '1.13'
-# product_version_nodot: '113'
-# product_version_geode: '1.13'
-# product_version_old_minor: '1.12'
-sed -E \
- -e "s#docs/guide/[0-9]+#docs/guide/${NEWVERSION_MM_NODOT}#" \
- -e "s#product_version: '[0-9.]+'#product_version: '${NEWVERSION_MM}'#" \
- -e "s#version_nodot: '[0-9]+'#version_nodot: '${NEWVERSION_MM_NODOT}'#" \
- -e "s#product_version_geode: '[0-9.]+'#product_version_geode:
'${NEWVERSION_MM}'#" \
- -e "s#product_version_old_minor: '[0-9.]+'#product_version_old_minor:
'${VERSION_MM}'#" \
- -i.bak geode-book/config.yml
-
-#rewrite '/', '/docs/guide/113/about_geode.html'
-#rewrite '/index.html', '/docs/guide/113/about_geode.html'
-sed -E -e "s#docs/guide/[0-9]+#docs/guide/${NEWVERSION_MM_NODOT}#" -i.bak
geode-book/redirects.rb
-
-rm gradle.properties.bak ci/pipelines/shared/jinja.variables.yml.bak
geode-book/config.yml.bak geode-book/redirects.rb.bak $VER.bak*
-set -x
-git add .
-git diff --staged --color | cat
-
-./gradlew updateExpectedPom
-
-git commit -a -m "$JIRA: Roll develop to ${NEWVERSION}
-
-Now that support/${VERSION_MM} has been created, develop advances."
-git push -u myfork
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Bumping examples version on develop to ${NEWVERSION}"
-echo "============================================================"
-set -x
-cd ${GEODE_EXAMPLES_DEVELOP}
-git pull -r
-set +x
-
-#version = 1.13.0-build.0
-#geodeVersion = 1.13.0-build+
-sed \
- -e "s/^version =.*/version = ${NEWVERSION}-build.0/" \
- -e "s/^geodeVersion =.*/geodeVersion = ${NEWVERSION_MM}.+/" \
- -i.bak gradle.properties
-rm gradle.properties.bak
-set -x
-git add gradle.properties
-git diff --staged --color | cat
-git commit -m "$JIRA: Update examples version
-
-Now that support/${VERSION_MM} has been created,
-pair develop examples with ${NEWVERSION}"
-git push -u origin
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Removing CODEOWNERS and duplicate scripts from support/${VERSION_MM}"
-echo "============================================================"
-set -x
-cd ${GEODE}/dev-tools/release
-git pull -r
-git rm *.sh
-cat << EOF > README.md
-See [Releasing Apache
Geode](https://cwiki.apache.org/confluence/display/GEODE/Releasing+Apache+Geode)
-EOF
-git add README.md
-cd ${GEODE}
-[ ! -r CODEOWNERS ] || git rm CODEOWNERS
-[ ! -r CODEWATCHERS ] || git rm CODEWATCHERS
-git commit -m "$JIRA: Remove unneeded scripts
-
-Remove likely-to-become-outdated copies of release scripts to ensure
-they are not run by accident from a branch (they should always be run
-from develop).
-
-Also remove CODEOWNERS to avoid the confusion of GitHub showing owner
-names like on develop, but codeowner reviews not actually being
-required (due to lack of branch protection or minimum review count on
-support branches)"
-git push -u origin
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Setting version on support/${VERSION_MM}"
-echo "============================================================"
-cd ${GEODE}/../..
-set -x
-${0%/*}/set_versions.sh -j $JIRA -v ${VERSION_MM}.0 -s -w "${WORKSPACE}"
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Logging you in to concourse"
-echo "============================================================"
-set -x
-fly -t concourse.apachegeode-ci.info-main login --team-name main
--concourse-url https://concourse.apachegeode-ci.info/
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Done creating support branches"
-echo "============================================================"
-cd ${GEODE}/../..
-echo "Next steps:"
-echo "1. Go to
https://github.com/${GITHUB_USER}/geode/pull/new/roll-develop-to-${NEWVERSION}
and create the pull request"
-echo "2. Plus the BumpMinor job at
https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main?group=semver-management"
-echo "3. Add ${NEWVERSION} to Jira at
https://issues.apache.org/jira/projects/GEODE?selectedItem=com.atlassian.jira.jira-projects-plugin:release-page"
-echo "4. (cd ${GEODE}/ci/pipelines/meta && ./deploy_meta.sh) #takes 1-2 hours.
keep re-running until successful."
-echo "5. That's it for now. Once all needed fixes have been proposed and
cherry-picked to support/${VERSION_MM} and
https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-support-${VERSION_MM/./-}-main
is green, come back and run ${0%/*}/prepare_rc.sh -v ${VERSION_MM}.0.RC1"
diff --git a/dev-tools/release/deploy_rc_pipeline.sh
b/dev-tools/release/deploy_rc_pipeline.sh
deleted file mode 100755
index b257d12f70..0000000000
--- a/dev-tools/release/deploy_rc_pipeline.sh
+++ /dev/null
@@ -1,655 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: deploy_rc_pipeline -v version_number"
- echo " -v The #.# version number"
- exit 1
-}
-
-VERSION_MM=""
-
-while getopts ":v:" opt; do
- case ${opt} in
- v )
- VERSION_MM=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${VERSION_MM} == "" ]]; then
- usage
-fi
-
-if [[ $VERSION_MM =~ ^([0-9]+\.[0-9]+)$ ]]; then
- true
-else
- echo "Malformed version number ${VERSION_MM}. Example valid version: 1.9"
- exit 1
-fi
-
-if [[ $VERSION_MM =~ ^(1\.1[0-4])$ ]]; then
- needscmake=""
-else
- needscmake="-e s/echo.skipping.latest.cmake.//"
-fi
-
-PIPEYML=$PWD/rc-pipeline.yml
-cat << "EOF" | sed -e "s/<VERSION_MM>/${VERSION_MM}/" $needscmake > $PIPEYML
----
-
-resources:
-- name: geode
- type: git
- source:
- branch: support/<VERSION_MM>
- tag_filter: rel/v<VERSION_MM>.*.RC*
- uri: https://github.com/apache/geode.git
-- name: geode-develop
- type: git
- source:
- branch: develop
- uri: https://github.com/apache/geode.git
-- name: geode-examples
- type: git
- source:
- branch: support/<VERSION_MM>
- uri: https://github.com/apache/geode-examples.git
-- name: geode-native
- type: git
- source:
- branch: support/<VERSION_MM>
- tag_filter: rel/v<VERSION_MM>.*.RC*
- uri: https://github.com/apache/geode-native.git
-- name: geode-benchmarks
- type: git
- source:
- branch: support/<VERSION_MM>
- tag_filter: rel/v<VERSION_MM>.*.RC*
- uri: https://github.com/apache/geode-benchmarks.git
-- name: upthewaterspout-tests
- type: git
- source:
- branch: master
- uri: https://github.com/upthewaterspout/geode-release-check.git
-
-jobs:
- - name: build-geode-from-tag
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- SHA=$(cd geode && git rev-parse HEAD)
- java -version
- cd geode
- ./gradlew test installDist
- gfsh=geode-assembly/build/install/apache-geode/bin/gfsh
- $gfsh version --full | grep "^Source-Revision: ${SHA}$"
- $gfsh version --full | grep "^Product-Version: ${VERSION}-build"
- ! $gfsh version --full | grep Oracle
- - name: build-geode-from-src-tgz
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- SHA=$(cd geode && git rev-parse HEAD)
- curl -fLs
https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/apache-geode-${VERSION}-src.tgz
> src.tgz
- tar xzf src.tgz
- cd apache-geode-${VERSION}-src
- java -version
- ./gradlew test installDist
- gfsh=geode-assembly/build/install/apache-geode/bin/gfsh
- $gfsh version --full | grep "^Source-Revision: ${SHA}$"
- $gfsh version --full | grep "^Product-Version: ${VERSION}-build"
- ! $gfsh version --full | grep Oracle
- - name: run-gfsh-from-tgz
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends git
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- SHA=$(cd geode && git rev-parse HEAD)
- curl -fLs
https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/apache-geode-${VERSION}.tgz
> bin.tgz
- tar xzf bin.tgz
- cd apache-geode-${VERSION}
- java -version
- gfsh=bin/gfsh
- $gfsh version --full | grep "^Source-Revision: ${SHA}$"
- $gfsh version --full | grep "^Product-Version: ${VERSION}$"
- ! $gfsh version --full | grep Oracle
- - name: run-geode-examples-jdk11
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode-examples
- trigger: true
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 11
- inputs:
- - name: geode-examples
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip
- cd geode-examples
- java -version
- ./gradlew runAll
- - name: run-geode-examples-from-src-tgz-jdk8
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode-examples
- trigger: true
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode-examples
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git
- FULL_VERSION=$(cd geode-examples && git fetch && git describe
--tags | sed -e 's#^rel/v##' -e 's#-.*##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- if [ "${FULL_VERSION}" = "${VERSION}" ] ; then
- GRADLE_ARGS=""
- curl -fLs
https://downloads.apache.org/geode/${VERSION}/apache-geode-examples-${VERSION}-src.tgz
> src.tgz
- else
- STAGING_MAVEN=$(cat geode-examples/gradle.properties | grep
geodeRepositoryUrl | awk '{print $3}')
-
GRADLE_ARGS="-PgeodeReleaseUrl=https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}
-PgeodeRepositoryUrl=${STAGING_MAVEN}"
- curl -fLs
https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/apache-geode-examples-${VERSION}-src.tgz
> src.tgz
- fi
- tar xzf src.tgz
- cd apache-geode-examples-${VERSION}-src
- java -version
- ./gradlew ${GRADLE_ARGS} build runAll
- - name: build-geode-native-from-tag
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode-native
- trigger: true
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: adoptopenjdk/openjdk8
- tag: slim
- inputs:
- - name: geode-native
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends git
- FULL_VERSION=$(cd geode-native && git fetch && git describe
--tags | sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- #use geode from binary dist
- curl -fLs
https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/apache-geode-${VERSION}.tgz
> geode-bin.tgz
- tar xzf geode-bin.tgz
- apt-get update || true
- DEBIAN_FRONTEND=noninteractive apt-get install
--no-install-recommends -y cmake openssl doxygen build-essential libssl-dev
zlib1g-dev
-
- echo skipping latest cmake tmp=`mktemp`
- echo skipping latest cmake curl -fo ${tmp} -v -L
https://github.com/Kitware/CMake/releases/download/v3.21.2/cmake-3.21.2-linux-x86_64.sh
- echo skipping latest cmake bash ${tmp} --skip-license
--prefix=/usr/local
- echo skipping latest cmake rm -f ${tmp}
-
- #cmake wrongly assumes javah wasn't removed until JDK10, but
adoptopenjdk removed it in JDK8
- echo '/opt/java/openjdk/bin/javac -h "$@"' >
/opt/java/openjdk/bin/javah
- chmod +x /opt/java/openjdk/bin/javah
- cd geode-native
- mkdir build
- cd build
- cmake .. -DGEODE_ROOT=$PWD/../../apache-geode-${VERSION}
- cmake --build . -- -j 4
- cmake --build . --target docs -- -j 4
- cmake --build . --target install -- -j 4
- - name: build-geode-native-from-src-tgz
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode-native
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: adoptopenjdk/openjdk8
- tag: slim
- inputs:
- - name: geode-native
- - name: geode
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git
- FULL_VERSION=$(cd geode-native && git fetch && git describe
--tags | sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- # build geode from source
- cd geode
- ./gradlew build -x test -x javadoc -x rat -x pmdMain
- cd ..
- apt-get update || true
- DEBIAN_FRONTEND=noninteractive apt-get install
--no-install-recommends -y cmake openssl doxygen build-essential libssl-dev
zlib1g-dev
-
- echo skipping latest cmake tmp=`mktemp`
- echo skipping latest cmake curl -fo ${tmp} -v -L
https://github.com/Kitware/CMake/releases/download/v3.21.2/cmake-3.21.2-linux-x86_64.sh
- echo skipping latest cmake bash ${tmp} --skip-license
--prefix=/usr/local
- echo skipping latest cmake rm -f ${tmp}
-
- #cmake wrongly assumes javah wasn't removed until JDK10, but
adoptopenjdk removed it in JDK8
- echo '/opt/java/openjdk/bin/javac -h "$@"' >
/opt/java/openjdk/bin/javah
- chmod +x /opt/java/openjdk/bin/javah
- curl -fLs
https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/apache-geode-native-${VERSION}-src.tgz
> src.tgz
- tar xzf src.tgz
- cd apache-geode-native-${VERSION}-src
- mkdir build
- cd build
- cmake ..
-DGEODE_ROOT=$PWD/../../geode/geode-assembly/build/install/apache-geode
- cmake --build . -- -j 4
- cmake --build . --target docs -- -j 4
- cmake --build . --target install -- -j 4
- - name: upthewaterspout
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - get: upthewaterspout-tests
- - get: geode-examples
- - task: validate
- timeout: 2h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- - name: upthewaterspout-tests
- - name: geode-examples
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git gpg
gpg-agent wget
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- STAGING_MAVEN=$(cat geode-examples/gradle.properties | grep
geodeRepositoryUrl | awk '{print $3}')
- cd upthewaterspout-tests
- curl -fLs https://dist.apache.org/repos/dist/dev/geode/KEYS >
KEYS
- gpg --import KEYS
- java -version
- ./gradlew build -PmavenURL=${STAGING_MAVEN}
-PdownloadURL=https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/
-Pversion=${FULL_VERSION}
- - name: benchmarks-test
- serial: true
- public: true
- plan:
- - get: geode-benchmarks
- trigger: true
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode-benchmarks
- platform: linux
- run:
- path: /bin/sh
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git keychain
- FULL_VERSION=$(cd geode-benchmarks && git fetch && git describe
--tags | sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- curl -fLs
https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/apache-geode-benchmarks-${VERSION}-src.tgz
> src.tgz
- tar xzf src.tgz
- cd apache-geode-benchmarks-${VERSION}-src
- java -version
- mkdir -p ~/.ssh
- ssh-keygen -m PEM -b 2048 -t rsa -f ~/.ssh/id_rsa -q -N ""
- cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- apt-get update || true
- apt-get install openssh-server --no-install-recommends -y
- echo "StrictHostKeyChecking no" >> /etc/ssh/ssh_config
- service ssh start
- echo 'tasks.withType(JavaCompile) { options.encoding = "UTF-8"
}' >> geode-benchmarks/build.gradle
- ./gradlew build test
- - name: verify-expected-files-and-keys
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- platform: linux
- run:
- path: /bin/bash
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends git gpg gpg-agent
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- curl -fLs https://dist.apache.org/repos/dist/dev/geode/KEYS >
KEYS
- gpg --import KEYS
- url=https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}
- function verifyArtifactSizeSignatureLicenseNoticeAndCopyright {
- tld=$1
- file=${tld}.tgz
- minfilesize=$2
- maxfilesize=$3
- echo Verifying $file...
- asc=${file}.asc
- sha=${file}.sha256
- sum=sha256sum
- curl -fLs $url/$file > $file
- actualfilesize=$(wc -c < $file)
- if [ $actualfilesize -lt $minfilesize ] ; then
- echo "File size of $file is only $actualfilesize bytes,
expected at least $minfilesize"
- return 1
- fi
- if [ $actualfilesize -gt $maxfilesize ] ; then
- echo "File size of $file is $actualfilesize, expected no
more than $maxfilesize bytes"
- return 1
- fi
- curl -fLs $url/$asc > $asc
- curl -fLs $url/$sha > $sha
- gpg --verify $asc
- $sum -c $sha
- echo $file >> exp
- echo $asc >> exp
- echo $sha >> exp
- #check that each archive contains all content below a
top-level-directory with the same name as the file (sans .tgz)
- ! tar tvzf $file | grep -v " ${tld}/"
- #check that each archive contains LICENSE and NOTICE
- tar tvzf $file | grep " ${tld}/LICENSE"
- tar tvzf $file | grep " ${tld}/NOTICE"
- #check that NOTICE contains current copyright year and
correctly assigns copyright to ASF
- tar xzf $file "${tld}/NOTICE"
- year=$(date +%Y)
- grep "Copyright" "${tld}/NOTICE"
- grep -q "Copyright.*${year}.*Apache Software Foundation"
"${tld}/NOTICE"
- #check that the declared license is of the correct type
- tar xzf $file "${tld}/LICENSE"
- head -1 "${tld}/LICENSE" | grep -q "Apache License"
- }
- verifyArtifactSizeSignatureLicenseNoticeAndCopyright
apache-geode-${VERSION}-src 16000000 20000000
- verifyArtifactSizeSignatureLicenseNoticeAndCopyright
apache-geode-${VERSION} 120000000 137000000
- verifyArtifactSizeSignatureLicenseNoticeAndCopyright
apache-geode-examples-${VERSION}-src 840000 900000
- verifyArtifactSizeSignatureLicenseNoticeAndCopyright
apache-geode-native-${VERSION}-src 2400000 3200000
- verifyArtifactSizeSignatureLicenseNoticeAndCopyright
apache-geode-benchmarks-${VERSION}-src 85000 125000
- curl -fLs ${url}/ | awk '/>..</{next}/<li>/{gsub(/
*<[^>]*>/,"");print}' | sort > actual-file-list
- sort < exp > expected-file-list
- set +x
- echo ""
- if diff -q expected-file-list actual-file-list ; then
- echo "The file list at $url matches what is expected and all
signatures were verified :)"
- else
- echo "Expected:"
- cat expected-file-list
- echo ""
- echo "Actual:"
- cat actual-file-list
- echo ""
- echo "Diff:"
- diff expected-file-list actual-file-list
- exit 1
- fi
- - name: verify-no-binaries
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- platform: linux
- run:
- path: /bin/bash
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends git
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- VERSION=$(echo $FULL_VERSION|sed -e 's/\.RC.*//')
- url=https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}
- BINARY_EXTENSIONS="jar|war|class|exe|dll|o|so|obj|bin|out|pyc"
- echo "Source artifacts should not contain any files ending
in$(echo "|${BINARY_EXTENSIONS}"|sed 's/[^a-z]/ ./g')"
- echo ""
- function verifyNoBinaries {
- file=$1
- echo ""
- echo Checking $file...
- curl -fLs $url/$file | tar tvzf - | egrep
'\.('"${BINARY_EXTENSIONS}"')$' | tee -a bins
- }
- verifyNoBinaries apache-geode-${VERSION}-src.tgz
- verifyNoBinaries apache-geode-examples-${VERSION}-src.tgz
- verifyNoBinaries apache-geode-native-${VERSION}-src.tgz
- verifyNoBinaries apache-geode-benchmarks-${VERSION}-src.tgz
- echo ""
- echo ""
- if grep -q . bins ; then
- echo Binary files were found!
- exit 1
- else
- echo All good
- fi
- - name: verify-license
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed: [verify-expected-files-and-keys]
- - get: geode-develop
- - task: validate
- timeout: 1h
- config:
- image_resource:
- type: docker-image
- source:
- repository: bellsoft/liberica-openjdk-debian
- tag: 8
- inputs:
- - name: geode
- - name: geode-develop
- platform: linux
- run:
- path: /bin/bash
- args:
- - -ecx
- - |
- apt update -q
- apt install -qq -y --no-install-recommends unzip git
- FULL_VERSION=$(cd geode && git fetch && git describe --tags |
sed -e 's#^rel/v##')
- ./geode-develop/dev-tools/release/license_review.sh -v
$FULL_VERSION
- - name: all-passed
- serial: true
- public: true
- plan:
- - in_parallel:
- - get: geode
- trigger: true
- passed:
- - verify-license
- - upthewaterspout
- - run-gfsh-from-tgz
- - verify-no-binaries
- - build-geode-from-tag
- - build-geode-from-src-tgz
- - get: geode-examples
- passed:
- - run-geode-examples-jdk11
- - run-geode-examples-from-src-tgz-jdk8
- - get: geode-native
- passed:
- - build-geode-native-from-tag
- - build-geode-native-from-src-tgz
- - get: geode-benchmarks
- passed:
- - benchmarks-test
-EOF
-fly -t concourse.apachegeode-ci.info-main login --team-name main
--concourse-url https://concourse.apachegeode-ci.info/
-fly -t concourse.apachegeode-ci.info-main set-pipeline -p
apache-support-${VERSION_MM//./-}-rc -c $PIPEYML
-fly -t concourse.apachegeode-ci.info-main unpause-pipeline -p
apache-support-${VERSION_MM//./-}-rc
-fly -t concourse.apachegeode-ci.info-main expose-pipeline -p
apache-support-${VERSION_MM//./-}-rc
-rm $PIPEYML
diff --git a/dev-tools/release/end_of_support.sh
b/dev-tools/release/end_of_support.sh
deleted file mode 100755
index 38f69b9ace..0000000000
--- a/dev-tools/release/end_of_support.sh
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: end_of_support.sh -v version_number"
- echo " -v The #.# version number of the support branch that is no
longer supported"
- exit 1
-}
-
-VERSION_MM=""
-
-while getopts ":v:" opt; do
- case ${opt} in
- v )
- VERSION_MM=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${VERSION_MM} == "" ]] ; then
- usage
-fi
-
-if [[ $VERSION_MM =~ ^([0-9]+\.[0-9]+)$ ]]; then
- true
-else
- echo "Malformed version number ${VERSION_MM}. Example valid version: 1.9"
- exit 1
-fi
-
-set -x
-WORKSPACE=$PWD/support-${VERSION_MM}-workspace
-GEODE=$WORKSPACE/geode
-GEODE_EXAMPLES=$WORKSPACE/geode-examples
-GEODE_NATIVE=$WORKSPACE/geode-native
-GEODE_BENCHMARKS=$WORKSPACE/geode-benchmarks
-set +x
-
-function failMsg1 {
- echo "ERROR: script did NOT complete successfully. Please try again."
-}
-trap failMsg1 ERR
-
-
-echo ""
-echo "============================================================"
-echo "Cleaning workspace directory..."
-echo "============================================================"
-set -x
-rm -rf $WORKSPACE
-mkdir -p $WORKSPACE
-cd $WORKSPACE
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Cloning repositories..."
-echo "============================================================"
-set -x
-git clone --branch support/${VERSION_MM} [email protected]:apache/geode.git
-git clone --branch support/${VERSION_MM}
[email protected]:apache/geode-examples.git
-git clone --branch support/${VERSION_MM}
[email protected]:apache/geode-native.git
-git clone --branch support/${VERSION_MM}
[email protected]:apache/geode-benchmarks.git
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Confirming end of support"
-echo "============================================================"
-cd ${GEODE}
-echo "Geode support branches should be kept for at least 9 months after
initial release."
-echo "Geode ${VERSION_MM}.0 was released about $(git log -1 --format=%ar
rel/v${VERSION_MM}.0)"
-read -p "To continue and delete support/${VERSION_MM} and all associated
pipelines, type YES if you are sure: "
-if [ "$REPLY" != "YES" ] ; then
- echo cancelled
- exit 1
-fi
-
-
-function failMsg2 {
- errln=$1
- echo "ERROR: script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
65-$(( errln - 1 ))) and try again"
-}
-trap 'failMsg2 $LINENO' ERR
-
-
-echo ""
-echo "============================================================"
-echo "Destroying pipelines"
-echo "============================================================"
-set -x
-cd ${0%/*}/../../ci/pipelines/meta
-DEVELOP_META=$(pwd)
-cd ${GEODE}
-fly -t concourse.apachegeode-ci.info-main login --team-name main
--concourse-url https://concourse.apachegeode-ci.info/
-${DEVELOP_META}/destroy_pipelines.sh
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Destroying support branches"
-echo "============================================================"
-for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ; do
- set -x
- cd ${DIR}
- git checkout develop
- git push origin --delete support/${VERSION_MM}
- git branch -D support/${VERSION_MM}
- set +x
-done
-
-
-echo ""
-echo "============================================================"
-echo "Cleaning up RC tags"
-echo "============================================================"
-for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ; do
- set -x
- cd ${DIR}
- git tag | grep "^rel/v${VERSION_MM}.*RC" | while read RCTAG ; do
- git push origin --delete "$RCTAG"
- done
- set +x
-done
-
-
-echo ""
-echo "============================================================"
-echo 'Done shutting down the support branch!'
-echo "============================================================"
-echo "Don't forget to remove the JIRA Release placeholder for any future
${VERSION_MM}.x"
-echo "Probably also a good idea to announce on the dev list that
support/${VERSION_MM} has expired"
diff --git a/dev-tools/release/license_review.sh
b/dev-tools/release/license_review.sh
deleted file mode 100755
index 1ce58225fb..0000000000
--- a/dev-tools/release/license_review.sh
+++ /dev/null
@@ -1,377 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: license_review.sh -v version_number_or_tgz [-p
previous_version_number_or_tgz]"
- echo " -v The #.#.#.RC# or #.#.# version number to review -or- a path
or URL to .tgz -or- 'HEAD'"
- echo " -p The #.#.#.RC# or #.#.# version number to compare against -or-
a path or URL to .tgz"
- echo " -n No license check (useful if you just want the version
comparison)"
- echo " -s No source license check (just check the binary license)"
- exit 1
-}
-
-
-while getopts ":v:p:ns" opt; do
- case ${opt} in
- v )
- NEW_VERSION=$OPTARG
- ;;
- p )
- OLD_VERSION=$OPTARG
- ;;
- n )
- SKIP_LICENSES=true
- ;;
- s )
- SKIP_SRC_LICENSE=true
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [ -z "${NEW_VERSION}" ] ; then
- usage
-fi
-
-WORKSPACE=$(pwd)/license_tmp
-DOWNLOAD=${WORKSPACE}/download
-EXTRACT=${WORKSPACE}/extracted
-mkdir -p ${DOWNLOAD}
-mkdir -p ${EXTRACT}
-root=$0
-root=${root%/dev-tools*}
-
-if [ "$NEW_VERSION" = "HEAD" ] ; then
- licFromWs=true
- rm -Rf $root/geode-assembly/build/distributions
-fi
-
-
-function resolve() {
- [ -n "$1" ] || return
- spec=$1
- suffix=$2
- if [ "HEAD" = "$spec" ] ; then
- [ "${suffix}" = "-src" ] && target=srcDistTar || target=distTar
- (cd $root && ./gradlew ${target} 1>&2)
- spec=$root/geode-assembly/build/distributions/$(cd
$root/geode-assembly/build/distributions && ls -t | grep -v sha256 | grep
"apache-geode-.*-build.[0-9][0-9]*${suffix}.tgz" | tail -1)
- [ -r "$spec" ] || echo "Build not found: $spec" 1>&2
- [ -r "$spec" ]
- fi
-
- if [[ $spec =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.(RC[0-9]+)$ ]]; then
- mmp=$(echo $spec | sed 's/.RC.*//')
- #bare RC version -> RC url
-
spec=https://dist.apache.org/repos/dist/dev/geode/${spec}/apache-geode-${mmp}${suffix}.tgz
- elif [[ $spec =~ ^([0-9]+\.[0-9]+\.[0-9]+)$ ]]; then
- #bare released version -> release url
-
spec=https://archive.apache.org/dist/geode/${spec}/apache-geode-${spec}${suffix}.tgz
- elif echo "$spec" | grep -q '^http.*tgz$' ; then
- #tgz url
- echo "$spec" | grep -q -- "${suffix}.tgz$" || return
- elif [ -r "$spec" ] && echo "$spec" | grep -q 'tgz$' ; then
- #tgz file present locally
- echo "$spec" | grep -q -- "${suffix}.tgz$" || return
- else
- #unsupported
- return
- fi
-
- #download if url (and not already downloaded)
- if echo "$spec" | grep -q '^http.*tgz$' ; then
- filename=$(echo $spec | sed 's#.*/##')
- [ -r ${DOWNLOAD}/$filename ] || curl -fL "$spec" > ${DOWNLOAD}/$filename
- spec=${DOWNLOAD}/$filename
- fi
-
- #extract it (if not already extracted)
- dirname=$(echo $spec | sed -e 's#.*/##' -e 's#.tgz$##')
- [ "${licFromWs}" = "true" ] && rm -Rf ${EXTRACT}/$dirname || true
- [ -d ${EXTRACT}/$dirname ] || tar xzf $spec -C ${EXTRACT}
- [ -d ${EXTRACT}/$dirname ] && echo ${EXTRACT}/$dirname || true
-}
-
-NEW_DIR=$(resolve $NEW_VERSION)
-
-if [ -z "${NEW_DIR}" ] || [ ! -d "${NEW_DIR}" ] ; then
- usage
-fi
-
-if [ "${licFromWs}" = "true" ] && ! [ "$SKIP_LICENSES" = "true" ] && ! [
"$SKIP_SRC_LICENSE" = "true" ] ; then
- NEW_SRC_DIR=$(resolve $NEW_VERSION -src)
-fi
-
-function banner() {
- echo ""
- echo "$@" | sed 's/./=/g'
- echo "$@"
- echo "$@" | sed 's/./=/g'
-}
-
-function listJarsInWar() {
- war=$1
- jar tvf $war | awk '/.jar$/{print "'"$war"'/"$8}'
-}
-
-function extractLicense() {
- [ "$SKIP_LICENSES" != "true" ] || return 0
- war=$1
- rm -Rf tmpl
- mkdir tmpl
- cd tmpl
- jar xf ../$war META-INF/LICENSE
- cd ..
- cp tmpl/META-INF/LICENSE $2
- rm -Rf tmpl
-}
-
-function generateList() {
- dir=$1
- banner "Listing 3rd-party deps in ${dir##*/}"
-
- #also extract geode jar licenses for later checking
- (cd $dir; find . -name '*.jar' | egrep '(geode|gfsh)-' | sort | sed
's#^./##' | while read geodejar ; do
- extractLicense $geodejar ${geodejar%.jar}.LICENSE
- done)
-
- echo "**** ${dir##*/} jars ****" | tr '[:lower:]-' '[:upper:] ' >
$dir/report1
- (cd $dir; find . -name '*.jar' | grep -v geode- | grep -v gfsh- | sort | sed
's#^./##' | tee -a report1)
-
- echo "**** ${dir##*/} wars ****" | tr '[:lower:]-' '[:upper:] ' >
$dir/report2
- (cd $dir; find . -name '*.war' | sort | sed 's#^./##' | while read war ; do
- listJarsInWar $war | sed 's#-[v0-9][-0-9.SNAPSHOTbuild]*[.]#.#' | sort
- extractLicense $war ${war%.war}.LICENSE
- done | tee -a report2)
-}
-
-generateList $NEW_DIR
-if [ -n "${OLD_VERSION}" ] ; then
- OLD_DIR=$(resolve $OLD_VERSION)
- generateList $OLD_DIR
-
- banner "Diffing 3rd-party deps changes from ${OLD_DIR##*/} to ${NEW_DIR##*/}"
- for REPORT in report1 report2 ; do
- diff -y -W $(tput cols) $OLD_DIR/$REPORT $NEW_DIR/$REPORT | grep '[<|>]'
- done
-fi
-
-[ "$SKIP_LICENSES" = "true" ] && exit 0
-
-banner "Checking that all binary licenses are identical"
-sizes=$(find $NEW_DIR -name '*LICENSE' | xargs wc -c | grep -v total | awk
'{print $1}' | sort -u | wc -l)
-if [ $sizes -gt 1 ] ; then
- echo "NOT all LICENSES are the same:"
- (cd $NEW_DIR; find * -name '*LICENSE' | xargs wc -c | grep -v total | sort)
- result=1
-else
- echo 'All Good!'
-fi
-
-function isApache2() {
- apache="HikariCP
-accessors-smart
-byte-buddy
-classmate
-commons-beanutils
-commons-codec
-commons-collections
-commons-digester
-commons-fileupload
-commons-io
-commons-lang3
-commons-logging
-commons-math3
-commons-modeler
-commons-text
-commons-validator
-content-type
-error_prone_annotations
-failureaccess
-fastutil
-findbugs-annotations
-geo
-guava
-grumpy-
-httpclient
-httpcore
-j2objc-annotations
-jackson-
-jcip-annotations
-jna
-json-path
-json-smart
-jsr305
-jetty-
-jgroups
-jna-
-joda-time
-lang-tag
-listenablefuture
-log4j-
-lucene-
-mapstruct
-micrometer-core
-netty-
-nimbus-jose-jwt
-oauth2-oidc-sdk
-rmiio
-shiro-
-snakeyaml
-snappy
-spring-
-springdoc-
-swagger-annotations
-swagger-core
-swagger-models
-swagger-ui"
- echo "$1" | egrep -q "(mx4j-remote|jaxb-api|$(echo -n "$apache" | tr '\n'
'|'))"
-}
-function shortenDep() {
- echo "$1" | sed \
- -e 's/-api//' \
- -e 's/-impl//' \
- -e 's/-java//' \
- -e 's/shiro-.*/shiro-*/' \
- -e 's/jackson-.*/jackson-*/' \
- -e 's/jetty-.*/jetty-*/' \
- -e 's/jna-.*/jna-*/' \
- -e 's/lucene-.*/lucene-*/' \
- -e 's/log4j-.*/log4j-*/' \
- -e 's/mx4j-.*/mx4j*/' \
- -e 's/spring-.*/spring-*/' \
- -e 's/springdoc-.*/springdoc-*/'
-}
-for REPORT in report1 report2 ; do
- [ "$REPORT" = "report1" ] && topic=JAR || topic=WAR
- if [ "${licFromWs}" = "true" ] ; then
- LICENSE=${root}/geode-assembly/src/main/dist/LICENSE
- else
- [ "$REPORT" = "report1" ] && LICENSE=${NEW_DIR}/LICENSE ||
LICENSE=${NEW_DIR}/tools/Pulse/$(cd ${NEW_DIR}/tools/Pulse; ls | grep LICENSE)
- fi
- LICENSE=${LICENSE#./}
- banner "Comparing $topic dep versions in ${NEW_DIR##*/} to $LICENSE"
- rm -f missing-$REPORT apache-$REPORT
- touch missing-$REPORT apache-$REPORT
- tail -n +2 $NEW_DIR/$REPORT | sed -e 's#.*/##' -e 's/\.jar//' | sed
's/-\([0-9]\)/ \1/' | sort -u | grep -v '^ra$' | while read dep ver; do
- if isApache2 $dep ; then
- echo $dep $ver >> apache-$REPORT
- else
- echo $(shortenDep $dep) $ver
- fi
- done | sort -u | while read dep ver ; do
- if grep -qi "${dep//-/.}.*$ver" $LICENSE ; then
- echo "$dep $ver Found (and version matches)"
- elif grep -qi $dep $LICENSE ; then
- match="$(grep -i $dep $LICENSE | grep -v License | head -1)"
- if echo $match | grep -q '[0-9][0-9]*[.][0-9][0-9]*' ; then
- echo "$dep FOUND WITH A DIFFERENT VERSION, PLEASE UPDATE TO $ver:" >>
missing-$REPORT
- echo "$match" >> missing-$REPORT
- else
- echo "$dep $ver probably found (without version):"
- echo "$match"
- fi
- else
- echo "$LICENSE FAILS TO MENTION $dep v$ver" >> missing-$REPORT
- fi
- done
- echo $(wc -l < apache-$REPORT) "deps are licensed under Apache 2.0 (no need
to mention individually)"
- rm apache-$REPORT
- if [ $(wc -l < missing-$REPORT) -eq 0 ] ; then
- echo 'All Good!'
- else
- cat missing-$REPORT
- rm missing-$REPORT
- result=1
- fi
-done
-
-function checkMissing() {
- rm -f missing
- touch missing
- grep '^ - ' | sed -e 's/^ - //' -e 's/, .*//' -e 's/ (.*//' -e 's/s*
v.*//' -e 's/ /.?/g' | while read f; do
- if (cd ${root} && git grep -Eqi "$f" -- ':!LICENSE' ':!**/LICENSE'
':!NOTICE' ':!**/NOTICE') ; then
- true
- #echo "${f//\?/} found"
- else
- echo "${f//\?/} appears to be unused. Please remove from $1" >> missing
- fi
- done
- if [ $(wc -l < missing) -eq 0 ] ; then
- echo 'All Good!'
- rm missing
- else
- cat missing
- rm missing
- return 1
- fi
-}
-
-if [ "${licFromWs}" = "true" ] ; then
- banner "Checking that binary license is a superset of src license"
- SLICENSE=${root}/LICENSE
- BLICENSE=${root}/geode-assembly/src/main/dist/LICENSE
- if diff $SLICENSE $BLICENSE | grep -q '^<' ; then
- echo $(diff $SLICENSE $BLICENSE | grep '^<' | wc -l) "lines appear in
$SLICENSE that were not found in $BLICENSE."
- echo "Please ensure the binary license is a strict superset of the source
license."
- echo "(diff $SLICENSE $BLICENSE)"
- result=1
- else
- echo 'All Good!'
- fi
-
- banner "Checking that binary license is correct"
- if diff -q ${BLICENSE} ${NEW_DIR}/LICENSE ; then
- echo 'All Good!'
- else
- echo "Incorrect LICENSE in binary distribution"
- echo "Expected:" $(wc -c ${BLICENSE})
- echo "Actual:" $(wc -c ${NEW_DIR}/LICENSE)
- result=1
- fi
-
- if ! [ "$SKIP_SRC_LICENSE" = "true" ] ; then
- banner "Checking that source license is correct"
- if diff -q ${SLICENSE} ${NEW_SRC_DIR}/LICENSE ; then
- echo 'All Good!'
- else
- echo "Incorrect LICENSE in source distribution"
- echo "Expected:" $(wc -c ${SLICENSE})
- echo "Actual:" $(wc -c ${NEW_SRC_DIR}/LICENSE)
- result=1
- fi
-
- banner "Checking references in source license"
- cat $SLICENSE | checkMissing $SLICENSE || result=1
-
-
- banner "Checking references in binary license"
- cat $SLICENSE $SLICENSE $BLICENSE | sort | uniq -u | checkMissing
$BLICENSE || result=1
- fi
-fi
-
-if [ "$result" == 1 ] ; then
- banner "ERRORS WERE FOUND"
- echo "review each section above for details"
- exit 1
-else
- banner "SUMMARY"
- echo 'ALL GOOD!'
-fi
diff --git a/dev-tools/release/prepare_rc.sh b/dev-tools/release/prepare_rc.sh
deleted file mode 100755
index 90ed0f9365..0000000000
--- a/dev-tools/release/prepare_rc.sh
+++ /dev/null
@@ -1,374 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: prepare_rc.sh -j ticket -v version_number -k signing_key -a
apache_ldap_username"
- echo " -j The GEODE-nnnnn Jira identifier for this release"
- echo " -v The #.#.#.RC# version number"
- echo " -k Your 8 digit GPG key id (the last 8 digits of your gpg
fingerprint)"
- echo " -a Your apache LDAP username (that you use to log in to
https://id.apache.org)"
- exit 1
-}
-
-checkCommand() {
- COMMAND=$1
- if ! [[ -x "$(command -v $COMMAND)" ]]; then
- echo "$COMMAND must be installed"
- exit 1
- fi
-}
-
-JIRA=""
-FULL_VERSION=""
-SIGNING_KEY=""
-APACHE_USERNAME=""
-
-while getopts ":j:v:k:a:" opt; do
- case ${opt} in
- j )
- JIRA=$OPTARG
- ;;
- v )
- FULL_VERSION=$OPTARG
- ;;
- k )
- SIGNING_KEY=$OPTARG
- ;;
- a )
- APACHE_USERNAME=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${JIRA} == "" ]] || [[ ${FULL_VERSION} == "" ]] || [[ ${SIGNING_KEY} ==
"" ]] || [[ ${APACHE_USERNAME} == "" ]]; then
- usage
-fi
-
-if [[ $SIGNING_KEY =~ ^[0-9A-Fa-f]{8}$ ]]; then
- true
-else
- echo "Malformed signing key ${SIGNING_KEY}. Example valid key: ABCD1234"
- exit 1
-fi
-
-if [[ $FULL_VERSION =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.(RC[0-9]+)$ ]]; then
- VERSION=${BASH_REMATCH[1]}
-else
- echo "Malformed version number ${FULL_VERSION}. Example valid version:
1.9.0.RC1"
- exit 1
-fi
-
-VERSION_MM=${VERSION%.*}
-
-checkCommand gpg
-checkCommand cmake
-checkCommand svn
-checkCommand doxygen
-
-
-echo ""
-echo "============================================================"
-echo "Checking java..."
-echo "============================================================"
-[ -z "$JAVA_HOME" ] && JAVA=java || JAVA=$JAVA_HOME/bin/java
-if ! $JAVA -XshowSettings:properties -version 2>&1 | grep
'java.specification.version = 1.8' ; then
- echo "Please set JAVA_HOME to use JDK 8 to compile Geode for release"
- exit 1
-fi
-if $JAVA -XshowSettings:properties -version 2>&1 | grep 'java.vm.vendor =
Oracle' ; then
- echo "Please set JAVA_HOME to use an Open JDK 8 such as from
https://adoptopenjdk.net/?variant=openjdk8&jvmVariant=hotspot to compile Geode
for release"
- exit 1
-else
- $JAVA -XshowSettings:properties -version 2>&1 | grep 'java.vm.vendor = '
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Checking gpg... (you will be prompted to enter passphrase)"
-echo "============================================================"
-SECRING=~/.gnupg/secring.gpg
-! [ -r $SECRING ] || SECRING=/dev/null
-if gpg --export-secret-keys > ${SECRING} && echo "1234" | gpg -o /dev/null
--local-user ${SIGNING_KEY} -as - ; then
- echo "You entered the correct passphrase; proceeding."
- echo "Please note, you will still need to enter it a few more times."
- echo "PLEASE NOTE, the very last prompt will be for your apache password
(not gpg). Pay attention as the prompts look very similar."
-else
- echo "Hmm, gpg seems unhappy. Check that you entered correct passphrase or
refer to release wiki for troubleshooting."
- exit 1
-fi
-if ! gpg --list-keys ${SIGNING_KEY} | grep -q "${APACHE_USERNAME}@apache.org"
; then
- echo "Please specify a gpg key that is associated with your apache email
address."
- echo "Expected: ${APACHE_USERNAME}@apache.org"
- echo "Found: $(gpg --list-keys ${SIGNING_KEY} | grep ^uid | sed -e
's/.*<//' -e 's/>.*//')"
- exit 1
-fi
-
-
-set -x
-WORKSPACE=$PWD/release-${VERSION}-workspace
-GEODE=$WORKSPACE/geode
-GEODE_EXAMPLES=$WORKSPACE/geode-examples
-GEODE_NATIVE=$WORKSPACE/geode-native
-GEODE_BENCHMARKS=$WORKSPACE/geode-benchmarks
-BREW_DIR=$WORKSPACE/homebrew-core
-SVN_DIR=$WORKSPACE/dist/dev/geode
-if which shasum >/dev/null; then
- SHASUM="shasum -a 256"
-else
- SHASUM=sha256sum
-fi
-set +x
-
-
-function failMsg1 {
- echo "ERROR: script did NOT complete successfully. Please try again."
-}
-trap failMsg1 ERR
-
-
-echo ""
-echo "============================================================"
-echo "Cleaning workspace directory..."
-echo "============================================================"
-set -x
-rm -rf $WORKSPACE
-mkdir -p $WORKSPACE
-cd $WORKSPACE
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Cloning repositories..."
-echo "============================================================"
-set -x
-git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode.git
-#if you attempt to reset to a prior SHA here, skip ${GEODE} in
set_copyright.sh or it may backfire
-#(cd geode; git reset --hard $desired_sha) #uncomment if latest commit is not
the desired sha
-git clone [email protected]:apache/geode.git geode-develop
-git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode-examples.git
-git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode-native.git
-git clone --single-branch --branch develop
[email protected]:apache/geode-native.git geode-native-develop
-git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode-benchmarks.git
-git clone --single-branch --branch develop
[email protected]:apache/geode-benchmarks.git geode-benchmarks-develop
-git clone --single-branch --branch master
[email protected]:Homebrew/homebrew-core.git
-
-svn checkout https://dist.apache.org/repos/dist --depth empty
-svn update --set-depth immediates --parents dist/release/geode
-svn update --set-depth infinity --parents dist/dev/geode
-set +x
-
-for REPO in ${GEODE} ${WORKSPACE}/geode-develop ${GEODE_EXAMPLES}
${GEODE_NATIVE} ${GEODE_BENCHMARKS} ${BREW_DIR} ; do
- cd ${REPO}
- git config user.email "${APACHE_USERNAME}@apache.org"
-done
-
-cd ${GEODE}/../..
-set -x
-${0%/*}/set_copyright.sh -j $JIRA ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE}
${GEODE_BENCHMARKS}
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Keeping -build.0 suffix"
-echo "============================================================"
-cd ${GEODE}/../..
-set -x
-${0%/*}/set_versions.sh -j $JIRA -v ${VERSION} -n -w ${WORKSPACE}
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Building geode..."
-echo "============================================================"
-set -x
-cd ${GEODE}
-git clean -fdx && ./gradlew build -x test publishToMavenLocal
-Pversion=${VERSION} -Paskpass -Psigning.keyId=${SIGNING_KEY}
-Psigning.secretKeyRingFile=${HOME}/.gnupg/secring.gpg
-set +x
-
-
-if [ "${FULL_VERSION##*.RC}" -gt 1 ] ; then
- echo ""
- echo "============================================================"
- echo "Removing previous RC's temporary commit from geode-examples..."
- echo "============================================================"
- set -x
- cd ${GEODE_EXAMPLES}
- git pull
- set +x
- sed -e 's#^geodeRepositoryUrl *=.*#geodeRepositoryUrl =#' \
- -e 's#^geodeReleaseUrl *=.*#geodeReleaseUrl =#' -i.bak
gradle.properties
- rm gradle.properties.bak
- set -x
- git add gradle.properties
- if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -m "Revert "'"'"$JIRA: Set temporary staging repo"'"'
- fi
- set +x
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Building geode-examples..."
-echo "============================================================"
-set -x
-cd ${GEODE_EXAMPLES}
-git clean -dxf && ./gradlew -Pversion=${VERSION} -PsignArchives
-PgeodeReleaseUrl="file://${GEODE}/geode-assembly/build/geode-assembly/build/distributions/apache-geode-${VERSION}"
-PgeodeRepositoryUrl="file://${HOME}/.m2/repository"
-Psigning.keyId=${SIGNING_KEY}
-Psigning.secretKeyRingFile=${HOME}/.gnupg/secring.gpg build
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Building geode-native..."
-echo "============================================================"
-set -x
-cd ${GEODE_NATIVE}
-mkdir build
-which brew >/dev/null && OPENSSL_ROOT_DIR=$(brew --prefix openssl) ||
OPENSSL_ROOT_DIR=$(which openssl)
-cd ${GEODE_NATIVE}/build
-cmake .. -DPRODUCT_VERSION=${VERSION} -DOPENSSL_ROOT_DIR=$OPENSSL_ROOT_DIR
-DGEODE_ROOT=${GEODE}/geode-assembly/build/install/apache-geode
-cpack -G TGZ --config CPackSourceConfig.cmake
-NCOUT=apache-geode-native-${VERSION}-src.tar.gz
-NCTGZ=apache-geode-native-${VERSION}-src.tgz
-mkdir repkg-temp
-cd repkg-temp
-tar xzf ../${NCOUT}
-rm ../${NCOUT}*
-mv apache-geode-native apache-geode-native-${VERSION}-src
-tar czf ../${NCTGZ} *
-cd ..
-rm -Rf repkg-temp
-gpg --armor -u ${SIGNING_KEY} -b ${NCTGZ}
-${SHASUM} ${NCTGZ} > ${NCTGZ}.sha256
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Building geode-benchmarks..."
-echo "============================================================"
-set -x
-cd ${GEODE_BENCHMARKS}
-BMDIR=apache-geode-benchmarks-${VERSION}-src
-BMTAR=${BMDIR}.tgz
-git clean -dxf
-mkdir ../${BMDIR}
-cp -r .travis.yml * ../${BMDIR}
-tar czf ${BMTAR} -C .. ${BMDIR}
-rm -Rf ../${BMDIR}
-gpg --armor -u ${SIGNING_KEY} -b ${BMTAR}
-${SHASUM} ${BMTAR} > ${BMTAR}.sha256
-set +x
-
-
-function failMsg2 {
- errln=$1
- echo "ERROR: script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
149-$(( errln - 1 ))) and try again"
- echo "For this script only (prepare_rc.sh), it's also safe to just try again
from the top"
-}
-trap 'failMsg2 $LINENO' ERR
-
-
-echo ""
-echo "============================================================"
-echo "Tagging the release candidate in each repository. The tags will not be
pushed yet..."
-echo "============================================================"
-for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ; do
- set -x
- cd ${DIR}
- git tag -s -u ${SIGNING_KEY} rel/v${FULL_VERSION} -m "Release candidate
${FULL_VERSION}"
- set +x
-done
-
-
-echo ""
-echo "============================================================"
-echo "Copying artifacts to svn directory for publication. The artifacts will
not be committed..."
-echo "============================================================"
-set -x
-cd ${SVN_DIR}
-svn rm ${VERSION}.RC* &>/dev/null || true
-cp ${GEODE}/KEYS .
-mkdir ${FULL_VERSION}
-cp ${GEODE}/geode-assembly/build/distributions/* ${FULL_VERSION}
-cp ${GEODE_EXAMPLES}/build/distributions/* ${FULL_VERSION}
-cp ${GEODE_NATIVE}/build/apache-geode-native-${VERSION}* ${FULL_VERSION}
-cp ${GEODE_BENCHMARKS}/apache-geode-benchmarks-${VERSION}* ${FULL_VERSION}
-set +x
-
-# verify all files are signed. sometimes gradle "forgets" to make the .asc
file
-for f in ${FULL_VERSION}/*.tgz ; do
- if ! [ -r $f.sha256 ] ; then
- echo missing $f.sha256
- exit 1
- fi
- if ! [ -r $f.asc ] ; then
- set -x
- gpg --armor -u ${SIGNING_KEY} -b $f
- set +x
- if ! [ -r $f.asc ] ; then
- echo missing $f.asc
- exit 1
- fi
- fi
- size=$(ls -l $f | awk '{print $5}')
- if [ $size -lt 10000 ] ; then
- echo $f file size is only $size bytes, that seems suspicious.
- exit 1
- fi
-done
-
-set -x
-svn add ${FULL_VERSION}
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Publishing artifacts to nexus staging manager..."
-echo "PLEASE NOTE, the 2nd prompt will be for your apache (not gpg) password.
Pay attention as the prompts look very similar."
-echo "============================================================"
-publishcmd="./gradlew publish --no-parallel -Pversion=${VERSION} -Paskpass
-Psigning.keyId=${SIGNING_KEY}
-Psigning.secretKeyRingFile=${HOME}/.gnupg/secring.gpg
-PmavenUsername=${APACHE_USERNAME}"
-set -x
-cd ${GEODE}
-sh -c "$publishcmd"
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Done preparing the release and staging to nexus! Next steps:"
-echo "============================================================"
-cd ${GEODE}/../..
-echo "1. Go to https://repository.apache.org, login as ${APACHE_USERNAME}, and
click on Staging Repositories"
-echo "2. If there is a prior ${VERSION} RC, select it and click Drop."
-echo "2b.If publication got split between two staging repos, drop one of them
then run: pushd ${GEODE}; $publishcmd; popd"
-echo '3. Make a note of the 4-digit ID of the current ("implicitly created")
staging repo.'
-echo '4. Select the current staging repo and click Close.'
-echo '5. Wait ~10 seconds and then refresh the page to confirm that status has
become "Closed"'
-echo "6. Run ${0%/*}/commit_rc.sh -j $JIRA -v ${FULL_VERSION} -m
<4-DIGIT-ID-NOTED-ABOVE>"
diff --git a/dev-tools/release/print_announce_email.sh
b/dev-tools/release/print_announce_email.sh
deleted file mode 100755
index 1faf9e150d..0000000000
--- a/dev-tools/release/print_announce_email.sh
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: print_announce_email.sh -v version_number -f
latest_version_number"
- echo " -v The #.#.# version number"
- echo " -f The #.#.# version number of the latest and greatest, if
other than above"
- exit 1
-}
-
-VERSION=""
-LATER=""
-
-while getopts ":v:f:" opt; do
- case ${opt} in
- v )
- VERSION=$OPTARG
- ;;
- f )
- LATER=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${VERSION} == "" ]] ; then
- usage
-fi
-
-if [[ $VERSION =~ ^([0-9]+\.[0-9]+\.[0-9]+)$ ]]; then
- true
-else
- echo "Malformed version number ${VERSION}. Example valid number - 1.9.0"
- exit 1
-fi
-
-if [ -z "$FLAGSHIP" ] || [[ "$FLAGSHIP" =~ ^([0-9]+\.[0-9]+\.[0-9]+)$ ]]; then
- true
-else
- echo "Malformed version number ${FLAGSHIP}. Example valid number - 1.9.0"
- exit 1
-fi
-
-VERSION_MM=${VERSION%.*}
-
-#support mac or linux date arithmetic syntax
-DEADLINE=$(date --date '+5 days' '+%a, %B %d %Y' 2>/dev/null || date -v +5d
"+%a, %B %d %Y" 2>/dev/null || echo "<5 days from now>")
-
-if [ -n "${LATER}" ] && [ "${VERSION}" != "${LATER}" ] ; then
- LATEST="Users are encouraged to upgrade to the latest ${LATER%.*}.x release
(currently $LATER)."
-else
- LATEST="Users are encouraged to upgrade to this latest release."
-fi
-
-if echo $VERSION | grep -q '\.0$' ; then
- IMPROV=" improvements and"
-else
- IMPROV=""
-fi
-
-cat << EOF
-To: [email protected], [email protected], [email protected]
-Subject: [ANNOUNCE] Apache Geode ${VERSION}
-
-The Apache Geode community is pleased to announce the availability of
-Apache Geode ${VERSION}.
-
-Geode is a data management platform that provides a database-like consistency
-model, reliable transaction processing and a shared-nothing architecture
-to maintain very low latency performance with high concurrency processing.
-
-Apache Geode ${VERSION} contains a number of${IMPROV} bug fixes.
-$LATEST
-For the full list of changes please review the release notes at:
-https://cwiki.apache.org/confluence/display/GEODE/Release+Notes#ReleaseNotes-${VERSION}
-
-Release artifacts and documentation can be found at the project website:
-https://geode.apache.org/releases/
-https://geode.apache.org/docs/guide/${VERSION_MM//./}/about_geode.html
-
-We would like to thank all the contributors that made the release possible.
-Regards,
-$(git config --get user.name) on behalf of the Apache Geode team
-EOF
diff --git a/dev-tools/release/print_rc_email.sh
b/dev-tools/release/print_rc_email.sh
deleted file mode 100755
index 29e45feb76..0000000000
--- a/dev-tools/release/print_rc_email.sh
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: print_rc_email.sh -v version_number -m maven_repo_id"
- echo " -v The #.#.#.RC# version number"
- echo " -m The 4 digit id of the nexus maven repo"
- exit 1
-}
-
-FULL_VERSION=""
-MAVEN=""
-
-while getopts ":v:m:" opt; do
- case ${opt} in
- v )
- FULL_VERSION=$OPTARG
- ;;
- m )
- MAVEN=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${FULL_VERSION} == "" ]] || [[ ${MAVEN} == "" ]]; then
- usage
-fi
-
-if [[ $FULL_VERSION =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.(RC[0-9]+)$ ]]; then
- VERSION=${BASH_REMATCH[1]}
-else
- echo "Malformed version number ${FULL_VERSION}. Example valid number -
1.9.0.RC1"
- exit 1
-fi
-
-VERSION_MM=${VERSION%.*}
-
-#support mac or linux date arithmetic syntax
-DEADLINE=$(date --date '+5 days' '+%a, %B %d %Y' 2>/dev/null || date -v +5d
"+%a, %B %d %Y" 2>/dev/null || echo "<5 days from now>")
-
-cat << EOF
-Hello Geode Dev Community,
-
-This is a release candidate for Apache Geode version ${FULL_VERSION}.
-Thanks to all the community members for their contributions to this release!
-
-Please do a review and give your feedback, including the checks you performed.
-
-Voting deadline:
-3PM PST ${DEADLINE}.
-
-Please note that we are voting upon the source tag:
-rel/v${FULL_VERSION}
-
-Release notes:
-https://cwiki.apache.org/confluence/display/GEODE/Release+Notes#ReleaseNotes-${VERSION}
-
-Source and binary distributions:
-https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}/
-
-Maven staging repo:
-https://repository.apache.org/content/repositories/orgapachegeode-${MAVEN}
-
-GitHub:
-https://github.com/apache/geode/tree/rel/v${FULL_VERSION}
-https://github.com/apache/geode-examples/tree/rel/v${FULL_VERSION}
-https://github.com/apache/geode-native/tree/rel/v${FULL_VERSION}
-https://github.com/apache/geode-benchmarks/tree/rel/v${FULL_VERSION}
-
-Pipelines:
-https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-support-${VERSION_MM//./-}-main
-https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-support-${VERSION_MM//./-}-rc
-
-Geode's KEYS file containing PGP keys we use to sign the release:
-https://github.com/apache/geode/blob/develop/KEYS
-
-Command to run geode-examples:
-./gradlew
-PgeodeReleaseUrl=https://dist.apache.org/repos/dist/dev/geode/${FULL_VERSION}
-PgeodeRepositoryUrl=https://repository.apache.org/content/repositories/orgapachegeode-${MAVEN}
build runAll
-
-Regards
-$(git config --get user.name)
-EOF
diff --git a/dev-tools/release/promote_rc.sh b/dev-tools/release/promote_rc.sh
deleted file mode 100755
index 9d8459a443..0000000000
--- a/dev-tools/release/promote_rc.sh
+++ /dev/null
@@ -1,703 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: promote_rc.sh -j ticket -v version_number -k
your_full_gpg_public_key -g your_github_username"
- echo " -j The GEODE-nnnnn Jira identifier for this release"
- echo " -v The #.#.#.RC# version number to ship"
- echo " -k Your 8 digit GPG key id (the last 8 digits of your gpg
fingerprint)"
- echo " -g Your github username"
- exit 1
-}
-
-JIRA=""
-FULL_VERSION=""
-SIGNING_KEY=""
-GITHUB_USER=""
-
-while getopts ":j:v:k:g:" opt; do
- case ${opt} in
- j )
- JIRA=$OPTARG
- ;;
- v )
- FULL_VERSION=$OPTARG
- ;;
- k )
- SIGNING_KEY=$OPTARG
- ;;
- g )
- GITHUB_USER=$OPTARG
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${JIRA} == "" ]] || [[ ${FULL_VERSION} == "" ]] || [[ ${SIGNING_KEY} ==
"" ]] || [[ ${GITHUB_USER} == "" ]]; then
- usage
-fi
-
-SIGNING_KEY=$(gpg --fingerprint "${SIGNING_KEY}" | tr -d ' ' | grep
"${SIGNING_KEY}" | sed 's/Keyfingerprint=//' | tail -1)
-
-if [[ $SIGNING_KEY =~ ^[0-9A-Fa-f]{40}$ ]]; then
- true
-else
- echo "Malformed signing key ${SIGNING_KEY}. Example valid key: ABCD1234"
- exit 1
-fi
-
-if [[ $FULL_VERSION =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.(RC[0-9]+)$ ]]; then
- VERSION=${BASH_REMATCH[1]}
-else
- echo "Malformed version number ${FULL_VERSION}. Example valid version:
1.9.0.RC1"
- exit 1
-fi
-
-VERSION_MM=${VERSION%.*}
-
-set -x
-WORKSPACE=$PWD/release-${VERSION}-workspace
-GEODE=$WORKSPACE/geode
-GEODE_DEVELOP=$WORKSPACE/geode-develop
-GEODE_EXAMPLES=$WORKSPACE/geode-examples
-GEODE_NATIVE=$WORKSPACE/geode-native
-GEODE_NATIVE_DEVELOP=$WORKSPACE/geode-native-develop
-GEODE_BENCHMARKS=$WORKSPACE/geode-benchmarks
-GEODE_BENCHMARKS_DEVELOP=$WORKSPACE/geode-benchmarks-develop
-BREW_DIR=$WORKSPACE/homebrew-core
-SVN_DIR=$WORKSPACE/dist/dev/geode
-set +x
-
-if [ -d "$GEODE" ] && [ -d "$GEODE_DEVELOP" ] && [ -d "$GEODE_EXAMPLES" ] && [
-d "$GEODE_NATIVE" ] && [ -d "$GEODE_NATIVE_DEVELOP" ] && [ -d
"$GEODE_BENCHMARKS" ] && [ -d "$GEODE_BENCHMARKS_DEVELOP" ] && [ -d "$BREW_DIR"
] && [ -d "$SVN_DIR" ] ; then
- true
-else
- echo "Please run this script from the same working directory as you
initially ran prepare_rc.sh"
- exit 1
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Checking docker..."
-echo "============================================================"
-if ! docker images >/dev/null ; then
- echo "Make sure docker daemon is running and try again."
- exit 1
-fi
-
-
-PATCH=${VERSION##*.}
-if [ $PATCH -ne 0 ] ; then
- echo ""
- echo "============================================================"
- echo "Checking if serialization version has changed"
- echo "============================================================"
- cd ${GEODE}
- PREV=${VERSION%.*}.$(( PATCH - 1 ))
-
VER=geode-serialization/src/main/java/org/apache/geode/internal/serialization/KnownVersion.java
- [ -r $VER ] ||
VER=geode-serialization/src/main/java/org/apache/geode/internal/serialization/Version.java
- set -x
- prevsver=$(git show "rel/v${PREV}:${VER}" | awk '/CURRENT =/{print $NF}')
- cursver=$(cat ${VER} | awk '/CURRENT =/{print $NF}')
- set +x
- [ "$cursver" = "$prevsver" ] && echo "No change: $VERSION will replace $PREV
in old-versions list" || echo "Changed: old-versions list will include both
$PREV and $VERSION"
-fi
-
-
-function failMsg {
- errln=$1
- echo "ERROR: script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
151-$(( errln - 1 ))) and try again"
-}
-trap 'failMsg $LINENO' ERR
-
-
-echo ""
-echo "============================================================"
-echo "Checking for later versions..."
-echo "============================================================"
-cd ${GEODE_DEVELOP}
-latestnv=$(git tag| grep '^rel/v' | grep -v RC | cut -c6- | egrep
'^[0-9]+\.[0-9]+\.[0-9]+$' | awk -F. '{print
1000000*$1+1000*$2+$3,$1"."$2"."$3}' | sort -n | tail -1)
-latestn=$(echo $latestnv | awk '{print $1}')
-latestv=$(echo $latestnv | awk '{print $2}')
-thisre=$(echo $VERSION | awk -F. '{print 1000000*$1+1000*$2+$3}')
-if [ $latestn -gt $thisre ] ; then
- LATER="$latestv"
- echo "Later version $LATER found; $VERSION will not be merged to master or
tagged as 'latest' in docker."
-else
- LATER=""
- echo "No later versions found; $VERSION will be tagged as 'latest' in docker
and merged to master"
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Releasing artifacts to mirror sites..."
-echo "(note: must be logged in to svn as a PMC member or this will fail)"
-echo "============================================================"
-set -x
-cd ${SVN_DIR}/../..
-svn update
-svn mv dev/geode/${FULL_VERSION} release/geode/${VERSION}
-cp dev/geode/KEYS release/geode/KEYS
-svn commit -m "$JIRA: Release Apache Geode ${VERSION}
-
-Publish the source, binary, and checksum artifacts to ASF svn server,
-from which they will be picked up and published within 15 minutes to
-the URLs on https://geode.apache.org/releases/"
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Tagging ${FULL_VERSION} as ${VERSION} and pushing tags..."
-echo "============================================================"
-for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ; do
- set -x
- cd ${DIR}
- git tag -s -u ${SIGNING_KEY} rel/v${VERSION} -m "Apache Geode v${VERSION}
release" rel/v${FULL_VERSION}^{}
- git push origin rel/v${VERSION}
- set +x
-done
-
-
-function waitforserver {
- server="$1"
- msg="$2"
- file=apache-geode-${VERSION}.tgz
- baseurl=https://${server}/${VERSION}/${file}
- echo ""
- echo "============================================================"
- echo "Waiting for ${baseurl} to appear..."
- if echo "${server}" | grep -q repo1 ; then
- echo "(may take up to one hour after clicking 'Release' on
http://repository.apache.org/ )"
- elif echo "${server}" | grep -q dlcdn ; then
- echo "(may take a few hours)"
- else
- echo "(may take up to 15 minutes)"
- fi
- [ -z "$msg" ] || echo "$msg"
- echo "============================================================"
- for suffix in "" .asc .sha256 ; do
- if [ "${suffix}" = ".sha256" ] && echo "${server}" | grep -q repo1 ; then
- continue;
- fi
- url=${baseurl}${suffix}
- expectedsize=$(cd ${SVN_DIR}/../../release/geode/${VERSION}; ls -l
${file}${suffix} | awk '{print $5}')
- if [ -z "$expectedsize" ] ; then
- echo "internal error: unable to get size of
${SVN_DIR}/../../release/geode/${VERSION}/${file}${suffix}"
- exit 1
- fi
- actualsize=0
- while [ "$expectedsize" -ne "$actualsize" ] ; do
- while ! curl -sk --output /dev/null --head --fail "$url"; do
- echo -n .
- sleep 12
- done
- actualsize=$(curl -fsk --head "$url" | grep -i "Content-Length" | awk
'{print $2}' | tr -d '\r')
- done
- echo "$url exists and is correct size"
- done
-}
-
-waitforserver "downloads.apache.org/geode"
-
-
-echo ""
-echo "============================================================"
-GEODE_SHA=$(awk '{print $1}' <
$WORKSPACE/dist/release/geode/${VERSION}/apache-geode-${VERSION}.tgz.sha256)
-if [ -n "$LATER" ] ; then
- echo "NOT updating brew to avoid overwriting newer version $LATER"
- echo "============================================================"
-else
- echo "Updating brew"
- echo "============================================================"
- set -x
- cd ${BREW_DIR}/Formula
- git pull
- git remote add myfork [email protected]:${GITHUB_USER}/homebrew-core.git ||
true
- if ! git fetch myfork ; then
- echo "Please fork https://github.com/Homebrew/homebrew-core"
- exit 1
- fi
- git checkout -b apache-geode-${VERSION}
- set +x
- sed -e 's# *url ".*# url
"https://www.apache.org/dyn/closer.lua?path=geode/'"${VERSION}"'/apache-geode-'"${VERSION}"'.tgz"#'
\
- -e '/ *mirror ".*www.*/d' \
- -e '/ *mirror ".*downloads.*/d' \
- -e 's# *mirror ".*archive.*# mirror
"https://archive.apache.org/dist/geode/'"${VERSION}"'/apache-geode-'"${VERSION}"'.tgz"\
- mirror
"https://downloads.apache.org/geode/'"${VERSION}"'/apache-geode-'"${VERSION}"'.tgz"#'
\
- -e 's/ *sha256 ".*/ sha256 "'"${GEODE_SHA}"'"/' \
- -i.bak apache-geode.rb
- rm apache-geode.rb.bak
- set -x
- git add apache-geode.rb
- git diff --staged --color | cat
- git commit -m "$JIRA: Brew apache-geode ${VERSION}
-
-This is the latest and greatest release of Apache Geode."
- git push -u myfork
- set +x
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Updating Geode Dockerfile"
-echo "============================================================"
-set -x
-cd ${GEODE}/docker
-git pull -r
-set +x
-sed -e "s/^ENV GEODE_GPG.*/ENV GEODE_GPG ${SIGNING_KEY}/" \
- -e "s/^ENV GEODE_VERSION.*/ENV GEODE_VERSION ${VERSION}/" \
- -e "s/^ENV GEODE_SHA256.*/ENV GEODE_SHA256 ${GEODE_SHA}/" \
- -e "s/ha.pool.sks-keyservers.net/keyserver.ubuntu.com/" \
- -e '/This is a TEMPLATE/d' \
- -i.bak Dockerfile
-rm Dockerfile.bak
-set -x
-git add Dockerfile
-git diff --staged --color | cat
-git commit -m "$JIRA: update Dockerfile to apache-geode ${VERSION}
-
-The Dockerfile is updated _after_ the release is already tagged,
-because it needs to embed the sha256 of the release"
-git push
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Updating Native Dockerfile and other variables"
-echo "============================================================"
-set -x
-cd ${GEODE_NATIVE}
-git pull -r
-set +x
-if [ -r .travis.yml ] ; then
- sed -e "s/geode-native-build:[latest0-9.]*/geode-native-build:${VERSION}/" \
- -i.bak .travis.yml
-fi
-sed -e "s/GEODE_VERSION=.*/GEODE_VERSION=${VERSION}/" \
- -e "s/^ENV GEODE_VERSION.*/ENV GEODE_VERSION ${VERSION}/" \
- -i.bak $(git grep -l GEODE_VERSION= ; git grep -l 'ENV GEODE_VERSION')
-rm $(find . -name '*.bak')
-set -x
-git add .
-git diff --staged --color | cat
-git commit -m "$JIRA: Update Dockerfile and vars
-
-Native client hardcodes Geode version to test with in several places.
-Update native Dockerfile and other variables to apache-geode ${VERSION}"
-git push
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Building Geode docker image"
-echo "============================================================"
-set -x
-cd ${GEODE}/docker
-sed -e '/www.apache.org.dyn.closer/d' -i.backup Dockerfile
-if ! docker build . ; then
- echo retrying in 1 minute...
- sleep 60
- if ! docker build . ; then
- echo retrying in 4 minutes...
- sleep 240
- if ! docker build . ; then
- echo retrying in 7 minutes...
- sleep 420
- if ! docker build . ; then
- echo "Hmm, the geode Dockerfile doesn't seem to want to build..."
- echo "Try instrumenting it with some echo's to track down where it's
failing..."
- exit 7
- fi
- fi
- fi
-fi
-mv Dockerfile.backup Dockerfile
-docker build -t apachegeode/geode:${VERSION} .
-[ -n "$LATER" ] || docker build -t apachegeode/geode:latest .
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Building Native docker image"
-echo "============================================================"
-set -x
-cd ${GEODE_NATIVE}/docker
-docker build . || docker build . || docker build .
-docker build -t apachegeode/geode-native-build:${VERSION} .
-[ -n "$LATER" ] || docker build -t apachegeode/geode-native-build:latest .
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Publishing Geode docker image"
-echo "============================================================"
-set -x
-cd ${GEODE}/docker
-docker login
-docker push apachegeode/geode:${VERSION}
-[ -n "$LATER" ] || docker push apachegeode/geode:latest
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Publishing Native docker image"
-echo "============================================================"
-set -x
-cd ${GEODE_NATIVE}/docker
-docker push apachegeode/geode-native-build:${VERSION}
-[ -n "$LATER" ] || docker push apachegeode/geode-native-build:latest
-set +x
-
-
-if [ -z "$LATER" ] ; then
- echo ""
- echo "============================================================"
- echo "Setting Geode version for geode-native develop"
- echo "============================================================"
- set -x
- cd ${GEODE_NATIVE_DEVELOP}
- git pull
- git remote add myfork [email protected]:${GITHUB_USER}/geode-native.git || true
- git checkout -b update-to-geode-${VERSION}
- set +x
-
- sed -e "s/GEODE_VERSION=[0-9.]*/GEODE_VERSION=${VERSION}/" \
- -e "s/^ENV GEODE_VERSION.*/ENV GEODE_VERSION ${VERSION}/" \
- -i.bak $(git grep -l GEODE_VERSION= ; git grep -l 'ENV GEODE_VERSION')
-
- rm $(find . -name '*.bak')
- set -x
- git add .
- if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -m "$JIRA: Bump Geode version to ${VERSION}
-
-Native client hardcodes Geode version to test with in several places.
-Update those variables to latest-and-greatest apache-geode ${VERSION}"
- git push -u myfork
- fi
- set +x
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Removing temporary commit from geode-examples..."
-echo "============================================================"
-set -x
-cd ${GEODE_EXAMPLES}
-git pull
-set +x
-sed -e 's#^geodeRepositoryUrl *=.*#geodeRepositoryUrl =#' \
- -e 's#^geodeReleaseUrl *=.*#geodeReleaseUrl =#' -i.bak gradle.properties
-rm gradle.properties.bak
-set -x
-git add gradle.properties
-git diff --staged --color | cat
-git commit -m "Revert "'"'"$JIRA: Set temporary staging repo"'"'"
-
-The staging repo no longest exists, so set this back to search the
-default location (mavencentral)"
-git push
-set +x
-
-
-echo ""
-echo "============================================================"
-if [ -n "$LATER" ] ; then
- echo "NOT merging to master to avoid overwriting newer version $LATER"
- echo "============================================================"
-else
- echo "Merging to master"
- echo "============================================================"
- for DIR in ${GEODE} ${GEODE_EXAMPLES} ${GEODE_NATIVE} ${GEODE_BENCHMARKS} ;
do
- set -x
- cd ${DIR}
- git remote set-branches --add origin master
- git fetch origin
- git checkout support/${VERSION_MM}
- git checkout -b release/${VERSION} rel/v${VERSION}
- #this creates a merge commit that will then be ff-merged to master, so
word it from that perspective
- git merge -s ours origin/master -m "Replacing master with contents of
rel/v${VERSION}"
- git checkout master
- git merge release/${VERSION}
- git push origin master
- set +x
- done
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Updating 'old' versions and Benchmarks baseline on develop"
-echo "============================================================"
-set -x
-cd ${GEODE_DEVELOP}
-git pull
-git remote add myfork [email protected]:${GITHUB_USER}/geode.git || true
-git checkout -b add-${VERSION}-to-old-versions
-set +x
-#add at the end if this is a new minor or a patch to the latest minor,
otherwise add after it's predecessor
-if [ $PATCH -eq 0 ] || grep -q "'${PREV}'].each" settings.gradle ; then
- #before:
- # '1.9.0'].each {
- #after:
- # '1.9.0',
- # '1.10.0'].each {
- sed -e "s/].each/,\\
- '${VERSION}'].each/" \
- -i.bak settings.gradle
-else
- #before:
- # '1.9.0',
- #after:
- # '1.9.0',
- # '1.9.1',
- sed -e "s/'${PREV}'/'${PREV}',\\
- '${VERSION}'/" \
- -i.bak settings.gradle
-fi
-rm settings.gradle.bak
-
-action="Add"
-ser=""
-if [ $PATCH -ne 0 ] ; then
- #if the serialization version has not changed, we can drop the previous patch
- if [ "$cursver" = "$prevsver" ] ; then
- sed -e "/'${PREV}'/d" -i.bak settings.gradle
- rm settings.gradle.bak
- action="Replace ${PREV} with"
- ser="
-
-The serialization version has not changed between ${PREV} and ${VERSION},
-so there should be no need to keep both"
- fi
-fi
-
-if [ -z "$LATER" ] ; then
- #also update benchmark baseline for develop to this new minor
- sed \
- -e "s/^ baseline_version_default:.*/ baseline_version_default:
'${VERSION}'/" \
- -e "s/^ baseline_branch_default:.*/ baseline_branch_default: ''/" \
- -i.bak ci/pipelines/shared/jinja.variables.yml
- rm ci/pipelines/shared/jinja.variables.yml.bak
- BENCHMSG=" and set as default Benchmarks baseline"
- #if custom baseline on develop is newer [than release branch cut date],
resetting might
- #be the wrong choice. but, assuming it's older, a new minor is the time to
un-custom it
- if [ $PATCH = 0 ] ; then
- sed \
- -e "s/^ baseline_version:.*/ baseline_version: '${VERSION}'/" \
- -e "s/^ baseline_branch:.*/ baseline_branch: ''/" \
- -i.bak ci/pipelines/shared/jinja.variables.yml
- rm ci/pipelines/shared/jinja.variables.yml.bak
- BENCHMSG=" and set as Benchmarks baseline"
- fi
- set -x
- git add ci/pipelines/shared/jinja.variables.yml
-fi
-set -x
-git add settings.gradle
-git diff --staged --color | cat
-git commit -m "$JIRA: ${action} ${VERSION} as old version
-
-${action} ${VERSION} in old versions${BENCHMSG} on develop
-to enable rolling upgrade tests from ${VERSION}${ser}"
-git push -u myfork
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Updating 'old' versions and Benchmarks baseline on support/$VERSION_MM"
-echo "============================================================"
-set -x
-cd ${GEODE}
-git checkout support/${VERSION_MM}
-git pull
-set +x
-#add at the end as this release will always be the latest on this branch
-sed -e "s/].each/,\\
- '${VERSION}'].each/" \
- -i.bak settings.gradle
-rm settings.gradle.bak
-action="Add"
-ser=""
-if [ $PATCH -ne 0 ] ; then
- #if the serialization version has not changed, we can drop the previous patch
- if [ "$cursver" = "$prevsver" ] ; then
- sed -e "/'${PREV}'/d" -i.bak settings.gradle
- rm settings.gradle.bak
- action="Replace ${PREV} with"
- ser="
-
-The serialization version has not changed between ${PREV} and ${VERSION},
-so there should be no need to keep both"
- fi
-else
- #also update benchmark baseline for support branch to its new minor
- sed \
- -e "s/^ baseline_version:.*/ baseline_version: '${VERSION}'/" \
- -e "s/^ baseline_version:.*/ baseline_version: '${VERSION}'/" \
- -e "s/^ baseline_version_default:.*/ baseline_version_default:
'${VERSION}'/" \
- -e "s/^ baseline_branch:.*/ baseline_branch: ''/" \
- -e "s/^ baseline_branch_default:.*/ baseline_branch_default: ''/" \
- -i.bak ci/pipelines/shared/jinja.variables.yml
- rm ci/pipelines/shared/jinja.variables.yml.bak
- BENCHMSG2=" and set as Benchmarks baseline"
- set -x
- git add ci/pipelines/shared/jinja.variables.yml
-fi
-set -x
-git add settings.gradle
-git diff --staged --color | cat
-git commit -m "$JIRA: ${action} ${VERSION} as old version
-
-${action} ${VERSION} in old versions${BENCHMSG2} on support/$VERSION_MM
-to enable rolling upgrade tests from ${VERSION}${ser}"
-git push
-set +x
-
-
-if [ -z "$LATER" ] ; then
- for branch in develop support/$VERSION_MM ; do
- echo ""
- echo "============================================================"
- echo "Updating default benchmark baseline on $branch"
- echo "============================================================"
- set -x
- [ "develop" = "$branch" ] && BENCH=${GEODE_BENCHMARKS_DEVELOP} ||
BENCH=${GEODE_BENCHMARKS}
- [ "develop" = "$branch" ] && BASEL=${VERSION} || BASEL=${VERSION_MM}.0
- cd ${BENCH}
- git checkout $branch
- git pull
- set +x
- #DEFAULT_BASELINE_VERSION=1.14.0
- sed -e "s/^DEFAULT_BASELINE_VERSION=.*/DEFAULT_BASELINE_VERSION=${BASEL}/"
\
- -i.bak infrastructure/scripts/aws/run_against_baseline.sh
- rm infrastructure/scripts/aws/run_against_baseline.sh.bak
- set -x
- git add infrastructure/scripts/aws/run_against_baseline.sh
- if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -m "$JIRA: Update benchmark baseline
-
-Updates the default benchmark baseline on $branch to ${BASEL}"
- git push
- fi
- set +x
- done
-fi
-
-
-echo ""
-echo "============================================================"
-echo "Removing old Geode versions from mirrors"
-echo "============================================================"
-set -x
-cd ${SVN_DIR}/../../release/geode
-svn update
-#identify the latest patch release for "N-2" (the latest 3 major.minor
releases), remove anything else from mirrors (all releases remain available on
non-mirrored archive site)
-RELEASES_TO_KEEP=3
-set +x
-ls | awk -F. '/^[0-9]/{print 1000000*$1+1000*$2+$3,$1"."$2"."$3}'| sort -n |
awk '{mm=$2;sub(/\.[^.]*$/,"",mm);V[mm]=$2}END{for(v in V){print V[v]}}'|tail
-$RELEASES_TO_KEEP > ../keep
-echo Keeping releases: $(cat ../keep)
-rm -f ../did.remove
-(ls | grep '^[0-9]'; cat ../keep ../keep)|sort|uniq -u|while read oldVersion;
do
- set -x
- svn rm $oldVersion
- svn commit -m "$JIRA: Remove $oldVersion from mirrors
-
-ASF requests that we keep preferably one, and definitely fewer than 5
-releases on the mirrors, so aim for 3 to match N-2 support policy.
-
-Note: it is still archived at http://archive.apache.org/dist/geode"
- set +x
- [ ! -r ../did.remove ] || echo -n " and " >> ../did.remove
- echo -n $oldVersion >> ../did.remove
-done
-touch ../did.remove
-DID_REMOVE=$(cat ../did.remove)
-rm ../keep ../did.remove
-
-
-waitforserver "repo1.maven.org/maven2/org/apache/geode/apache-geode"
-
-echo ""
-NEWVERSION="${VERSION_MM}.$(( PATCH + 1 ))"
-echo "============================================================"
-echo -n "Bumping version to ${NEWVERSION}"
-cd "${WORKSPACE}/.."
-${0%/*}/set_versions.sh -j $JIRA -v ${NEWVERSION} -s -w "${WORKSPACE}"
-
-
-echo ""
-echo "============================================================"
-echo 'Done promoting Release Candidate to Official Release!'
-echo "============================================================"
-MAJOR="${VERSION_MM%.*}"
-MINOR="${VERSION_MM#*.}"
-PATCH="${VERSION##*.}"
-cd ${GEODE}/../..
-echo "Final steps (some gaps in numbering is normal since not all steps apply
to all releases):"
-[ -n "$LATER" ] || echo "2. Go to
https://github.com/${GITHUB_USER}/homebrew-core/pull/new/apache-geode-${VERSION}
and submit the pull request"
-echo "3. Go to
https://github.com/${GITHUB_USER}/geode/pull/new/add-${VERSION}-to-old-versions
and create the pull request"
-[ -n "$LATER" ] || echo "3b.Go to
https://github.com/${GITHUB_USER}/geode-native/pull/new/update-to-geode-${VERSION}
and create the pull request"
-[ -n "$LATER" ] && tag=":${VERSION}" || tag=""
-echo "4. Validate docker image: docker run -it apachegeode/geode${tag}"
-[ -n "$LATER" ] && caveat=" (UNLESS they are still unreleased on a later patch
branch)"
-echo "5. Mark ${VERSION} as Released in Jira and Bulk-transition JIRA issues
fixed in this release to Closed${caveat}"
-echo "5b.Publish to GitHub ( https://github.com/apache/geode/tags then Create
Release from the 2nd ... menu ), filling out the form as follows:"
-echo " Upload apache-geode-${VERSION}.tgz from: open
${GEODE}/geode-assembly/build/distributions/"
-echo " Release Title: Apache Geode ${VERSION}"
-echo " Release Description:"
-[ "${PATCH}" -ne 0 ] && echo "This patch release includes a few bug fixes." ||
echo " This release includes a significant number of bug fixes and
improvements."
-echo ""
-echo "sha256 for apache-geode-${VERSION}.tgz is $(awk '{print $1}' <
${GEODE}/geode-assembly/build/distributions/apache-geode-${VERSION}.tgz.sha256)"
-echo ""
-echo "See full release notes at
https://cwiki.apache.org/confluence/display/GEODE/Release+Notes#ReleaseNotes-${VERSION}"
-echo ""
-echo "8. Check that ${VERSION} documentation has been published to
https://geode.apache.org/docs/"
-[ -z "$DID_REMOVE" ] || DID_REMOVE=" and ${DID_REMOVE} info has been removed"
-echo "9. Check that ${VERSION} download info has been published to
https://geode.apache.org/releases/${DID_REMOVE}"
-[ "${PATCH}" -ne 0 ] || echo "10. If 3rd-party dependencies haven't been
bumped in awhile, ask on the dev list for a volunteer (details in
dev-tools/dependencies/README.md)"
-[ "${PATCH}" -ne 0 ] || [ "${MINOR}" -lt 15 ] || echo "11. In accordance with
Geode's N-2 support policy, propose on the dev list that the time has come to
${0%/*}/end_of_support.sh -v ${MAJOR}.$((MINOR - 3))"
-[ "${PATCH}" -ne 0 ] || [ -n "$LATER" ] || echo "12. Log in to
https://hub.docker.com/repository/docker/apachegeode/geode and update the
latest Dockerfile linktext and url to ${VERSION_MM}"
-[ -n "$LATER" ] || andnative=", geode-benchmarks, and geode-native"
-echo "If there are any support branches between ${VERSION_MM} and develop,
manually cherry-pick '${VERSION}' bump from develop to those branches of
geode${andnative}."
-echo "Bump support pipeline to ${VERSION_MM}.$(( PATCH + 1 )) by plussing
BumpPatch in
https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-support-${VERSION_MM//./-}-main?group=semver-management"
-[ "${PATCH}" -ne 0 ] || echo "Run cd ${GEODE} &&
geode-management/src/test/script/update-management-wiki.sh"
-[ -n "$LATER" ] || echo "Make a note to confirm tomorrow morning that your
homebrew PR passed its PR checks and was merged to master"
-echo 'Send email! Note: MUST be sent from your @apache.org email address (see
https://infra.apache.org/committer-email.html) and MUST be sent as Plain text
(in gmail click three dots at bottom of compose window then Plain text mode)'
-${0%/*}/print_announce_email.sh -v "${VERSION}" -f "${LATER}"
-echo ""
-which pbcopy >/dev/null && ${0%/*}/print_announce_email.sh -v "${VERSION}" -f
"${LATER}" | pbcopy && echo "(copied to clipboard)"
-waitforserver "dlcdn.apache.org/geode" "Please wait for this to complete
before sending the above [ANNOUNCE] email.
-All other tasks above can be completed now (while you wait for dlcdn)."
diff --git a/dev-tools/release/set_copyright.sh
b/dev-tools/release/set_copyright.sh
deleted file mode 100755
index 74df49d655..0000000000
--- a/dev-tools/release/set_copyright.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: set_copyright.sh -j ticket dirs"
- echo " -j The GEODE-nnnnn Jira identifier for this chore"
- echo " dirs one or more directories to search for copyrights"
- exit 1
-}
-
-if [[ "$3" == "" ]] ; then
- usage
-fi
-
-if [[ "$1" != "-j" ]] ; then
- usage
-fi
-
-JIRA=$2
-shift 2
-
-function failMsg {
- errln=$1
- echo "ERROR: set_copyright script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
46-$(( errln - 1 ))) and try again"
-}
-trap 'failMsg $LINENO' ERR
-
-
-echo ""
-echo "============================================================"
-echo "Checking Copyright NOTICE and updating year if necessary"
-echo "============================================================"
-set -x
-year=$(date +%Y)
-for DIR in $@ ; do
- cd ${DIR}
- git grep -l '^Copyright.*Apache' | grep NOTICE | while read NOTICE ; do
- sed \
- -e "2s/ \(20[0-9][0-9]\) / \1-${year} /" \
- -e "2s/-20[0-9][0-9] /-${year} /" \
- -e "2s/${year}-${year}/${year}/" \
- -i.bak $NOTICE
- rm -f $NOTICE.bak
- git add $NOTICE
- done
- if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -a -m "$JIRA: Bumping copyright year to ${year}"
- fi
-done
-set +x
diff --git a/dev-tools/release/set_versions.sh
b/dev-tools/release/set_versions.sh
deleted file mode 100755
index afb65a6dc7..0000000000
--- a/dev-tools/release/set_versions.sh
+++ /dev/null
@@ -1,215 +0,0 @@
-#!/usr/bin/env 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.
-
-set -e
-
-usage() {
- echo "Usage: set_versions.sh -j ticket -v version_number [-s]"
- echo " -j The GEODE-nnnnn Jira identifier for this release"
- echo " -v The #.#.# version number for the next release"
- echo " -s configure examples to use latest snapshot instead of release"
- exit 1
-}
-
-JIRA=""
-FULL_VERSION=""
-
-while getopts ":j:v:snw:" opt; do
- case ${opt} in
- j )
- JIRA=$OPTARG
- ;;
- v )
- VERSION=$OPTARG
- ;;
- s )
- EXAMPLES_USE_SNAPSHOTS=true
- ;;
- n )
- NOPUSH=true
- ;;
- w )
- WORKSPACE="$OPTARG"
- CLEAN=false
- ;;
- \? )
- usage
- ;;
- esac
-done
-
-if [[ ${JIRA} == "" ]] || [[ ${VERSION} == "" ]] ; then
- usage
-fi
-
-if ! [[ $VERSION =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
- echo "Malformed version number ${VERSION}. Example valid version: 1.9.0"
- exit 1
-fi
-
-BUILDSUFFIX="-build.0"
-VERSION_MM=${VERSION%.*}
-
-if [ "${EXAMPLES_USE_SNAPSHOTS}" = "true" ] ; then
- GEODEFOREXAMPLES="${VERSION_MM}.+"
-else
- GEODEFOREXAMPLES="${VERSION}"
-fi
-
-set -x
-[ -n "${WORKSPACE}" ] || WORKSPACE=$PWD/release-${VERSION}-workspace
-GEODE=$WORKSPACE/geode
-GEODE_EXAMPLES=$WORKSPACE/geode-examples
-GEODE_BENCHMARKS=$WORKSPACE/geode-benchmarks
-set +x
-
-
-function failMsg1 {
- echo "ERROR: set_versions script did NOT complete successfully. Please try
again."
-}
-trap failMsg1 ERR
-
-
-if [ "${CLEAN}" != "false" ] ; then
- echo ""
- echo "============================================================"
- echo "Cleaning workspace directory..."
- echo "============================================================"
- set -x
- rm -rf $WORKSPACE
- mkdir -p $WORKSPACE
- cd $WORKSPACE
- set +x
-
-
- echo ""
- echo "============================================================"
- echo "Cloning repositories..."
- echo "============================================================"
- set -x
- git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode.git
- git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode-examples.git
- git clone --single-branch --branch support/${VERSION_MM}
[email protected]:apache/geode-benchmarks.git
- set +x
-fi
-
-
-function failMsg2 {
- errln=$1
- echo "ERROR: set_versions script did NOT complete successfully"
- echo "Comment out any steps that already succeeded (approximately lines
87-$(( errln - 1 ))) and try again"
-}
-trap 'failMsg2 $LINENO' ERR
-
-
-echo ""
-echo "============================================================"
-echo "Setting Geode versions"
-echo "============================================================"
-set -x
-cd ${GEODE}
-set +x
-
-#version = 1.13.0-build.0
-sed -e "s/^version =.*/version = ${VERSION}${BUILDSUFFIX}/" -i.bak
gradle.properties
-
-# product_version: '1.13'
-sed -E \
- -e "s#product_version: '[0-9.]+'#product_version: '${VERSION_MM}'#" \
- -i.bak geode-book/config.yml
-
-#git clone -b branch --depth 1 https://github.com/apache/geode.git geode
-sed -e "s#clone -b [ds][evlopurt/0-9.]*#clone -b support/${VERSION_MM}#" \
- -i.bak \
- ci/docker/cache_dependencies.sh \
- ci/images/google-geode-builder/scripts/cache_dependencies.sh
-
-rm -f gradle.properties.bak geode-book/config.yml.bak
ci/docker/cache_dependencies.sh.bak
ci/images/google-geode-builder/scripts/cache_dependencies.sh.bak
-set -x
-git add gradle.properties geode-book/config.yml
ci/docker/cache_dependencies.sh
ci/images/google-geode-builder/scripts/cache_dependencies.sh
-if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -m "$JIRA: Bump version to ${VERSION}
-
-As part of the Geode Release Process, the build number must
-be rolled forward so work can begin on the next release"
- [ "$NOPUSH" = "true" ] || git push -u origin
-fi
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Setting geode-examples version"
-echo "============================================================"
-set -x
-cd ${GEODE_EXAMPLES}
-git pull
-set +x
-
-#version = 1.12.0-build.0
-#geodeVersion = 1.12.+
-sed -e "s/^version = .*/version = ${VERSION}${BUILDSUFFIX}/" \
- -e "s/^geodeVersion = .*/geodeVersion = ${GEODEFOREXAMPLES}/" \
- -i.bak gradle.properties
-
-rm gradle.properties.bak
-set -x
-git add .
-if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -m "$JIRA: Bump version to ${VERSION}
-
-As part of the Geode Release Process, the geode-examples build number
-must be rolled forward as work begins on the next release"
- [ "$NOPUSH" = "true" ] || git push -u origin
-fi
-set +x
-
-
-echo ""
-echo "============================================================"
-echo "Setting geode-benchmarks version"
-echo "============================================================"
-set -x
-cd ${GEODE_BENCHMARKS}
-git pull
-set +x
-
-#versionNumber = 1.14.0
-sed -e "s/^versionNumber = .*/versionNumber = ${VERSION}/" \
- -i.bak gradle.properties
-
-rm gradle.properties.bak
-set -x
-git add gradle.properties
-if [ $(git diff --staged | wc -l) -gt 0 ] ; then
- git diff --staged --color | cat
- git commit -m "$JIRA: Bump version to ${VERSION}
-
-As part of the Geode Release Process, the geode-benchmarks build number
-must be rolled forward as work begins on the next release"
- [ "$NOPUSH" = "true" ] || git push -u origin
-fi
-set +x
-
-
-echo ""
-echo "============================================================"
-echo 'Done setting support versions!'
-echo "============================================================"
-cd ${GEODE}/../..