sekikn commented on a change in pull request #657: URL: https://github.com/apache/bigtop/pull/657#discussion_r461646595
########## File path: bigtop-packages/src/common/kibana/do-component-build ########## @@ -0,0 +1,41 @@ +#!/bin/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 -ex + +. `dirname ${0}`/bigtop.bom + + +# Install the specific version of nodejs defined in Kibana +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" + +# Build issues: shasum command not found in Centos/Fedora +if [ -f /etc/os-release ]; then + . /etc/os-release +fi +case ${ID} in + centos | fedora) + sudo ln -s /usr/bin/sha1sum /usr/bin/shasum + ;; +esac Review comment: I tried to run `./gradlew kibana-pkg` after `./gradlew toolchain` on CentOS 7/8 and Fedora 31 with this PR, and came across the following error. ``` + sudo ln -s /usr/bin/sha1sum /usr/bin/shasum ln: failed to create symbolic link '/usr/bin/shasum': File exists ``` /usr/bin/shasum seems to be installed via perl-Digest-SHA, so these lines look like unnecessary, at least on x86_64 platform? ``` $ rpm -qf /usr/bin/shasum perl-Digest-SHA-6.02-440.fc31.x86_64 ``` ########## File path: bigtop-packages/src/common/kibana/install_kibana.sh ########## @@ -0,0 +1,118 @@ +#!/bin/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: $0 <options> + Required not-so-options: + --distro-dir=DIR path to distro specific files (debian/RPM) + --build-dir=DIR path to dist dir + --prefix=PREFIX path to install into + + Optional options: + --doc-dir=DIR path to install docs into [/usr/share/doc/elasticsearch] + --lib-dir=DIR path to install bits [/usr/lib/elasticsearch] + --installed-lib-dir=DIR path where lib-dir will end up on target system + --bin-dir=DIR path to install bins [/usr/bin] + --examples-dir=DIR path to install examples [doc-dir/examples] + ... [ see source for more similar options ] + " + exit 1 +} + +OPTS=$(getopt \ + -n $0 \ + -o '' \ + -l 'prefix:' \ + -l 'distro-dir:' \ + -l 'doc-dir:' \ + -l 'lib-dir:' \ + -l 'installed-lib-dir:' \ + -l 'bin-dir:' \ + -l 'initd-dir:' \ + -l 'build-dir:' -- "$@") + +if [ $? != 0 ] ; then + usage +fi + +eval set -- "$OPTS" +while true ; do + case "$1" in + --prefix) + PREFIX=$2 ; shift 2 + ;; + --distro-dir) + DISTRO_DIR=$2 ; shift 2 + ;; + --build-dir) + BUILD_DIR=$2 ; shift 2 + ;; + --doc-dir) + DOC_DIR=$2 ; shift 2 + ;; + --lib-dir) + LIB_DIR=$2 ; shift 2 + ;; + --) + shift; break + ;; + *) + echo "Unknown option: $1" + usage + exit 1 + ;; + esac +done + +for var in PREFIX BUILD_DIR DISTRO_DIR ; do + if [ -z "$(eval "echo \$$var")" ]; then + echo Missing param: $var + usage + fi +done + +MAN_DIR=${MAN_DIR:-/usr/share/man/man1} +DOC_DIR=${DOC_DIR:-/usr/share/doc/kibana} +LIB_DIR=${LIB_DIR:-/usr/lib/kibana} +BIN_DIR=${BIN_DIR:-/usr/bin} +ETC_DIR=${ETC_DIR:-/etc/kibana} +CONF_DIR=${CONF_DIR:-${ETC_DIR}/conf.dist} +INITD_DIR=${INITD_DIR:-/etc/init.d} + +VAR_DIR=$PREFIX/var + +install -d -m 0755 $PREFIX/$MAN_DIR +install -d -m 0755 $PREFIX/$DOC_DIR +install -d -m 0755 $PREFIX/$LIB_DIR +install -d -m 0755 $PREFIX/$ETC_DIR +install -d -m 0755 $PREFIX/$CONF_DIR +install -d -m 0755 $PREFIX/$BIN_DIR + +# Extract files and copy to LIB_DIR +tar zxf $BUILD_DIR/kibana-*-linux-*64.tar.gz -C $PREFIX/$LIB_DIR --strip-components 1 Review comment: I encountered an error here on Ubuntu 18.04: ``` + tar zxf build//kibana-*-linux-*64.tar.gz -C debian/tmp//usr/lib/kibana --strip-components 1 tar (child): build//kibana-*-linux-*64.tar.gz: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now ``` Those files seem to be in a different directory: ``` $ find . -name 'kibana-*-linux-*64.tar.gz' ./output/kibana/kibana-5.4.1/target/kibana-5.4.1-linux-x86_64.tar.gz ./output/kibana/kibana-5.4.1/target/kibana-5.4.1-linux-arm64.tar.gz ``` ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
