commit 7e7b0b5aca12feb2929e5fc6ccc08f6af05ad871 Author: Felix Mumme Date: Mon Dec 23 00:48:03 2024 +0100 init diff --git a/build/2/openems-edge.jar b/build/2/openems-edge.jar new file mode 100644 index 0000000..fb0624d Binary files /dev/null and b/build/2/openems-edge.jar differ diff --git a/build/2/ui.zip b/build/2/ui.zip new file mode 100644 index 0000000..8bb8cef Binary files /dev/null and b/build/2/ui.zip differ diff --git a/build/2/version b/build/2/version new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/build/2/version @@ -0,0 +1 @@ +2 diff --git a/build/3/openems-edge.jar b/build/3/openems-edge.jar new file mode 100644 index 0000000..fb0624d Binary files /dev/null and b/build/3/openems-edge.jar differ diff --git a/build/3/ui.zip b/build/3/ui.zip new file mode 100644 index 0000000..0824f57 Binary files /dev/null and b/build/3/ui.zip differ diff --git a/build/3/version b/build/3/version new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/build/3/version @@ -0,0 +1 @@ +3 diff --git a/build/latest/openems-edge.jar b/build/latest/openems-edge.jar new file mode 100644 index 0000000..fb0624d Binary files /dev/null and b/build/latest/openems-edge.jar differ diff --git a/build/latest/ui.zip b/build/latest/ui.zip new file mode 100644 index 0000000..0824f57 Binary files /dev/null and b/build/latest/ui.zip differ diff --git a/build/latest/version b/build/latest/version new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/build/latest/version @@ -0,0 +1 @@ +3 diff --git a/installation/install-openems.sh b/installation/install-openems.sh new file mode 100644 index 0000000..150e489 --- /dev/null +++ b/installation/install-openems.sh @@ -0,0 +1,76 @@ +#! /bin/bash + +RED='\033[0;31m' +YELLOW='\033[1;33m' +CYAN='\033[0;36m' +GREEN='\033[0;32m' +NC='\033[0m' # No Color + +host=$(hostname) + +read -p "Please enter the host (default: $host): " host_input +host=${host_input:-$host} + +read -p "Do you want to set the UI as the default for this server? (yes/no): " ui_default + +if [[ "$ui_default" =~ ^[Yy][Ee][Ss]$ ]]; then + echo -e "${YELLOW}WARNING: This will override the default nginx configuration.${NC}" + ui_default=true +else + ui_default=false +fi + +echo -e "${GREEN}Summary of Configuration:${NC}" +echo -e "${CYAN}Host: $host${NC}" +echo -e "${CYAN}Set UI as default: ${ui_default}${NC}" + +read -p "${CYAN}Do you want to proceed with the installation? (yes/no): ${NC}" proceed + +if [[ ! "$proceed" =~ ^[Yy][Ee][Ss]$ ]]; then + echo -e "${RED}Installation aborted.${NC}" + exit 1 +fi + +echo -e "${GREEN}installing required packages...${NC}" +sudo apt-get update +sudo apt-get install -y openjdk-17-jdk +sudo apt-get install -y nginx +sudo apt-get install -y wget + +echo -e "${GREEN}done${NC}" + +echo -e "${GREEN}setting up openems system service...${NC}" + +# setup openems service +sudo cp openems.service /etc/systemd/system/openems.service + +# setup openems config dir +sudo mkdir -p /etc/openems.d + +#fetch openems jar +wget -O /usr/lib/openems/openems.jar https://git.mumme-it.de/Mumme-IT/openems-build/raw/branch/main/latest/openems-edge.jar + +# reload systemd and start service +sudo systemctl daemon-reload +sudo systemctl enable openems +sudo systemctl start openems + +echo -e "${GREEN}done${NC}" + +echo -e "${GREEN}setting up ui as default nginx site...${NC}" + +sudo mkdir -p /var/www/openems/html + +wget -O ~/openems-ui.zip https://git.mumme-it.de/Mumme-IT/openems-build/raw/branch/main/latest/ui.zip + +sudo unzip -o ~/openems-ui.zip -d /var/www/openems/html +sudo rm ~/openems-ui.zip + +sudo cp nginx-config /etc/nginx/sites-available/openems +sudo ln -sf /etc/nginx/sites-available/openems "/etc/nginx/sites-enabled/$host" + +if $ui_default; then + sudo ln -sf /etc/nginx/sites-available/openems /etc/nginx/sites-enabled/default +fi + +echo -e "${GREEN}done${NC}" diff --git a/installation/nginx-config b/installation/nginx-config new file mode 100644 index 0000000..186942d --- /dev/null +++ b/installation/nginx-config @@ -0,0 +1,13 @@ +server { + listen 80; + listen [::]:80; + + root /var/www/openems/html; + index index.html; + + server_name _; + + location / { + try_files $uri $uri/ /index.html; + } +} \ No newline at end of file diff --git a/installation/openems.service b/installation/openems.service new file mode 100644 index 0000000..43a7307 --- /dev/null +++ b/installation/openems.service @@ -0,0 +1,17 @@ +[Unit] +Description=OpenEMS Edge +After=network.target + +[Service] +User=root +Group=root +Type=notify +WorkingDirectory=/usr/lib/openems +ExecStart=/usr/bin/java -Dfelix.cm.dir=/etc/openems.d/ -jar /usr/lib/openems/openems.jar +SuccessExitStatus=143 +Restart=always +RestartSec=10 +WatchdogSec=60 + +[Install] +WantedBy=multi-user.target \ No newline at end of file