mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-10-24 04:05:03 +00:00
Every interactive prompt takes a var_<app>_<name> override and treats a closed stdin like Enter (`|| true`), so an install keeps going after the console that started it is gone. Values the script cannot do without end with exit 64 and name the variable to set. Validation loops stop asking when nobody can answer instead of spinning on an empty read.
65 lines
1.9 KiB
Bash
65 lines
1.9 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Copyright (c) 2021-2026 tteck
|
|
# Author: tteck (tteckster)
|
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
|
# Source: https://www.influxdata.com/
|
|
|
|
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
|
color
|
|
verb_ip6
|
|
catch_errors
|
|
setting_up_container
|
|
network_check
|
|
update_os
|
|
|
|
msg_info "Setting up InfluxDB Repository"
|
|
setup_deb822_repo \
|
|
"influxdata" \
|
|
"https://repos.influxdata.com/influxdata-archive.key" \
|
|
"https://repos.influxdata.com/debian" \
|
|
"stable"
|
|
msg_ok "Set up InfluxDB Repository"
|
|
|
|
prompt="${var_influxdb_version:-}"
|
|
[[ -n "$prompt" ]] || read -r -p "${TAB3}Which version of InfluxDB to install? (1, 2 or 3) " prompt || true
|
|
if [[ $prompt == "3" ]]; then
|
|
INFLUX="3"
|
|
elif [[ $prompt == "2" ]]; then
|
|
INFLUX="2"
|
|
else
|
|
INFLUX="1"
|
|
fi
|
|
|
|
msg_info "Installing InfluxDB v${INFLUX}"
|
|
if [[ $INFLUX == "3" ]]; then
|
|
if [[ "$(arch_resolve)" == "amd64" ]] && ! grep -qm1 'avx2' /proc/cpuinfo; then
|
|
msg_error "InfluxDB v3 requires AVX2 support, which is not available on this system."
|
|
exit 106
|
|
fi
|
|
$STD apt install -y influxdb3-core
|
|
systemctl enable -q --now influxdb3-core
|
|
elif [[ $INFLUX == "2" ]]; then
|
|
$STD apt install -y influxdb2
|
|
systemctl enable -q --now influxdb
|
|
else
|
|
$STD apt install -y influxdb
|
|
download_file "https://dl.influxdata.com/chronograf/releases/chronograf_1.10.8_$(arch_resolve).deb" "${HOME}/chronograf_1.10.8_$(arch_resolve).deb"
|
|
$STD dpkg -i "${HOME}/chronograf_1.10.8_$(arch_resolve).deb"
|
|
rm -rf "${HOME}/chronograf_1.10.8_$(arch_resolve).deb"
|
|
systemctl enable -q --now influxdb
|
|
fi
|
|
msg_ok "Installed InfluxDB"
|
|
|
|
prompt="${var_influxdb_telegraf:-}"
|
|
[[ -n "$prompt" ]] || read -r -p "${TAB3}Would you like to add Telegraf? <y/N> " prompt || true
|
|
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
|
|
msg_info "Installing Telegraf"
|
|
$STD apt install -y telegraf
|
|
msg_ok "Installed Telegraf"
|
|
fi
|
|
|
|
motd_ssh
|
|
customize
|
|
cleanup_lxc
|