blob: 02969f6fafc3b568ec4d6f3d16fef129df45c54e [file] [log] [blame]
#!/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.
# Use /etc/os-release to determine Linux Distro
if [ -f /etc/os-release ]; then
. /etc/os-release
else
if [ -f /etc/redhat-release ]; then
if grep "CentOS release 6" /etc/redhat-release >/dev/null ; then
ID=centos
VERSION_ID=6
fi
else
echo "Unknown Linux Distribution."
exit 1
fi
fi
case ${ID}-${VERSION_ID} in
fedora-25*)
dnf -y install yum-utils
dnf -y update
dnf -y install hostname findutils curl sudo unzip wget puppet
;;
ubuntu-14.04)
apt-get update
apt-get -y install wget
wget -O /tmp/puppetlabs-release-pc1-trusty.deb https://apt.puppetlabs.com/puppetlabs-release-pc1-trusty.deb && dpkg -i /tmp/puppetlabs-release-trusty-pc1.deb
rm -f /tmp/puppetlabs-release-trusty.deb
apt-get update
apt-get -y install curl sudo unzip puppet software-properties-common
;;
ubuntu-16.04)
apt-get update
apt-get -y install wget
wget -O /tmp/puppetlabs-release-pc1-xenial.deb https://apt.puppetlabs.com/puppetlabs-release-pc1-xenial.deb
dpkg -i /tmp/puppetlabs-release-pc1-xenial.deb
rm -f /tmp/puppetlabs-release-pc1-xenial.deb
apt-get update
apt-get -y install curl sudo unzip puppet-agent software-properties-common
;;
debian-8*)
apt-get update
apt-get -y install wget
wget -O /tmp/puppetlabs-release-pc1-jessie.deb https://apt.puppetlabs.com/puppetlabs-release-pc1-jessie.deb && dpkg -i /tmp/puppetlabs-release-pc1-jessie.deb
rm -f /tmp/puppetlabs-release-pc1-jessie.deb
apt-get update
apt-get -y install curl sudo unzip puppet-agent
;;
opensuse-*)
zypper --gpg-auto-import-keys install -y curl sudo unzip wget puppet suse-release ca-certificates-mozilla net-tools tar
;;
centos-6*)
rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-pc1-el-6.noarch.rpm
yum -y install curl sudo unzip wget puppet tar
;;
centos-7*)
rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm
yum -y install hostname curl sudo unzip wget puppet
;;
*)
echo "Unsupported OS ${ID}-${VERSION_ID}."
exit 1
esac
# in case we installed puppetlabs puppet above
export PATH=/opt/puppetlabs/bin:$PATH
puppet module install puppetlabs-stdlib
case ${ID} in
debian|ubuntu)
puppet module install puppetlabs-apt;;
esac