Skip to content

Commit 3d0a151

Browse files
authored
Added DigitalOcean Console Install Option
1 parent fec5843 commit 3d0a151

4 files changed

Lines changed: 82 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,18 @@ All notable changes to EngineScript will be documented in this file.
44

55
Changes are organized by date, with the most recent changes listed first.
66

7+
## 2025-10-02
8+
9+
### 🖥️ DIGITALOCEAN REMOTE CONSOLE SUPPORT
10+
11+
- **DigitalOcean Droplet Agent Installation**: Added optional support for DigitalOcean's Recovery Console feature
12+
- **Configuration Option**: New `INSTALL_DIGITALOCEAN_REMOTE_CONSOLE` option in install options file (default: 0)
13+
- **Official Agent**: Installs DigitalOcean's official Droplet Agent via `repos-droplet.digitalocean.com/install.sh`
14+
- **Recovery Console Access**: Enables remote console access through DigitalOcean control panel for emergency recovery
15+
- **Safe Default**: Disabled by default to avoid unnecessary installations on non-DigitalOcean servers
16+
- **Installation Integration**: Integrated into main install script after NTP configuration step
17+
- **Error Handling**: Gracefully handles installation failures without breaking main installation process
18+
719
## 2025-09-09
820

921
### 🔒 NGINX CACHING SECURITY ENHANCEMENTS

config/home/enginescript-install-options.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,13 @@ INSTALL_ENGINESCRIPT_PLUGINS=1
103103
# Recommended: 0
104104
SHOW_ENGINESCRIPT_HEADER=0
105105

106+
## DigitalOcean Remote Console ##
107+
# Install DigitalOcean's Droplet Agent for remote console access
108+
# This enables the Recovery Console feature in the DigitalOcean control panel
109+
# Only useful if your server is hosted on DigitalOcean
110+
# Recommended: 0 (unless on DigitalOcean)
111+
INSTALL_DIGITALOCEAN_REMOTE_CONSOLE=0
112+
106113
##################
107114
# Backup Options #
108115
##################

scripts/install/enginescript-install.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,19 @@ fi
378378
print_last_errors
379379
debug_pause "NTP"
380380

381+
# DigitalOcean Remote Console (optional)
382+
if [[ "${INSTALL_DIGITALOCEAN_REMOTE_CONSOLE}" = "1" ]]; then
383+
if [[ "${DO_CONSOLE}" = 1 ]];
384+
then
385+
echo "DigitalOcean Remote Console script has already run."
386+
else
387+
/usr/local/bin/enginescript/scripts/install/system-misc/digitalocean-console-install.sh 2>> /tmp/enginescript_install_errors.log
388+
echo "DO_CONSOLE=1" >> /var/log/EngineScript/install-log.log
389+
fi
390+
print_last_errors
391+
debug_pause "DigitalOcean Remote Console"
392+
fi
393+
381394
# PCRE
382395
if [[ "${PCRE}" = 1 ]];
383396
then
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
#!/usr/bin/env bash
2+
#----------------------------------------------------------------------------------
3+
# EngineScript - A High-Performance WordPress Server Built on Ubuntu and Cloudflare
4+
#----------------------------------------------------------------------------------
5+
# Website: https://EngineScript.com
6+
# GitHub: https://github.com/Enginescript/EngineScript
7+
# License: GPL v3.0
8+
#----------------------------------------------------------------------------------
9+
10+
# EngineScript Variables
11+
source /usr/local/bin/enginescript/enginescript-variables.txt
12+
source /home/EngineScript/enginescript-install-options.txt
13+
14+
# Source shared functions library
15+
source /usr/local/bin/enginescript/scripts/functions/shared/enginescript-common.sh
16+
17+
18+
#----------------------------------------------------------------------------------
19+
# Start Main Script
20+
21+
# Check if DigitalOcean Remote Console installation is enabled
22+
if [[ "${INSTALL_DIGITALOCEAN_REMOTE_CONSOLE}" != "1" ]]; then
23+
echo "DigitalOcean Remote Console installation is disabled in configuration."
24+
echo "Skipping installation..."
25+
exit 0
26+
fi
27+
28+
echo "============================================================="
29+
echo "Installing DigitalOcean Droplet Agent for Remote Console"
30+
echo "============================================================="
31+
echo ""
32+
33+
# Download and execute DigitalOcean's official installation script
34+
echo "Downloading and installing DigitalOcean Droplet Agent..."
35+
if wget -qO- https://repos-droplet.digitalocean.com/install.sh | bash; then
36+
echo "✅ DigitalOcean Droplet Agent installed successfully"
37+
echo ""
38+
echo "Remote Console access is now enabled in your DigitalOcean control panel."
39+
echo ""
40+
else
41+
echo "❌ Failed to install DigitalOcean Droplet Agent"
42+
echo "This is not critical if you are not using DigitalOcean."
43+
echo ""
44+
exit 1
45+
fi
46+
47+
echo "============================================================="
48+
echo "DigitalOcean Remote Console Installation Complete"
49+
echo "============================================================="
50+
echo ""

0 commit comments

Comments
 (0)