With GIT route, you have the following options available:
Ensure your source github repo is configured
Firstly, ensure your git source is configured in your deploy system
In deploy.yml:
git:
repo_url: https://github.com/dappros/ethora-install-shared.git
ref: main
source_dir: "" # optional local checkout path e.g. /home/ubuntu/ethora-install-shared
A) Upgrade (auto-fetch + sync + restart + health check):
sudo ./deploy/scripts/update.sh
B) Light reinstall (same as upgrade; keeps DBs):
sudo ./deploy/scripts/install.sh --reinstall-light --yes
C) Fast upgrade option
Fast upgrade option which skips heavy steps when nothing relevant changed:
cd /[source-dir]/deploy
sudo ./scripts/update.sh --fastNotes on --fast:
Skips docker restart, PM2 restart, and init-services when no relevant changes are detected.
If only deploy scripts changed, it will still regenerate envs but skip restarts.
QA checks still run unless
--no-qais provided.
D) Hard reinstall (destructive):
⚠️ Remember: this option will clean your databases, chat history, uptime service history etc.
sudo ./deploy/scripts/install.sh --reinstall
Troubleshooting
Depending on which user has access to git SSH key on your server, you may need to run upgrade commands under a different user or with other alterations, e.g.:
sudo -E GIT_SSH_COMMAND="ssh -i /home/ubuntu/.ssh/id_ed25519 -o IdentitiesOnly=yes" \
./deploy/scripts/update.shOr more explicit version specifying the ref branch you want along with source and target directories path:
cd /home/ubuntu/ethora-monoserver
sudo -E GIT_SSH_COMMAND="ssh -i /home/ubuntu/.ssh/id_ed25519 -o IdentitiesOnly=yes" \
ROOT_DIR=/home/ubuntu/ethora SRC_ROOT=/home/ubuntu/ethora-install-shared \
./deploy/scripts/update.sh --ref mainwhere you should replace /home/ubuntu/.ssh/id_ed25519with your own key path.
In case GIT needs fixing in your source dir:
cd /home/ubuntu/ethora-install-shared
# 1) Make sure we actually fetch and create origin/main
sudo -E GIT_SSH_COMMAND="ssh -i /home/ubuntu/.ssh/id_ed25519 -o IdentitiesOnly=yes" \
git fetch origin +refs/heads/main:refs/remotes/origin/main --prune
# 2) Now create/reset local main from origin/main
sudo git checkout -B main refs/remotes/origin/main
sudo git reset --hard refs/remotes/origin/main