vitess-gh/dev.env

118 строки
3.7 KiB
Bash

# No shebang line as this script is sourced from an external shell.
# Copyright 2017 Google Inc.
#
# 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.
# Plese ensure dev.env is written in a way which is POSIX (bourne)
# shell compatible.
# - Some build systems like rpm require the different scriptlets used
# to build a package to be run under a POSIX shell so non-POSIX
# syntax will break that as dev.env will not be sourced by bash..
source ./build.env
export GOTOP=$VTTOP/go
export PYTOP=$VTTOP/py
export VTDATAROOT="${VTDATAROOT:-${VTROOT}/vtdataroot}"
mkdir -p "$VTDATAROOT"
export VTPORTSTART=15000
# Add all site-packages or dist-packages directories below $VTROOT/dist to $PYTHONPATH.
BACKUP_IFS="$IFS"
IFS="
"
# Note that the escaped ( ) around the -or expression are important.
# Otherwise, the -print would match *all* files.
for pypath in $(find "$VTROOT/dist" \( -name site-packages -or -name dist-packages \) -print); do
PYTHONPATH=$(prepend_path "$PYTHONPATH" "$pypath")
done
IFS="$BACKUP_IFS"
PYTHONPATH=$(prepend_path "$PYTHONPATH" "$VTROOT/py-vtdb")
PYTHONPATH=$(prepend_path "$PYTHONPATH" "$VTROOT/dist/selenium")
PYTHONPATH=$(prepend_path "$PYTHONPATH" "$VTTOP/test")
PYTHONPATH=$(prepend_path "$PYTHONPATH" "$VTTOP/test/cluster/sandbox")
export PYTHONPATH
# Ensure bootstrap.sh uses python2 on systems which default to python3.
command -v python2 >/dev/null && PYTHON=python2 || PYTHON=python
export PYTHON
command -v pip2 >/dev/null && PIP=pip2 || PIP=pip
export PIP
command -v virtualenv2 >/dev/null && VIRTUALENV=virtualenv2 || VIRTUALENV=virtualenv
export VIRTUALENV
# Add the current GOBIN
if [ "$GOBIN" ]; then
PATH=$(prepend_path "$PATH" "$GOBIN")
fi
# Many tests rely on "go install" and assume GOBIN is really $VTROOT/bin.
# Make sure these take precedence.
GOBIN=$VTROOT/bin
export GOBIN
PATH=$(prepend_path "$PATH" "$GOBIN")
# Add chromedriver to path for Selenium tests.
PATH=$(prepend_path "$PATH" "$VTROOT/dist/chromedriver")
# Node path.
PATH=$(prepend_path "$PATH" "$VTROOT/dist/node/bin")
export PATH
# GOROOT sanity
go_bin=$(which go)
go_env=$(go env | grep GOROOT | cut -f 2 -d\")
if [[ "$go_bin" != "" && "$go_bin" != "$go_env/bin/go" ]]; then
echo "WARNING: \$GOROOT may not be compatible with the used go binary"
echo "Please make sure 'go' comes from \$GOROOT/bin"
echo "go_env: $go_env"
echo "go_bin: $go_bin"
fi
# mysql install location. Please set based on your environment.
# Build will not work if this is incorrect.
if [[ "$VT_MYSQL_ROOT" == "" ]]; then
if [[ "$(which mysql)" == "" ]]; then
echo "WARNING: VT_MYSQL_ROOT unset because mysql not found. Did you install a client package?"
else
VT_MYSQL_ROOT=$(dirname "$(dirname "$(which mysql)")")
export VT_MYSQL_ROOT
fi
fi
# restore MYSQL_FLAVOR, saved by bootstrap.sh
if [ -r "$VTROOT/dist/MYSQL_FLAVOR" ]; then
MYSQL_FLAVOR=$(cat "$VTROOT/dist/MYSQL_FLAVOR")
export MYSQL_FLAVOR
fi
# mysql cgo library config
if [ -z "$MYSQL_FLAVOR" ]; then
export MYSQL_FLAVOR=MariaDB
fi
PKG_CONFIG_PATH=$(prepend_path "$PKG_CONFIG_PATH" "$VTROOT/lib")
export PKG_CONFIG_PATH
GOPATH=$(prepend_path "$GOPATH" "$VTROOT")
export GOPATH
# Useful aliases. Remove if inconvenient.
alias gt='cd $GOTOP'
alias pt='cd $PYTOP'
alias vt='cd $VTTOP'