|Read more about this book|
Orientation to updating software
Before we can update the Koha software, let us learn about Koha’s software versions and how to choose the version to upgrade to. In this section we also learn about the components of a software update, and how to install each component of the update properly.
Understanding Koha’s software versions
To choose which new version to upgrade to, let us first understand how the Koha software is organized.
At any given point Koha has at least two main software branches:
- Stable: This branch is older and is considered stable or bug free for the most part. Only bug fixes are allowed on this branch.
- Development: This branch is where new features are developed. This branch is ahead of the stable branch, meaning it has all the features of the stable branch and the new features in development.
Both branches—stable and development have heads. A heads is the tip of the branch, pointing to the latest change made in that branch.
At the time of writing of this article, there are two heads available in Koha’s Git repository.
- 3.0.x: This is the tip of the stable branch
- master: This is the tip of the development branch
Both branches have multiple tags. Tags point to specific points in a branch’s change history. For instance we see these tags related to the stable branch:
- v3.00.06: This is the latest stable branch
- v3.00.05: An earlier version of the 3.0.x branch
- v3.00.04: An earlier version of the 3.0.x branch
- v3.00.03: An earlier version of the 3.0.x branch
And these tags are available for the development branch:
- v3.02.00-beta: This is the 3.02 branch in the beta testing stage
- v3.03.00-alpha: This is the 3.02 branch when released for alpha testing
Choosing a version to update to
We can choose to move to the head of the stable branch or the head of the development branch or to any tag in one of these branches.
Here are some pointers to help you decide:
- On production servers, we upgrade to the latest stable tag in the stable branch
- To take an early look at new features being developed, switch to the alpha or beta tag in the development branch, if available
- If you want to take a look at the very latest version of the software, switch to head of the development branch
Understanding components of software updates
When bugs are fixed or new features are added in Koha, different types of files and programs can change such as these:
- Perl, Java script, HTML, CSS, and other types of files in kohaclone folder
- Tables, columns, constraints, indexes, system preferences, and other types of changes in Koha’s database
- Indexes and properties in Zebra configuration files
- Directives in Koha’s Apache2 configuration files
An overview of the installation process
To ensure that software updates are installed properly, we need to follow these steps:
- Download software updates: We can download updates using Git. Git automatically detects our current version and downloads updates from Koha’s online repository.
- Switch to a specific software version: Depending on our purposes, we will choose a version that we want to upgrade to.
- Install Perl module prerequisites: The new version of the software may depend on new Perl modules; we will need to install these.
- Install the new version of Koha: We will install the new Koha version using the make utility; this process is similar to that of a fresh Koha install.
- Configure Apache2: The new version of the software may have an updated Apache2 configuration file. We will need to configure this new file.
- Upgrade the database: We will use Koha’s web installer to upgrade the database to the new version.
- Rebuild Zebra indexes: The new software version may contain updates to Zebra configuration files. To have these changes reflected in search results, we will need to do a full rebuild of Zebra’s indexes.
- Restart Zebra server: To load new Zebra configurations we will have to restart zebrasrv.