#!/bin/sh set -e . "$COINAGENT_PROVISIONING_DIR"/common/unix/DownloadURL.sh install_telegraf_on_generic_unix () { telegraf_sha256_list="$COINAGENT_PROVISIONING_DIR"/common/shared/telegraf/telegraf_packages.sha256.txt # 1. Download and install ioping case $COINAGENT_OS_ID in # SLES 12/15 does not have ioping in its repositories, and this RPM works in all SUSE/OpenSUSE distros suse|sles|opensuse*) DownloadURL \ '' \ http://download.opensuse.org/repositories/benchmark/SLE_15_SP1/x86_64/ioping-1.0-11.3.x86_64.rpm \ 72f7914ff55f6e55979095e6beab463f53913d8d \ ioping-1.0-11.3.x86_64.rpm sudo zypper -nq --no-gpg-checks install ./ioping-1.0-11.3.x86_64.rpm ;; # All other distros have "ioping" in their repositories *) $COINAGENT_PKG_INSTALL ioping esac # 2. Install custom ioping monitoring script sudo cp "$COINAGENT_PROVISIONING_DIR"/common/shared/telegraf/ioping-telegraf.sh /usr/local/bin/ sudo chmod +x /usr/local/bin/ioping-telegraf.sh # 3. Download and install telegraf [ x"$COINAGENT_OS" = xmacos ] && os=darwin || os=linux [ x"$COINAGENT_ARCH" = xx86 ] && arch=i386 || arch=amd64 package_filename=telegraf-1.12.1_${os}_${arch}.tar.gz package_sha256=$(sed -sn "s/$package_filename *//p" "$telegraf_sha256_list") DownloadURL \ http://local-file-server.intra.qt.io/telegraf/$package_filename \ https://dl.influxdata.com/telegraf/releases/$package_filename \ $package_sha256 \ telegraf.tar.gz tar -xzf ./telegraf.tar.gz -C /tmp telegraf_binary=$(find /tmp/telegraf* -name telegraf | grep /bin/ | head -1) sudo cp "$telegraf_binary" /usr/local/bin/ sudo chown root:root /usr/local/bin/telegraf sudo chmod 755 /usr/local/bin/telegraf rm -rf /tmp/telegraf* # 4. Edit config file with passwords "$COINAGENT_PROVISIONING_DIR"/common/unix/telegraf_password.sh }