Loading...
 
Skip to main content

History: Automatic updates

Preview of version: 30

This is the recipe for 1-click updates/upgrades starting in Tiki25.

  • Updates are in the same branch: 24.1 -> 24.2
  • Upgrades are different branches: 21.3 -> 22.0 or 21.3 -> 24.1

Context

1-click updates/upgrades is a highly-requested capability which is tricky to do right. Risks include:

  • broken updates/upgrades
  • time-outs
  • loss of local modications
  • lower security on file permissions


Requirements

  • Command line access
  • Cron jobs
  • Tiki Manager dependencies, or the capability to install them
    • Git, etc.

High-level

Once set up, Tiki will update Tiki Manager, and Tiki Manager will update/upgrade Tiki. Steps:

  1. Install Tiki from Git manually or with an external Tiki Manager (which you don't need to keep after)
  2. Set up Scheduler
  3. Install the Tiki Manager Package
  4. Use Tiki Manager to update/upgrade Tiki on demand (web or command line) or update automatically (via a cron job)

Benefits

While tools have been available for years for updates/upgrades, they required using the command line. Starting in Tiki25, the command line will only be required for the initial setup.

Code directly from Git sources

  • Can get any revision, and not just released versions
  • Can efficiently maintain local modifications
    • Before updates/upgrades, there is a check to detect conflicts
  • Can use your own Git branch
  • Can use merge requests / branches
  • If a file is removed from the official source code, it will be removed. If you install over an older via a zip, you will have leftover files which can cause issues.

Pick your preferred lifecycle

  • Pick any version: Bleeding edge, stable, Long Term Versions (LTS), etc. See: Versions

Sensible file permissions

Since Tiki Manager is not ran by the web user (like Apache or www), it can set safer file permissions

Background process

Since Tiki Manager is not ran by the web user (like Apache or www), it is not prone to time-out errors

Testing on clones

  • Thanks to Tiki Manager, you can easily clone, clone-and-update or clone-and-upgrade to have a test environment.

A Tiki instance can be managed by more than one Tiki Manager

  • So for example, a hosting company could handle updates for security issues via a remote Tiki Manager, while the site manager uses the local Tiki Manager for other updates/upgrades like testing new features.

Tons of other features

Before Tiki25 via command line

Tiki Manager

Recent versions of Tiki Manager use Git, but previously, it was SVN

svnup.php

svnup.php which is bundled starting in Tiki17

An example of this script on a daily cron job
Copy to clipboard
0 0 * * * cd /var/www/html/; php doc/devtools/svnup.php



History

Advanced
Information Version
Marc Laporte 38
Marc Laporte 37
Marc Laporte 36
Marc Laporte 35
Marc Laporte 34
Marc Laporte 33
Marc Laporte 32
Marc Laporte 31
Marc Laporte 30
Marc Laporte 29
Marc Laporte 28
Marc Laporte 27
Marc Laporte 26
Marc Laporte 25
Marc Laporte 24
Marc Laporte 23
Marc Laporte 22
Marc Laporte 21
Marc Laporte 20
Marc Laporte 19
Marc Laporte 18
Marc Laporte 17
Marc Laporte 16
Marc Laporte 15
Marc Laporte 14
Marc Laporte 13
Marc Laporte 12
Marc Laporte 11
Marc Laporte 10
Marc Laporte 9
Marc Laporte 8
Marc Laporte Page renamed from 1-click updates to Automatic updates. Semantic alias redirect created 7
Marc Laporte 6
Marc Laporte 5
Marc Laporte 4
Marc Laporte 3
Marc Laporte 2
Marc Laporte 1