Added: dev/incubator/heron/heron-0.20.5-incubating-rc1/heron-install-0.20.5-incubating-rc1-ubuntu20.04.sh ============================================================================== --- dev/incubator/heron/heron-0.20.5-incubating-rc1/heron-install-0.20.5-incubating-rc1-ubuntu20.04.sh (added) +++ dev/incubator/heron/heron-0.20.5-incubating-rc1/heron-install-0.20.5-incubating-rc1-ubuntu20.04.sh Wed Jan 5 06:06:55 2022 @@ -0,0 +1,3225258 @@ +#!/bin/bash -e +# Copyright 2015 The Bazel Authors. All rights reserved. +# +# Licensed 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. + +function set_untar_flags { + # Some tar implementations emit verbose timestamp warnings, allowing the ability to disable them + # via --warning=no-timestamp (which we want to do in that case). To find out if we have one of + # those implementations, we see if help returns an error for that flag. + SUPPRESS_TAR_TS_WARNINGS="--warning=no-timestamp" + tar $SUPPRESS_TAR_TS_WARNINGS --help &> /dev/null && TAR_X_FLAGS=$SUPPRESS_TAR_TS_WARNINGS + # echo this so function doesn't return 1 + echo $TAR_X_FLAGS +} + +# Untars a gzipped archived to an output dir. Lazily creates dir if it doesn't exit +function untar { + if (( $# < 2 )); then + echo "Usage: untar <tar_file> <output_dir>" >&2 + echo "Args passed: $@" >&2 + exit 1 + fi + [ -d "$2" ] || mkdir -p $2 + tar xfz $1 -C $2 $TAR_X_FLAGS +} + +function test_write() { + local file="$1" + while [ "$file" != "/" ] && [ -n "${file}" ] && [ ! -e "$file" ]; do + file="$(dirname "${file}")" + done + [ -w "${file}" ] || { + echo >&2 + echo "The Heron installer must have write access to $1!" >&2 + echo >&2 + usage + } +} + +# Test for unzip dependencies +function check_unzip() { + if ! which unzip >/dev/null; then + echo >&2 + echo "unzip not found, please install the corresponding package." >&2 + echo "See $getting_started_url for more information on" >&2 + echo "dependencies of Heron." >&2 + exit 1 + fi +} + +# Test for tar dependencies +function check_tar() { + if ! which tar >/dev/null; then + echo >&2 + echo "tar not found, please install the corresponding package." >&2 + echo "See $getting_started_url for more information on" >&2 + echo "dependencies of Heron." >&2 + exit 1 + fi +} + +# Test for java dependencies +function check_java() { + if [ -z "${JAVA_HOME-}" ]; then + case "$(uname -s | tr 'A-Z' 'a-z')" in + linux) + JAVA_HOME="$(readlink -f $(which java) 2>/dev/null | sed 's_/bin/java__')" || true + BASHRC="~/.bashrc" + ;; + freebsd) + JAVA_HOME="/usr/local/openjdk8" + BASHRC="~/.bashrc" + ;; + darwin) + JAVA_HOME="$(/usr/libexec/java_home -v ${JAVA_VERSION}+ 2> /dev/null)" || true + BASHRC="~/.bash_profile" + ;; + esac + fi + if [ ! -x "${JAVA_HOME}/bin/java" ]; then + echo >&2 + echo "Java not found, please install the corresponding package" >&2 + echo "See $getting_started_url for more information on" >&2 + echo "dependencies of Heron." >&2 + exit 1 + fi +} + +set_untar_flags + +# Copyright 2015 The Bazel Authors. All rights reserved. +# +# Licensed 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. + +# Heron self-extractable installer for client package + +# Set help URL +getting_started_url=https://heron.apache.org/docs/getting-started-local-single-node/ + +# Installation and etc prefix can be overriden from command line +install_prefix=${1:-"/usr/local/heron"} + +progname="$0" + +echo "Heron installer" +echo "---------------" +echo + +function usage() { + echo "Usage: $progname [options]" >&2 + echo "Options are:" >&2 + echo " --prefix=/some/path set the prefix path (default=/usr/local)." >&2 + echo " --user configure for user install, expands to" >&2 + echo ' `--prefix=$HOME/.heron`.' >&2 + exit 1 +} + +prefix="/usr/local" +bin="%prefix%/bin" +base="%prefix%/heron" +conf="%prefix%/heron/conf" + +for opt in "${@}"; do + case $opt in + --prefix=*) + prefix="$(echo "$opt" | cut -d '=' -f 2-)" + ;; + --user) + bin="$HOME/bin" + base="$HOME/.heron" + ;; + *) + usage + ;; + esac +done + +bin="${bin//%prefix%/${prefix}}" +base="${base//%prefix%/${prefix}}" + +check_unzip; check_tar; check_java + +# Test for write access +test_write "${bin}" +test_write "${base}" + +# Do the actual installation +echo -n "Cleaning up symlinks in ${bin}, if present." + +# Cleaning-up, with some guards. +if [ -L "${bin}/heron" ]; then + rm -f "${bin}/heron" +fi + +if [ -L "${bin}/heron-explorer" ]; then + rm -f "${bin}/heron-explorer" +fi + +if [ -L "${bin}/heron-tracker" ]; then + rm -f "${bin}/heron-tracker" +fi + +if [ -L "${bin}/heron-ui" ]; then + rm -f "${bin}/heron-ui" +fi + +if [ -L "${bin}/heron-apiserver" ]; then + rm -f "${bin}/heron-apiserver" +fi + +if [ -d "${base}" -a -x "${base}/bin/heron" ]; then + rm -fr "${base}" +fi + +mkdir -p ${bin} ${base} ${base}/etc +echo "..done" + +echo -n "Uncompressing heron package." +unzip -q -o "${BASH_SOURCE[0]}" -d "${base}" +untar ${base}/heron.tar.gz ${base} +echo "..done" +chmod 0755 ${base}/bin/heron +chmod 0755 ${base}/bin/heron-explorer +chmod 0755 ${base}/bin/heron-tracker +chmod 0755 ${base}/bin/heron-ui +chmod 0755 ${base}/bin/heron-apiserver +chmod -R og-w "${base}" +chmod -R og+rX "${base}" +chmod -R u+rwX "${base}" + +ln -s "${base}/bin/heron" "${bin}/heron" +ln -s "${base}/bin/heron-explorer" "${bin}/heron-explorer" +ln -s "${base}/bin/heron-tracker" "${bin}/heron-tracker" +ln -s "${base}/bin/heron-ui" "${bin}/heron-ui" +ln -s "${base}/bin/heron-apiserver" "${bin}/heron-apiserver" + +echo -n "Uncompressing heron core." +untar ${base}/dist/heron-core.tar.gz ${base}/dist +echo "..done" + +rm "${base}/heron.tar.gz" +rm -f "${base}/dist/release.yaml" + +cat <<EOF + +Heron is now installed! + +Make sure you have "${bin}" in your path. + +See ${getting_started_url} for how to use Heron. +EOF +echo +cat <<'EOF' +heron.build.version : '0.20.5-incubating-rc1' +heron.build.time : Tue Jan 4 08:14:21 UTC 2022 +heron.build.timestamp : 1641284125000 +heron.build.host : primary +heron.build.user : release-agent +heron.build.git.revision : 0.20.5-incubating-rc1 +heron.build.git.status : Clean +EOF +exit 0 +PK�olÀãÝ-],$ÎçSÏ×KçúKr 츺1LN5cI+Q5,BËcCJõ¼MfÙñil«êûOj "{uArªS0ôäôÏ®ýDÕIZýAÓÐÙªhÃt7>jÚëA(®âÙ¢$-bÚA]0à +PþºÑ*¥¨i¾¶F¨Ý£³â=äÇSüê_yéI<gï¬ ù´?OÜöê·ËÃ*+ ¾gF [çU3Ô÷ì/àMv_!fLYDÒÃ>Ç_r&¼jË\-°9̳83ëw»®ÈZ]ë&ZFe¼©pm# æ)²ýR|Ãü ݯ¢7lÚ¾ÃàÉÅÞê¦v"©LN¡,½¯ìc«"À¯?7]qM±þFÕîÝ©lÕP +fµM·¤q³ITú½½y²79 Örîªl:uI.Øýl{WæÌá³¾»#*¦ñ]üþù+h¹ÅM!»Æï.Õj]Ö'$fc¶ÞB]QhõÜü*ÇÏÖKl0\Ü_Bêâ[˹¦ZÀ7vBÙЩ¶kI¥7Rúupî@¨§·$¥Oe§P·/öÖ«üç|v¸1[IiÙ)ýª@õ]8Íä^huj§÷b=Ý ¬@Ä^ wÃC0óáÊán¯èOÎ͸â'zÂI×aXx2có_îzr]8²ngnâ|&Ì¿&gg|>¥ÁÌ×kþ´ó~ØI¬Ñ#B§¡©#ð#(,+Á´/ï±(å®x°°ZQ.¶39ÿQ³x@ç½¶ÎÎ+ñã»Î +T(Ç8Áì|üê²OzW_=½ësÆëü¤>0qáø;74µÔVÐÌØ¶4Å8q"ê#ÙjWLÑ1ѽ¸%y? >Ø d >ùõwñºï;ïtd¥ÎÌkjCÚ÷ðÄ]³W´~iï[«¤¥ÛÏV¢bÜ¿x°,¡Cïlöõ0Fð¦°n@G{nLì*ªñÇÍAþÛ$cXÞ`¾V8ìØÕÙÎi?,Ü5ýá/ > A,ò¦ÁgøS²òogÏÑ«½Évqà$Ü b|{çT + Û`R¥¤}JJíå,*>v{H4=D43öã7©Or§eË~ìÍùå§fƾùÍm0äVDK ÖjâµØ½B'½*¤$®X +Æõ»³h³ÃëÚAKC\®o1eO1 .r*vÉ +ûb ùVvq$à|\z¹/ɱnëûR`¿éòwÕz)<)`B9ODÉY¡µ-:#ÑÞ ©ä!c&Ô´Ö�úÈ2~H½ÐqÏmÛ¸A!zx¯ßë{cÁb =0ç\£Å7hrPTeqéá¼°[]üUäT{àÑeDãDÛ±ÔÆM;"²Ô_/â¿>yFSWw ¹tʤF:`ãDbX¸üëà·_5 Dý`4];¡H£6=±ùBw4@zÌ[fj}b#A¤u¾Köþp¯e0pÂÄ4UåËòE©YÓ£ÄüÀ:%65?¶Ç^p!z©Ø5êÊZd×V¾ °¢'Uí;ºQÀ8ÛåtZçô¢LúÉh,¦ZIÕ¶òÊô¹^L±A»AË=cþ"QlËV¦C(Êú@IÖö*/ÊàåKqS±]õ+ Ö|wÔwã¹9raÉnø5èN¹Üì§Å)ÆÉI½½~O«ã³²ÕËÁàÖàÊ¥; áS¡øfÊD¥à]ã-îÀ,Ùg'ÑìRZ»Å[Ðe(÷ÐFëÚmøùÖÙió7xó]WSØ¥QàIbÛ|®Í$êêî¼®g¯Ë¸Û+½MöÚ-¸ÉÍl÷* O+·8#D6©!ðÀÕùêtW;L³Ç÷ÌyÑóÈð`@ZâZÉ*ý.zÖ±»ë88áEY£áKÆâUdSAv"&4y G¯h.ZlÄÎòZ*Bt&)RY¡àý¨ÑíÅ;%+þKýjG>x£¥²ÁRAºÅE,AÙÓÅG Oä>¢ ¿k]I¹Ð¦T3FRñti0ÉÀRñYOä]ìM>t#µò»É8ö+ZéèY½ ÆðnÄ^ÊÓ}¶ìªÓõªä¾¿hèÙØ¶0\Ì¥âuâúØ Ú9é÷>Ls¾=Ön@4ºe7@þãû¡-Ø4Ì!io·züÇOÕ98íhhW bNßÇ ïÕçtzzô@.Oi{s¡6ËâÕ²W·ßïÐlûù&föÆ� �Ö½`»5¸,iÅ-øë`V}à;)½&¸Ó ê¤ákit8IíL6¨>¯n1Vg¿ ÚþØ¢½¬ÂDzE{×uek-z}§ý²3°ÿ3À wx:Xp²ÐÀûö²·R½VÿñtÍáÑö«xÀT9[MI`¼Ç±wèÐá¤pHÇk/`·Ã<*îɯ2Ñ È¨*ÑÒ²]ªè±» :÷SjW¼Èü_Þ·oðj¥Í~pb÷A^Nþ Ò_aÆ.pö>?:Qûó?23Ñ×ÅÊÿWÏÌÿLZ)-qï1¦=Ç·$K-Dí`ºeÍÅ&zeídØ¿ëÄÕz\F8yN©Ï\þ2®"U§µË«LQUI*4§º%ÎÌÜïY"ud¯n $µ5*Ä68±7£áõ}§·6¾ÌJÊ{·Á?;»ô4}Ô¤ào=}GjbÄ0J äªøj#½quÅÑÕûXÚ0+ ¬t<b«P5ÓØ¨ßÂ0c¹N!Î\û²þÌpå9Ô íÁç£Èß{[ܳ<ͽhÝHyò?wÆÜÔÇ{ªÜøyN³\fs°²¡ôaæx,\f¹Õ +-þÅ6÷y°s Üõ¹0£gGî\¨}G¼Ès<N®ùøEëmÊÑÊQRUﬡæ*'Ãa2)XãÑYDê¯.gÕ:tf¿ +N×k¦ð¤ê%'? ft¸ÎSA´ã ²=v}7zÒ¡±Ö¬þÕ¾Moü*o+,9¿g¤* dyÏÛyÁÁgÀîqcqIF1î¨ê@k}+-PaL¡M¯-Ù`²·ÍxE³L 4¾ák!ãeH ë_ùyÆ#ùÛóM_hý¹òÄíNÅÌ·d×`áåYnÏþ0}3Þõ8¶n¢JÿéCU²r`¾ÀZȧ,)ì/v#^ {rM¨Ïop²º\uï^ª/¼Ý#¸c 7öâoÄßk3º_-´ÑkÒ×Å {ó¸ð«·¦ç3Äq°]èGþ²ÔÑÊd×Y'×£ÀÐñJvÚÙéä²Óq,2uo@é]ÆHª-1øÖo@×Xj¡*Ã,Ý-Ìþð嬱î¶òp'PôÏãÁͪpô$Í!νÛ;<Cø·¨9â½× ûñîAÂÿQÌØÿ&¶0Jܶ}LßûÓá>ä7Hw1
