Amrith Kumar ae74cd056e allow unauthenticated packages to be installed
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
2016-12-20 06:48:53 -05:00

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_