Fix install.sh to deploy all agent installation scripts (related to #644)
Root cause: v4.26.3 tarball and Docker image contained all 8 agent scripts,
but install.sh only copied install-docker-agent.sh to /opt/pulse/scripts/.
Users upgrading via install.sh ended up with missing scripts, causing 404s
when trying to add hosts via the UI.
Changes:
- Add deploy_agent_scripts() function to systematically deploy all scripts
- Deploy all 8 scripts: install-{docker,container,host}-agent.{sh,ps1},
uninstall-host-agent.{sh,ps1}, install-sensor-proxy.sh, install-docker.sh
- Apply to both main installation and rollback/recovery code paths
This ensures bare-metal installations have feature parity with Docker deployments.
This commit is contained in:
parent
1a78dcbba2
commit
586ab3a740
1 changed files with 41 additions and 16 deletions
57
install.sh
57
install.sh
|
|
@ -1783,16 +1783,8 @@ download_pulse() {
|
||||||
|
|
||||||
install_additional_agent_binaries "$LATEST_RELEASE"
|
install_additional_agent_binaries "$LATEST_RELEASE"
|
||||||
|
|
||||||
# Install Docker agent convenience script
|
# Install all agent scripts
|
||||||
mkdir -p "$INSTALL_DIR/scripts"
|
deploy_agent_scripts "$TEMP_EXTRACT"
|
||||||
if [[ -f "$TEMP_EXTRACT/scripts/install-docker-agent.sh" ]]; then
|
|
||||||
cp "$TEMP_EXTRACT/scripts/install-docker-agent.sh" "$INSTALL_DIR/scripts/install-docker-agent.sh"
|
|
||||||
chmod 755 "$INSTALL_DIR/scripts/install-docker-agent.sh"
|
|
||||||
chown pulse:pulse "$INSTALL_DIR/scripts/install-docker-agent.sh"
|
|
||||||
print_success "Docker agent install script deployed"
|
|
||||||
else
|
|
||||||
print_warn "Docker agent install script not found in archive; skipping installation"
|
|
||||||
fi
|
|
||||||
|
|
||||||
chmod +x "$INSTALL_DIR/bin/pulse"
|
chmod +x "$INSTALL_DIR/bin/pulse"
|
||||||
chown -R pulse:pulse "$INSTALL_DIR"
|
chown -R pulse:pulse "$INSTALL_DIR"
|
||||||
|
|
@ -1840,12 +1832,7 @@ download_pulse() {
|
||||||
|
|
||||||
install_additional_agent_binaries "$LATEST_RELEASE"
|
install_additional_agent_binaries "$LATEST_RELEASE"
|
||||||
|
|
||||||
if [[ -f "$TEMP_EXTRACT2/scripts/install-docker-agent.sh" ]]; then
|
deploy_agent_scripts "$TEMP_EXTRACT2"
|
||||||
mkdir -p "$INSTALL_DIR/scripts"
|
|
||||||
cp "$TEMP_EXTRACT2/scripts/install-docker-agent.sh" "$INSTALL_DIR/scripts/install-docker-agent.sh"
|
|
||||||
chmod 755 "$INSTALL_DIR/scripts/install-docker-agent.sh"
|
|
||||||
chown pulse:pulse "$INSTALL_DIR/scripts/install-docker-agent.sh"
|
|
||||||
fi
|
|
||||||
|
|
||||||
chmod +x "$INSTALL_DIR/bin/pulse"
|
chmod +x "$INSTALL_DIR/bin/pulse"
|
||||||
chown -R pulse:pulse "$INSTALL_DIR"
|
chown -R pulse:pulse "$INSTALL_DIR"
|
||||||
|
|
@ -1942,6 +1929,44 @@ install_additional_agent_binaries() {
|
||||||
rm -rf "$temp_dir"
|
rm -rf "$temp_dir"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deploy_agent_scripts() {
|
||||||
|
local extract_dir="$1"
|
||||||
|
|
||||||
|
if [[ -z "$extract_dir" ]]; then
|
||||||
|
print_warn "No extraction directory provided for script deployment"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p "$INSTALL_DIR/scripts"
|
||||||
|
|
||||||
|
local scripts=(
|
||||||
|
"install-docker-agent.sh"
|
||||||
|
"install-container-agent.sh"
|
||||||
|
"install-host-agent.sh"
|
||||||
|
"install-host-agent.ps1"
|
||||||
|
"uninstall-host-agent.sh"
|
||||||
|
"uninstall-host-agent.ps1"
|
||||||
|
"install-sensor-proxy.sh"
|
||||||
|
"install-docker.sh"
|
||||||
|
)
|
||||||
|
|
||||||
|
local deployed=0
|
||||||
|
for script in "${scripts[@]}"; do
|
||||||
|
if [[ -f "$extract_dir/scripts/$script" ]]; then
|
||||||
|
cp "$extract_dir/scripts/$script" "$INSTALL_DIR/scripts/$script"
|
||||||
|
chmod 755 "$INSTALL_DIR/scripts/$script"
|
||||||
|
chown pulse:pulse "$INSTALL_DIR/scripts/$script"
|
||||||
|
deployed=$((deployed + 1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ $deployed -gt 0 ]]; then
|
||||||
|
print_success "Deployed $deployed agent installation script(s)"
|
||||||
|
else
|
||||||
|
print_warn "No agent installation scripts found in archive"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
build_agent_binaries_from_source() {
|
build_agent_binaries_from_source() {
|
||||||
local agent_version="$1"
|
local agent_version="$1"
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue