diff --git a/ct/tududi.sh b/ct/tududi.sh index 389d1ae5f..687fe27cb 100644 --- a/ct/tududi.sh +++ b/ct/tududi.sh @@ -35,14 +35,15 @@ function update_script() { systemctl stop tududi msg_ok "Stopped Service" - msg_info "Remove and backup Files" - DB="$(sed -n '/^DB_FILE/s/[^=]*=//p' /opt/tududi/backend/.env)" - export DB_FILE="$DB" - cp /opt/tududi/backend/.env /opt/tududi.env - rm -rf /opt/tududi/backend/dist - msg_ok "Backup and removed Files" + msg_info "Backing up env file" + if [[ -f /opt/tududi/backend/.env ]]; then + cp /opt/tududi/backend/.env /opt/tududi.env + else + cp /opt/tududi/.env /opt/tududi.env + fi + msg_ok "Backed up env file" - fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "latest" "/opt/tududi" + CLEAN_INSTALL=1 fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "latest" "/opt/tududi" msg_info "Updating Tududi" cd /opt/tududi @@ -50,9 +51,9 @@ function update_script() { export NODE_ENV=production $STD npm run frontend:build mv ./dist ./backend - mv ./public/locales ./backend/dist - mv ./public/favicon.* ./backend/dist - mv /opt/tududi.env /opt/tududi/.env + mv /opt/tududi.env /opt/tududi/backend/.env + DB="$(sed -n '/^DB_FILE/s/[^=]*=//p' /opt/tududi/backend/.env)" + export DB_FILE="$DB" sed -i -e 's|/tududi$|/tududi/backend|' \ -e 's|npm run start|bash /opt/tududi/backend/cmd/start.sh|' \ /etc/systemd/system/tududi.service diff --git a/install/tududi-install.sh b/install/tududi-install.sh index c9390492a..cbc60363f 100644 --- a/install/tududi-install.sh +++ b/install/tududi-install.sh @@ -28,8 +28,6 @@ $STD npm install export NODE_ENV=production $STD npm run frontend:build mv ./dist ./backend -mv ./public/locales ./backend/dist -mv ./public/favicon.* ./backend/dist msg_ok "Configured Tududi" msg_info "Creating env and database" @@ -37,15 +35,16 @@ DB_LOCATION="/opt/tududi-db" UPLOAD_DIR="/opt/tududi-uploads" mkdir -p {"$DB_LOCATION","$UPLOAD_DIR"} SECRET="$(openssl rand -hex 64)" -cat </opt/tududi/backend/.env -TUDUDI_SESSION_SECRET=${SECRET} -TUDUDI_ALLOWED_ORIGINS= -NODE_ENV=production -DB_FILE=${DB_LOCATION}/production.sqlite3 -TUDUDI_UPLOAD_PATH=${UPLOAD_DIR} -DISABLE_TELEGRAM=true -DIABLE_SCHEDULER=false -EOF +sed -e '/^NODE_ENV=/s/=.*$/=production/' \ + -e 's/^TUDUDI_USER/# TUDUDI_USER/g' \ + -e "/_SECRET=/s/=.*$/=${SECRET}/" \ + -e "/^# DB_FILE/s/^# //; \ + \|DB_FILE|s|/path.*$|${DB_LOCATION}/production.sqlite3|" \ + -e "/^# TUDUDI_ALLOWED/s/^# //; \ + \|_ORIGINS=|s|=.*$|=|" \ + -e "/^# TUDUDI_UPLOAD/s/^# //; \ + \|UPLOAD_PATH=|s|=.*$|=${UPLOAD_DIR}|" \ + /opt/tududi/backend/.env.example >/opt/tududi/backend/.env export DB_FILE="${DB_LOCATION}/production.sqlite3" $STD npm run db:init msg_ok "Created env and database"