Skip to content

Software Update Basics

John Paden edited this page Nov 24, 2020 · 11 revisions

Updating OPS In general, it is advised to follow the “if it ain’t broke…” school of thought. However, occasionally new packages or features are added, efficiency improvements are made, or the current version of the software falls past the support date. As a best practice, it is best to test upgrades within a virtual machine using the test database. Before modifying the production box, it is also advisable to create a backup of the database should something go awry. To do so [ADD BACKUP page]. To upgrade software, follow the steps outlined below.

2020 Upgrade Notes

2020 Upgrade Notes

Linux Software

Updating ANY software installed with yum is simple:

yum update [PACKAGE]

Some Docs

Consider a reboot on major software changes. Always reboot on kernel changes.

Python Software

Make sure the virtual environment is activated source /usr/bin/venv/bin/activate

Updating ANY software intalled with Python is simple:

pip install --upgrade [PACKAGE]

Some Docs

Generally no reboot is needed on python upgrades.

To upgrade Django:

As of 11/01/15, Dganjo requires no migrations (read more here: https://docs.djangoproject.com/en/1.8/topics/migrations/). If at all possible, it is advisable to avoid migrations, as they create an extra layer between Django and the database, and have the potential to slow down the system. To upgrade Django, first read the change log and make note of any changes. To upgrade to the most current version, use the following code:

cd /var/django/ops
source /usr/bin/venv/bin/activate
(venv) pip install -U Django
source /usr/bin/venv/bin/activate
python manage.py test

If that is successful, you can change the version number within provions.sh (currently sits at line 480), rebuild the VM (see ## for instructions), create a new box image (see ## for instructions), test again, and then add the image to the OPS image project folder (\cfs2.cresis.ku.edu\ops\builds).

To upgrade Geoserver

*In the test box, stop the server with service httpd stop
*Remove the geoserver.war file from both /vagrant/conf/geoserver/ and /var/lib/tomcat6/webapps/
*Download the most recent stable version of the Web Archive (war) for servlet container, and put it in those two locations. *Restart the server with service httpd start
*Open OPS in your browser, and check to see the map tiles load in (192.168.111.222), you should also see the version number update on the geoserver page (192.168.111.222/geoserver/web)
*If successful, you can add the new war file to the github page (conf/geoserver), and rebuild the OPS image.

To upgrade PostgreSQL/PostGIS

[To be added]

Updates to Redhat or CentOS (including Apache)

yum update -y... [To be added]

Upgrading Redhat or Centos

[To be added]

Geoportal (Open Layers, Sencha)

[To be added]

VirtualBox

Upgrades to virtualBox should not affect the OPS in any way. However, you should run at least V 4.3.10. Older versions WILL affect OPS functionality.

Software Upgrade Warnings

ALWAYS read through change logs (mainly for python software, linux is almost always backwards compatible). Basically, understand what your updating and why. Do you need to update? <- Always ask this question first.