You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@celeborn.apache.org by zh...@apache.org on 2022/12/29 10:04:58 UTC

[incubator-celeborn] branch main updated: [CELEBORN-177] Script for creating source release artifact (#1122)

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

zhouky pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-celeborn.git


The following commit(s) were added to refs/heads/main by this push:
     new 932a6c27 [CELEBORN-177] Script for creating source release artifact (#1122)
932a6c27 is described below

commit 932a6c2703437acbf5d7fae693c7ed00b3cfbc21
Author: Cheng Pan <ch...@apache.org>
AuthorDate: Thu Dec 29 18:04:54 2022 +0800

    [CELEBORN-177] Script for creating source release artifact (#1122)
---
 build/release/create-package.sh | 86 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

diff --git a/build/release/create-package.sh b/build/release/create-package.sh
new file mode 100755
index 00000000..c148fef9
--- /dev/null
+++ b/build/release/create-package.sh
@@ -0,0 +1,86 @@
+#!/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 -o pipefail
+set -e
+set -x
+
+SKIP_GPG=${SKIP_GPG:-false}
+
+exit_with_usage() {
+  local NAME=$(basename $0)
+  cat << EOF
+Usage: $NAME <source|binary>
+
+Top level targets are:
+  source: Create source release tarball
+  binary: Create binary release tarball
+
+All other inputs are environment variables:
+
+SKIP_GPG        - (optional) Default false
+EOF
+  exit 1
+}
+
+PROJECT_DIR="$(cd "$(dirname "$0")"/../..; pwd)"
+RELEASE_DIR="${PROJECT_DIR}/tmp"
+
+RELEASE_VERSION=$(grep '<project.version>.*</project.version>' "${PROJECT_DIR}/pom.xml" -o \
+                | head -n 1 \
+                | sed 's/<\/*project.version>//g')
+
+SHASUM="sha512sum"
+if [ "$(uname)" == "Darwin" ]; then
+    SHASUM="shasum -a 512"
+fi
+
+package_source() {
+  SRC_TGZ_FILE="apache-celeborn-${RELEASE_VERSION}-source.tgz"
+  SRC_TGZ="${RELEASE_DIR}/${SRC_TGZ_FILE}"
+
+  mkdir -p "${RELEASE_DIR}"
+  rm -f "${SRC_TGZ}*"
+
+  echo "Creating source release tarball ${SRC_TGZ_FILE}"
+
+  git archive --prefix="apache-celeborn-${RELEASE_VERSION}-source/" -o "${SRC_TGZ}" HEAD
+
+  if [ "$SKIP_GPG" == "false" ] ; then
+    gpg --armor --detach-sig "${SRC_TGZ}"
+  fi
+  (cd "${RELEASE_DIR}" && $SHASUM "${SRC_TGZ_FILE}" > "${SRC_TGZ_FILE}.sha512")
+}
+
+package_binary() {
+  echo "TODO"
+  exit 1
+}
+
+if [[ "$1" == "source" ]]; then
+  package_source
+  exit 0
+fi
+
+if [[ "$1" == "binary" ]]; then
+  package_binary
+  exit 0
+fi
+
+exit_with_usage