fuel-plugin-elasticsearch-k.../pre_build_hook

75 lines
4.1 KiB
Bash
Executable File

#!/bin/bash
set -eux
. "$(dirname "$(readlink -f "$0")")"/functions.sh
# Puppet manifests
CONCAT_TARBALL_URL="https://forgeapi.puppetlabs.com/v3/files/puppetlabs-concat-1.2.4.tar.gz"
STDLIB_TARBALL_URL="https://forgeapi.puppetlabs.com/v3/files/puppetlabs-stdlib-4.7.0.tar.gz"
NGINX_TARBALL_URL="https://forgeapi.puppetlabs.com/v3/files/jfryman-nginx-0.2.2.tar.gz"
ELASTICSEARCH_TARBALL_URL="https://forgeapi.puppetlabs.com/v3/files/elasticsearch-elasticsearch-0.10.1.tar.gz"
# Dependency for Elasticsearch 0.10.x
DATACAT_TARBALL_URL="https://forgeapi.puppetlabs.com/v3/files/richardc-datacat-0.6.2.tar.gz"
FIREWALL_TARBALL_URL="https://forgeapi.puppetlabs.com/v3/files/puppetlabs-firewall-1.7.2.tar.gz"
FUEL_LIB_COMMIT="stable/8.0"
FUEL_LIB_TARBALL_URL="https://github.com/openstack/fuel-library/archive/${FUEL_LIB_COMMIT}.tar.gz"
# Kibana 3 sources
KIBANA_TARBALL_URL="https://download.elasticsearch.org/kibana/kibana/kibana-3.1.3.tar.gz"
TZ_VERSION="2016c-0ubuntu0.14.04_all"
# Packages needed to install JRE headless
download_package http://mirrors.kernel.org/ubuntu/pool/main/p/pcsc-lite/libpcsclite1_1.8.10-1ubuntu1_amd64.deb \
http://mirrors.kernel.org/ubuntu/pool/main/j/java-common/java-common_0.51_all.deb \
"http://security.ubuntu.com/ubuntu/pool/main/t/tzdata/tzdata-java_${TZ_VERSION}.deb" \
"http://security.ubuntu.com/ubuntu/pool/main/t/tzdata/tzdata_${TZ_VERSION}.deb" \
http://security.ubuntu.com/ubuntu/pool/main/c/ca-certificates/ca-certificates_20160104ubuntu0.14.04.1_all.deb \
http://mirrors.kernel.org/ubuntu/pool/main/c/ca-certificates-java/ca-certificates-java_20130815ubuntu1_all.deb \
http://security.ubuntu.com/ubuntu/pool/main/o/openjdk-7/openjdk-7-jre-headless_7u95-2.6.4-0ubuntu0.14.04.2_amd64.deb \
http://mirrors.kernel.org/ubuntu/pool/main/c/ca-certificates-java/ca-certificates-java_20130815ubuntu1_all.deb \
https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.4.deb
# Download curator and dependencies
download_package http://packages.elasticsearch.org/curator/3/debian/pool/main/p/python/python-elasticsearch-curator_3.3.0_all.deb \
http://packages.elasticsearch.org/curator/3/debian/pool/main/p/python/python-elasticsearch_1.6.0_all.deb \
http://packages.elasticsearch.org/curator/3/debian/pool/main/p/python/python-click_4.0_all.deb \
http://packages.elasticsearch.org/curator/3/debian/pool/main/p/python/python-urllib3_1.10.4_all.deb
# Install puppet manifests
download_puppet_module "concat" "$CONCAT_TARBALL_URL"
download_puppet_module "stdlib" "$STDLIB_TARBALL_URL"
download_puppet_module "nginx" "$NGINX_TARBALL_URL"
download_puppet_module "elasticsearch" "$ELASTICSEARCH_TARBALL_URL"
download_puppet_module "firewall" "$FIREWALL_TARBALL_URL"
download_puppet_module "datacat" "$DATACAT_TARBALL_URL"
# Untar kibana
KIBANA_FOLDER="${MODULES_DIR}/lma_logging_analytics/files/kibana/src"
mkdir -p "${KIBANA_FOLDER}"
wget -qO- "${KIBANA_TARBALL_URL}" | tar -C "${KIBANA_FOLDER}" --strip-components=1 -xz
# Extract dependent manifests from fuel-library
rm -rf "${MODULES_DIR:?}"/{l23network,osnailyfacter,cluster,pacemaker_wrappers,pacemaker,openstack,haproxy,corosync}
wget -qO- "${FUEL_LIB_TARBALL_URL}" | \
tar -C "${MODULES_DIR}" --strip-components=3 -zxvf - \
fuel-library-${FUEL_LIB_COMMIT/\//-}/deployment/puppet/{l23network,osnailyfacter,cluster,pacemaker_wrappers,pacemaker,openstack,haproxy,corosync}
# Remove the dead link : osnailyfacter/modular/master -> ../nailgun/examples
rm -rf ${MODULES_DIR}/osnailyfacter/modular/master
# Update tzdata-java package to remove strict dependency on tzdata (see LP bug #1560436)
ROOT="$(dirname "$(readlink -f "$0")")"
DEB_REPO="${ROOT}"/repositories/ubuntu/
TMP_DIR=$(mktemp -d || exit 1)
cp "${DEB_REPO}/tzdata-java_${TZ_VERSION}.deb" "${TMP_DIR}"
cd "${TMP_DIR}" || exit 1
ar x "tzdata-java_${TZ_VERSION}.deb" || exit 1
tar xzvf control.tar.gz || exit 1
sed -i 's/Depends: tzdata (=/Depends: tzdata (>=/' control || exit 1
tar czvf control.tar.gz md5sums control || exit 1
ar r "tzdata-java_${TZ_VERSION}.deb" control.tar.gz data.tar.xz || exit 1
mv "tzdata-java_${TZ_VERSION}.deb" "${DEB_REPO}/" || exit 1
cd /tmp || exit 1
rm -rf "${TMP_DIR}" || exit 1