97 lines
5.1 KiB
Bash
Executable File
97 lines
5.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
if [ "${DIB_DEBUG_TRACE:-0}" -gt 0 ]; then
|
|
set -x
|
|
fi
|
|
set -eu
|
|
set -o pipefail
|
|
|
|
function add_repo_5_0_0 {
|
|
case $DISTRO_NAME in
|
|
ubuntu )
|
|
# Add repository with postgresql package (it's dependency of cloudera packages)
|
|
# Base image doesn't contain this repo
|
|
echo -e 'deb http://nova.clouds.archive.ubuntu.com/ubuntu/ precise universe multiverse main' >> /etc/apt/sources.list
|
|
|
|
# Cloudera repositories
|
|
echo 'deb [arch=amd64] http://archive.cloudera.com/cdh5/ubuntu/precise/amd64/cdh precise-cdh5.0.0 contrib' > /etc/apt/sources.list.d/cdh5.list
|
|
echo 'deb-src http://archive.cloudera.com/cdh5/ubuntu/precise/amd64/cdh precise-cdh5.0.0 contrib' >> /etc/apt/sources.list.d/cdh5.list
|
|
|
|
wget -qO - http://archive-primary.cloudera.com/cdh5/ubuntu/precise/amd64/cdh/archive.key | apt-key add -
|
|
|
|
echo 'deb [arch=amd64] http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm precise-cm5.0.0 contrib' > /etc/apt/sources.list.d/cm5.list
|
|
echo 'deb-src http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm precise-cm5.0.0 contrib' >> /etc/apt/sources.list.d/cm5.list
|
|
|
|
wget -qO - http://archive-primary.cloudera.com/cm5/ubuntu/precise/amd64/cm/archive.key | apt-key add -
|
|
|
|
apt-get update
|
|
;;
|
|
centos | rhel )
|
|
echo '[cloudera-cdh5]' > /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo "name=Cloudera's Distribution for Hadoop, Version 5" >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo 'baseurl=http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/5.0.0/' >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo 'gpgkey = http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera' >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo 'gpgcheck = 1' >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
|
|
echo '[cloudera-manager]' > /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'name=Cloudera Manager' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'baseurl=http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.0.0/' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'gpgkey = http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'gpgcheck = 1' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
yum clean all
|
|
;;
|
|
esac
|
|
}
|
|
|
|
function add_repo_5_3_0 {
|
|
case $DISTRO_NAME in
|
|
ubuntu )
|
|
# Add repository with postgresql package (it's dependency of cloudera packages)
|
|
# Base image doesn't contain this repo
|
|
echo -e 'deb http://nova.clouds.archive.ubuntu.com/ubuntu/ precise universe multiverse main' >> /etc/apt/sources.list
|
|
|
|
# Cloudera repositories
|
|
echo 'deb [arch=amd64] http://archive.cloudera.com/cdh5/ubuntu/precise/amd64/cdh precise-cdh5.3.0 contrib' > /etc/apt/sources.list.d/cdh5.list
|
|
echo 'deb-src http://archive.cloudera.com/cdh5/ubuntu/precise/amd64/cdh precise-cdh5.3.0 contrib' >> /etc/apt/sources.list.d/cdh5.list
|
|
|
|
wget -qO - http://archive-primary.cloudera.com/cdh5/ubuntu/precise/amd64/cdh/archive.key | apt-key add -
|
|
|
|
echo 'deb [arch=amd64] http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm precise-cm5.3.0 contrib' > /etc/apt/sources.list.d/cm5.list
|
|
echo 'deb-src http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm precise-cm5.3.0 contrib' >> /etc/apt/sources.list.d/cm5.list
|
|
|
|
wget -qO - http://archive-primary.cloudera.com/cm5/ubuntu/precise/amd64/cm/archive.key | apt-key add -
|
|
|
|
apt-get update
|
|
;;
|
|
centos | rhel )
|
|
echo '[cloudera-cdh5]' > /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo "name=Cloudera's Distribution for Hadoop, Version 5" >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo 'baseurl=http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/5.3.0/' >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo 'gpgkey = http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera' >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
echo 'gpgcheck = 1' >> /etc/yum.repos.d/cloudera-cdh5.repo
|
|
|
|
echo '[cloudera-manager]' > /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'name=Cloudera Manager' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'baseurl=http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.3.0/' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'gpgkey = http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
echo 'gpgcheck = 1' >> /etc/yum.repos.d/cloudera-manager.repo
|
|
yum clean all
|
|
;;
|
|
esac
|
|
}
|
|
|
|
# Call version-specific script to install the desired version of CDH
|
|
if [[ $DIB_CDH_VERSION == "5.0" ]]; then
|
|
echo "Installing CDH Version $DIB_CDH_VERSION..."
|
|
add_repo_5_0_0
|
|
else
|
|
if [[ $DIB_CDH_VERSION == "5.3" ]]; then
|
|
echo "Installing CDH Version $DIB_CDH_VERSION..."
|
|
add_repo_5_3_0
|
|
else
|
|
echo "Invalid CDH Version specified, exiting install."
|
|
exit 1
|
|
fi
|
|
fi
|
|
|