This is an automated email from the ASF dual-hosted git repository.

jin pushed a commit to branch before-release
in repository https://gitbox.apache.org/repos/asf/incubator-hugegraph.git

commit c31bb25ec530967087dc68cde6cf7d61f8a6f39c
Author: imbajin <[email protected]>
AuthorDate: Wed Dec 7 20:42:56 2022 +0800

    feat: support release with one script & remove useless script
---
 build.sh                                 | 24 ---------
 hugegraph-dist/scripts/apache-release.sh | 89 ++++++++++++++++++++++++++++++++
 2 files changed, 89 insertions(+), 24 deletions(-)

diff --git a/build.sh b/build.sh
deleted file mode 100644
index 43191e263..000000000
--- a/build.sh
+++ /dev/null
@@ -1,24 +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.
-#
-
-export MAVEN_HOME=/home/scmtools/buildkit/maven/apache-maven-3.3.9/
-export JAVA_HOME=/home/scmtools/buildkit/java/jdk1.8.0_25/
-export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
-
-mvn clean compile
-
diff --git a/hugegraph-dist/scripts/apache-release.sh 
b/hugegraph-dist/scripts/apache-release.sh
new file mode 100755
index 000000000..f7d1aeb2a
--- /dev/null
+++ b/hugegraph-dist/scripts/apache-release.sh
@@ -0,0 +1,89 @@
+#!/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.
+#
+
+GROUP="hugegraph"
+# current repository name
+REPO="${GROUP}"
+# release version (input by committer)
+RELEASE_VERSION=$1
+# git release branch (check it carefully)
+GIT_BRANCH="release-${RELEASE_VERSION}"
+
+RELEASE_VERSION=${RELEASE_VERSION:?"Please input the release version behind 
script"}
+
+WORK_DIR=$(cd "$(dirname "$0")" || exit; pwd)
+cd "${WORK_DIR}" || exit
+echo "In the work dir: $(pwd)"
+
+# clean old dir then build a new one
+rm -rfv dist && mkdir -p dist/apache-${REPO}
+
+# step1: package the source code
+git archive --format=tar.gz \
+  
--output="dist/apache-${REPO}/apache-${REPO}-${RELEASE_VERSION}-incubating-src.tar.gz"
 \
+  --prefix=apache-${REPO}-"${RELEASE_VERSION}"-incubating-src/ "${GIT_BRANCH}" 
|| exit
+
+# step2: copy the binary file (Optional)
+# Note: it's optional for project to generate binary package (skip this step 
if not need)
+cp -v ../../target/apache-${REPO}-incubating-"${RELEASE_VERSION}".tar.gz \
+  dist/apache-${REPO} || exit
+
+# step3: sign + hash
+##### 3.1 sign in source & binary package
+gpg --version 1>/dev/null || exit
+cd ./dist/apache-${REPO} || exit
+for i in *.tar.gz; do
+  echo "$i" && gpg --armor --output "$i".asc --detach-sig "$i"
+done
+
+##### 3.2 Generate SHA512 file
+shasum --version 1>/dev/null || exit
+for i in *.tar.gz; do
+  echo "$i" && shasum -a 512 "$i" >"$i".sha512
+done
+
+#### 3.3 check signature & sha512
+for i in *.tar.gz; do
+  echo "$i"
+  gpg --verify "$i".asc "$i" || exit
+done
+
+for i in *.tar.gz; do
+  echo "$i"
+  shasum -a 512 --check "$i".sha512 || exit
+done
+
+# step4: upload to Apache-SVN
+SVN_DIR="${GROUP}-svn-dev"
+cd ../
+rm -rfv ${SVN_DIR}
+
+svn co "https://dist.apache.org/repos/dist/dev/incubator/${GROUP}"; ${SVN_DIR}
+mkdir -p ${SVN_DIR}/"${RELEASE_VERSION}"
+cp -v apache-${REPO}/*tar.gz* "${SVN_DIR}/${RELEASE_VERSION}"
+cd ${SVN_DIR} || exit
+
+# check status first
+svn status
+svn add "${RELEASE_VERSION}"
+# check status again
+svn status
+# commit & push files
+svn commit -m "submit files for ${REPO} ${RELEASE_VERSION}"
+
+echo "Finished all, please check all steps in script manually again! "

Reply via email to