Updating indi allsky - aaronwmorris/indi-allsky GitHub Wiki
General
indi-allsky upgrades are rolling releases. You should be able to upgrade to the latest release of indi-allsky from any previous release.
Option 1: APT Package Upgrade (Recommended)
If you installed indi-allsky via the official APT repository (apt.indi-allsky.org), upgrading is as simple as updating your system packages:
sudo apt update && sudo apt upgrade -y
[!TIP] Automatic Service Reload & Migrations: Package upgrades automatically update pre-compiled wheels, execute database schema migrations, and reload systemd services without requiring manual intervention. Running
apt upgrade -yautomatically reuses your existing configuration without interactive prompts or holds.
[!NOTE] All user configuration in
/etc/indi-allsky/flask.jsonand databases in/var/lib/indi-allsky/are preserved across upgrades. If you ever wish to re-run the interactive configuration wizard to adjust ports, camera drivers, or observatory coordinates, you can run:sudo dpkg-reconfigure indi-allsky
[!TIP] Pinning Working Camera Drivers: If you have a stable camera setup and want to prevent system
apt upgradefrom upgrading your INDI drivers, you can pin them usingindi-allsky-ctl:sudo indi-allsky-ctl hold-indi
[!TIP] Migrating from
setup.sh: If your system was originally installed viasetup.shand you wish to switch to the official APT repository and.debarchitecture, follow the Migration Guide.
Option 2: Unattended Upgrade (Source / Git Installs)
indi-allsky now has an unattended upgrade option that can perform a code upgrade with no interaction from the user.
Navigate to System -> Utilities [tab] and select Upgrade indi-allsky. The upgrade may require up to 5 minutes to complete. During the upgrade, the indi-allsky capture process will be shutdown and restarted (if it was running) once the upgrade is complete. A notification will be shown in the web interface once the upgrade has completed.
The unattended upgrade runs as an out-of-band systemd service unit which allows it to function outside the indi-allsky system processes.
- Notes
- The unattended upgrade will only function when a non-authenticated GitHub checkout has been used (
https://). - The upgrade will only proceed if you are on the
mainbranch. - Any code modifications prevent the unattended upgrade from running.
- The unattended upgrade will only function when a non-authenticated GitHub checkout has been used (
Debugging unattended upgrades
Use the following command to show messages related to the upgrade process
journalctl --user-unit=upgrade-indi-allsky
Manual Unattended Upgrade
You may run the unattended upgrade manually if the GitHub checkout requires an SSH key for authentication or you just want to monitor the process.
./misc/unattended_upgrade.sh
Normal upgrade
-
Navigate to the current git clone
cd indi-allsky -
Stop indi-allsky & gunicorn
systemctl --user stop indi-allsky -
Pull the latest changes via git
git pull origin main -
Re-run setup.sh to configure system. This step is not always required, the indi-allsky service will usually indicate when it is necessary.
./setup.sh-
If you get a message about repositories not being valid, you may have to re-enable NTP time sync
sudo timedatectl set-ntp true
-
-
Restart indi-allsky
systemctl --user start indi-allsky
Manual upgrade
Note: This does not upgrade Python modules. If you have problems with modules, recommend using the setup.sh script.
-
Navigate to the current git clone
cd indi-allsky -
Stop indi-allsky & gunicorn
systemctl --user stop indi-allsky systemctl --user stop gunicorn-indi-allsky -
Pull the latest changes via git
git pull origin main -
Upgrade the database schema
flask db revision --autogenerate flask db upgrade head -
Increment the config version level
./config.py edit (save the config with no changes) -
Restart indi-allsky
systemctl --user start indi-allsky
Web-only upgrade
-
Navigate to the current git clone
cd indi-allsky -
Pull the latest changes via git
git pull origin main -
Re-run web_only_setup.sh to configure system
./misc/web_only_setup.sh
Docker upgrade path
https://github.com/aaronwmorris/indi-allsky/wiki/Docker#updating-indi-allsky
Rename master branch to main
The master branch was renamed to main on Feb 17, 2023. The following commands may be used to rename the branch on your local clone.
git branch -m master main
git fetch origin
git branch -u origin/main main
git remote set-head origin -a