
Sometimes, trove image builds fail because of package authentication issues. This is often times related to the inability to get to a key server, and not indicative of anything more serious than that. The (strongly discouraged in production use cases) workaround for this is to pass the --allow-unauthenticated option to apt-get install. I say 'Closes-Bug' below but I realize that this is a white lie. What it fixes is only the Trove elements. The image build process uses elements from other places (triple-o, for example). These can still fail for the same reason. There is a much bigger hammer that we can use if we need it, and that is to throw the line 'APT::Get::AllowUnauthenticated "true";' into a conf file in /etc/apt/apt.conf.d/. If this hammer isn't big enough, we can revist later. Change-Id: I009697332bb2a8e1e60b17c10944faed5c311da3 Closes-Bug:#1646856
55 lines
1.7 KiB
Bash
Executable File
55 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# CONTEXT: GUEST during CONSTRUCTION as ROOT - install.d
|
|
# PURPOSE: Install controller base required packages
|
|
|
|
set -e
|
|
set -o xtrace
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
|
|
|
|
# Copy the package file to the image,
|
|
# as it needs to be used later during configuration.
|
|
dd if=/tmp/in_target.d/vertica.deb of=/vertica.deb
|
|
|
|
# Install base packages
|
|
apt-get --allow-unauthenticated install -qy build-essential bc iptables
|
|
apt-get --allow-unauthenticated install -qy curl sysstat pstack mcelog
|
|
apt-get --allow-unauthenticated install -qy python-dev g++ unixODBC unixODBC-dev dialog
|
|
apt-get --allow-unauthenticated install -qy dialog libbz2-dev libboost-all-dev libcurl4-gnutls-dev
|
|
apt-get --allow-unauthenticated install -qy openjdk-7-jdk
|
|
|
|
# Install Vertica package
|
|
dpkg -i /vertica.deb
|
|
|
|
# Creating dbadmin user and verticadba group
|
|
groupadd verticadba
|
|
useradd -g verticadba -d /home/dbadmin -s /bin/bash -m dbadmin
|
|
echo "export PATH=/opt/vertica/bin:\$PATH" >> ~dbadmin/.profile
|
|
echo "export TZ=`date +%Z`" >> ~dbadmin/.profile
|
|
|
|
# Create base directory for to be used for database creation
|
|
mkdir /var/lib/vertica
|
|
chown dbadmin:verticadba /var/lib/vertica
|
|
|
|
# Backup /etc/hosts
|
|
cp -p /etc/hosts /etc/hosts.bkp
|
|
|
|
# Compile the SDK examples - the supplied UDFs can then be loaded
|
|
cd /opt/vertica/sdk/examples
|
|
TMPDIR=/tmp JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 make
|
|
cd
|
|
|
|
cat > "/etc/rc.local" << _EOF_
|
|
# Vertica requires THP to be turned off
|
|
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
|
|
echo never > /sys/kernel/mm/transparent_hugepage/defrag
|
|
fi
|
|
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
|
|
echo never > /sys/kernel/mm/transparent_hugepage/enabled
|
|
fi
|
|
|
|
exit \$?
|
|
|
|
_EOF_
|